【问题标题】:Show content before main content based on color attribute根据颜色属性在主要内容之前显示内容
【发布时间】:2021-12-12 23:37:24
【问题描述】:

我找到了一个代码 sn-p 来在主要内容之前显示内容并且它起作用了。

当前内容显示在所有页面上。 (店铺页面除外)

代码:

add_action( 'woocommerce_before_main_content', 'BannerShop', 35 );

function BannerShop(){

if(!is_shop()){
echo '<img src="https://localhost/demosite/wp-content/uploads/2015/06/512x356.png" >';
     }
  }

我想问的是,如何以链接的形式只显示颜色属性产品的内容。

例子:

显示(内容)将仅显示当 url 是这样的:

mysite.com/color/red/

对不起,如果解释不好,因为我不太明白。

非常感谢任何帮助。

谢谢

【问题讨论】:

    标签: wordpress woocommerce attributes permalinks


    【解决方案1】:

    我了解您的问题是关于显示额外内容,如果当前查询是针对仅显示特定属性“颜色”的产品的产品存档页面。

    每个 WooCommerce 属性都是一个独立的分类。

    WordPress 的 is_tax('parameter') 函数检查查询是否针对现有的自定义分类归档页面(类别和标签除外)以及查询是否针对特定分类 'parameter',在您的情况下为 'color'

    所以,functions.php 或等效插件中的这段代码 sn-p 应该可以工作:

    add_action( 'woocommerce_before_main_content', 'BannerShop', 35 );
    
    function BannerShop(){
        (is_tax('color')) {
            echo '<img src="https://localhost/demosite/wp-content/uploads/2015/06/512x356.png" >';
        }
    }
    

    不过,要使上述模板 WooCommerce 覆盖工作,请通过将以下行添加到您的 functions.php 或等效插件来声明 WooCommerce 对您的主题的支持:

    function theme_add_woocommerce_support() {
        add_theme_support( 'woocommerce' );
    }
    
    add_action( 'after_setup_theme', 'theme_add_woocommerce_support' );
    

    【讨论】:

    • 嗨@bitski ..感谢您的回复。我试过使用你的代码,但它对我不起作用,它使网站显示错误(商店页面除外)。尽管如此,还是非常感谢您的帮助,谢谢
    • 显示什么样的错误?
    • 嗨@bitski 错误显示如下prnt.sc/1xkmpks
    • @carlozsan 嗯,我需要有关错误消息和给出它的页面的更多信息。它可能是一个实时页面吗?
    • 是的,请...这是显示错误消息的 url。 link
    猜你喜欢
    • 1970-01-01
    • 2012-01-23
    • 1970-01-01
    • 2012-07-31
    • 2014-01-20
    • 1970-01-01
    • 2013-01-03
    • 1970-01-01
    • 2014-04-26
    相关资源
    最近更新 更多