是否在全球范围内将WooCommerce类别附加到产品名称?

时间:2016-02-05 作者:Tony Ryan

我正在尝试将产品类别附加到woocommerce中的产品标题,这需要在全球范围内(因此它在任何地方都适用)。

我尝试了下面的代码,我认为它可以工作,但它没有,它只在存档的产品图像上方附加类别名称

  add_action( \'woocommerce_before_shop_loop_item_title\', \'my_add_product_cat\', 1);
function my_add_product_cat()
{
    global $product;
    $product_cats = wp_get_post_terms($product->id, \'product_cat\');
    $count = count($product_cats);
    foreach($product_cats as $key => $cat)
    {
        echo $cat->name;
        if($key < ($count-1))
        {
            echo \', \';
        }
        else
        {
            echo \'<br/>\';
        }
    }
}

1 个回复
最合适的回答,由SO网友:Sumit 整理而成

WooCommerce使用一个钩子来显示许多内容,只需更改钩子优先级即可更改元素的顺序。

只要改变钩子和它们的顺序就可以实现你的目标。

add_action( \'woocommerce_single_product_summary\', \'my_add_product_cat\', 6);
add_action( \'woocommerce_shop_loop_item_title\', \'my_add_product_cat\', 11);
我已经给了woocommerce_single_product_summary 优先于6 因为单个产品标题显示在同一挂钩上,优先级为5.

和我为archive products title做的一样。

相关推荐