在 woocommerce archive/shop 页面中添加产品类别

Add product category in woocommerce archive/shop page

我正在尝试在 woocommerce 存档页面的产品卡中添加产品类别。 现在它显示“缩略图”、“标题”、“价格”和“添加到购物车按钮”。

我正在使用这个函数,如果将变量“product”设置为当前显示的产品,它应该可以工作。

我的问题:有没有办法在这个变量中获取查询的Product?

感谢任何帮助。

<?php 
// Hook after product title on archive page and run function "add_category()"
add_action('woocommerce_shop_loop_item_title','add_category');
    // Define function "add_category()"
    function add_category() {
        // set var "cardcategory"
        $cardcategory = $product->get_categories();
        // create wrapping div
        echo '<div class="category-carousel">';
        // Get  current category and change from plural to singular
        // echo singular inside <p> element
        if (strpos($cardcategory, 'Category_A_plural') !== false) {
            echo '<p class="Category_A_class">Category A singular</p>';
        }
        if (strpos($cardcategory, 'Category_B_plural') !== false) {
                echo '<p class="Category_B_class">Category B singular</p>';
        }
        // close wrapping div
        echo '</div>';
    }
<?php 
//Hook after product title on archive page
add_action('woocommerce_after_shop_loop_item_title','add_category');

function add_category() {
    global $product; // You need to add this.

    // set var "cardcategory"
    $cardcategory = $product->get_categories();
    // Show category and change from plural to singular
    echo '<div class="category-carousel">';

    if (strpos($cardcategory, 'Category_A_plural') !== false) {
        echo '<p class="Category_A_class">Category A singular</p>';
    }
    if (strpos($cardcategory, 'Category_B_plural') !== false) {
            echo '<p class="Category_B_class">Category A singular</p>';
    }
    echo '</div>';
}

您需要添加 global $product 行,如上所示。 $productWC_Product 的一个实例,我相信 Woocommerce 在幕后使用 WordPress 的 the_post() 功能来设置这个变量,但我不是 100% 确定。