Woocommerce商店页面自定义模板

时间:2016-05-24 08:14:03

标签: php wordpress templates woocommerce

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

这是我做的:

  1. 创建模板" my-shop"
  2. 创建页面"我的商店" - >选择模板" my-shop"
  3. 选择"我的商店"作为Woocommerce商店页面
  4. 但是我对#34; my-shop"所做的改变都没有。商店页面上有模板。

    我在这里缺少什么?我不想改变产品档案本身,只是商店页面。

    有没有办法禁止将产品档案作为商店页面的默认设置?

    由于

5 个答案:

答案 0 :(得分:3)

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

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

答案 1 :(得分:2)

要添加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行之前添加它 - 整个页面将从您的模板中提取。如果您想保留商店页面的标题,请将此代码放在get_header代码之后。请记住在您的文件中包含页脚

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

答案 2 :(得分:0)

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

添加:

C:\wamp64\www\rating\web\custom.css

到我主题的woocommerce文件夹中的{% block stylesheets %} <link rel="stylesheet" href="{{ asset('custom.css') }}"> {% endblock %}

答案 3 :(得分:0)

如果您喜欢使用代码,则可以通过wp_redirect创建从原始商店页面到页面的重定向。

add_action('template_redirect', 'bc_010101_redirect_woo_pages');
function bc_010101_redirect_woo_pages()
{


 if (is_shop())
 {

  wp_redirect('your_shop_url_here');
  exit;
 }
}

可以找到更详细的教程here

答案 4 :(得分:-7)

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