【问题标题】:How to duplicate header in checkout pages?如何在结帐页面中复制标题?
【发布时间】:2012-10-21 09:39:19
【问题描述】:

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

我的 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)
}

如何解决?

【问题讨论】:

    标签: php wordpress woocommerce


    【解决方案1】:

    购物车和结帐是带有短代码的标准页面,不包含在其他 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
    }
    

    【讨论】:

    • @MrRoman -- 我使用您的原始代码 sn-p 添加了一个扩展示例。现在更有意义了吗?
    • 我可以在 is_page() 中使用数组吗?例如 'is_page(array('slug-1', 'slug-2', 'slug-3'))'
    • @MrRoman - 是的,如果您要检查的页面超过三个,您可以(并且应该)。
    • 非常感谢,请原谅我的英语。来自智利的问候。
    • @MrRoman -- 德纳达。喷砂机。 Saludos de Sudafrica。 ;-)
    猜你喜欢
    • 2012-12-03
    • 1970-01-01
    • 1970-01-01
    • 2018-11-14
    • 1970-01-01
    • 2021-02-08
    • 2022-08-24
    • 2021-08-10
    • 2020-08-07
    相关资源
    最近更新 更多