2

我的主题中有三个标题,我使用覆盖默认模板的模板以我的主题为商店设置主题。

我的 header.php 中有这个

标题 1:对于我的主页(不是商店)

标题 2:对于我网站的所有页面(非商店)

表头 3:对于店铺(产品类别、单品、存档产品)

但是,当我购买任何产品时,我会转到任何结帐页面(注册、购物车、我的帐户等),标题 2 会出现。

简化的 header.php 代码:

if(!is_woocommerce()) {
   <!--Header Wordpress-->
   if(is_home);
      Home site header (Header 1)
   } else {
      All site header (except Home) (Header 2)
   <!--End Header Wordpress-->
} else { // Woocommerce conditional
   Shop header (Header 3)
}

如何解决?

4

1 回答 1

3

购物车和结帐是带有短代码的标准页面,不包含在其他 Woo 模板中,即is_woocommerce()不会为它们返回 true。所以也许使用

if ( is_page( 'checkout-page-slug' ) || is_page( 'other_shop_page' ) ) {

而是针对他们。


编辑:

替换checkout-page-slugother_shop_page使用您想要定位的页面的slug以具有商店标题:

if ( ! is_woocommerce() ) {
    if ( is_home() ) {
        // Home site header (Header 1)
    } elseif( is_page( 'checkout-page-slug' ) || is_page( 'other_shop_page' ) ) {
        // Shop header
    } else {
       // All site header (except Home) (Header 2)
    }
} else { // Woocommerce conditional
    // Shop header
}
于 2012-10-31T19:51:29.003 回答