据我所知,Woocommerce商店页面使用产品存档模板 . 我正在寻找的是为商店页面使用自定义模板 .
这是我做的:
创建模板"my-shop"
创建页面"My shop" - >选择模板"my-shop"
选择"My shop"作为Woocommerce商店页面
但是,我对“my-shop”模板所做的更改都没有出现在商店页面上 .
我在这里错过了什么?我不想改变产品档案本身,只是商店页面 .
有没有办法禁止产品存档成为商店页面的默认值?
谢谢
我认为最好的解决方案(不完美),直到有人找到从仪表板实际更改模板的方法:
添加:
<?php if (is_page( 'Page Title' ) ): # Do your stuff endif; ?>
到 content-product.php 在我的主题的woocommerce文件夹中 .
content-product.php
这不可能为商店页面创建自定义模板,只需将woocommerce模板复制并粘贴到您的主题文件夹中,然后尝试使用content-product.php模板 .
我知道为时已晚,你现在可能已经弄明白了 . 在任何情况下,您希望对WooCommerce Shop页面进行的更改都需要在archive-products.php中完成,创建子主题并进行这些更改会更安全 . 在子主题中进行增强和自定义是最佳实践,以便您可以随时更新父主题,而不会影响您的商店 .
我希望这会有所帮助,有关如何使用WooCommerce短代码来定制商店的更多信息,请访问here .
要添加Silver Ringvee的答案 - 他使用 is_page 但这只适用于wordpress页面 . 对于woocommerce,你需要使用像 is_woocommerce() 这样的东西 . 见Woocommerce conditional tags page.
is_page
is_woocommerce()
我的示例代码使用 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 复制
is_shop
get_template_part( 'content', 'shop' );
wp-content\themes\*theme*\woocommerce\archive-product.php
wp-content\plugins\woocommerce\templates\archive-product.php
您可以在我的文件中的 get_header( 'shop' ); 第23行之前添加它 - 整个页面将从您的模板中提取 . 如果您想保留商店页面的 Headers ,请将此代码放在 get_header 代码之后 . 请记住在您的文件中包含页脚
get_header( 'shop' );
get_header
if (is_shop()) { get_template_part( 'content', 'shop' ); } else { #normal archive-product code here }
4 回答
我认为最好的解决方案(不完美),直到有人找到从仪表板实际更改模板的方法:
添加:
到
content-product.php
在我的主题的woocommerce文件夹中 .这不可能为商店页面创建自定义模板,只需将woocommerce模板复制并粘贴到您的主题文件夹中,然后尝试使用content-product.php模板 .
我知道为时已晚,你现在可能已经弄明白了 . 在任何情况下,您希望对WooCommerce Shop页面进行的更改都需要在archive-products.php中完成,创建子主题并进行这些更改会更安全 . 在子主题中进行增强和自定义是最佳实践,以便您可以随时更新父主题,而不会影响您的商店 .
我希望这会有所帮助,有关如何使用WooCommerce短代码来定制商店的更多信息,请访问here .
要添加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
代码之后 . 请记住在您的文件中包含页脚