首页 文章

Woocommerce商店页面自定义模板

提问于
浏览
5

据我所知,Woocommerce商店页面使用产品存档模板 . 我正在寻找的是为商店页面使用自定义模板 .

这是我做的:

  • 创建模板"my-shop"

  • 创建页面"My shop" - >选择模板"my-shop"

  • 选择"My shop"作为Woocommerce商店页面

但是,我对“my-shop”模板所做的更改都没有出现在商店页面上 .

我在这里错过了什么?我不想改变产品档案本身,只是商店页面 .

有没有办法禁止产品存档成为商店页面的默认值?

谢谢

4 回答

  • 3

    我认为最好的解决方案(不完美),直到有人找到从仪表板实际更改模板的方法:

    添加:

    <?php
    if (is_page( 'Page Title' ) ):
      # Do your stuff
    endif;
    ?>
    

    content-product.php 在我的主题的woocommerce文件夹中 .

  • 2

    这不可能为商店页面创建自定义模板,只需将woocommerce模板复制并粘贴到您的主题文件夹中,然后尝试使用content-product.php模板 .

  • -6

    我知道为时已晚,你现在可能已经弄明白了 . 在任何情况下,您希望对WooCommerce Shop页面进行的更改都需要在archive-products.php中完成,创建子主题并进行这些更改会更安全 . 在子主题中进行增强和自定义是最佳实践,以便您可以随时更新父主题,而不会影响您的商店 .

    我希望这会有所帮助,有关如何使用WooCommerce短代码来定制商店的更多信息,请访问here .

  • 0

    要添加Silver Ringvee的答案 - 他使用 is_page 但这只适用于wordpress页面 . 对于woocommerce,你需要使用像 is_woocommerce() 这样的东西 . 见Woocommerce conditional tags page.

    我的示例代码使用 is_shop 条件标记,因为那是您要更改的页面 . 代码 get_template_part( 'content', 'shop' ); 将调用主题根文件夹中的文件content-shop.php . 此代码将添加到 wp-content\themes\*theme*\woocommerce\archive-product.php 的顶部,您可以从 wp-content\plugins\woocommerce\templates\archive-product.php 复制

    您可以在我的文件中的 get_header( 'shop' ); 第23行之前添加它 - 整个页面将从您的模板中提取 . 如果您想保留商店页面的 Headers ,请将此代码放在 get_header 代码之后 . 请记住在您的文件中包含页脚

    if (is_shop()) {
     get_template_part( 'content', 'shop' );
    } else  {  
    #normal archive-product code here
    }
    

相关问题