【问题标题】:Conditional logic for product category archive pages and related single products in WoocommerceWoocommerce中产品类别归档页面和相关单品的条件逻辑
【发布时间】:2019-03-10 15:59:15
【问题描述】:

我正在开发一个 wordpress 网站。话虽如此,我正在使用 woocommerce 和小部件逻辑。

我的总体目标是让小部件逻辑为每个父类别及其子类别(子类别)和主要父类别下的所有产品显示自定义小部件。

我不知道如何添加正确的代码以使小部件逻辑显示在父级及其子级和产品上。我可以使用以下代码让自定义小部件按其子类别显示在父级上:

is_product_category(array('PARENT', 'CHILD1', CHID2'))

这很完美;但是,如果我单击实际产品,自定义小部件就会消失。我希望这段代码不仅适用于父母和孩子,也适用于主要父母下的产品。我迷路了;我不知道如何使用 Wordpress 条件代码来完成这项工作。

任何帮助将不胜感激。

罗伯特

【问题讨论】:

    标签: php wordpress if-statement woocommerce conditional-statements


    【解决方案1】:

    您可以将 Woocommerce 条件标签 is_product() 与专用的 WordPress 条件函数 has_term() 一起使用,例如:

    if( is_product() && has_term( array('PARENT', 'CHILD1', CHID2’ ), 'product_cat', get_the_id() ) ){ // Display widget }
    

    所以你可以这样结合:

    if( is_product_category( array('PARENT', 'CHILD1', 'CHID2' ) ) || ( is_product() && 
    has_term( array('PARENT', 'CHILD1', 'CHID2' ), 'product_cat', get_the_id() ) ) ){ 
        // Display widget
    }
    

    或者

    $categories = array('PARENT', 'CHILD1', 'CHID2' );
    
    if( is_product_category( $categories ) || ( is_product() && 
    has_term( $categories, 'product_cat', get_the_id() ) ) ){ 
        // Display widget
    }
    

    经过测试并且可以工作

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-05-20
      • 2020-12-20
      • 1970-01-01
      • 1970-01-01
      • 2017-09-01
      • 1970-01-01
      • 2018-07-23
      相关资源
      最近更新 更多