Настройте цикл продукта, чтобы показать, какие атрибуты / варианты доступны для каждого продукта - PullRequest
0 голосов
/ 19 сентября 2019

Я работаю в видеомагазине WooCommerce и пытаюсь изменить цикл товаров таким образом, чтобы значки под названием DVD, Blu-ray или Digital Download отображались под заголовком в зависимости от того, какой атрибут (названный pa_format ) связан с каждым продуктом.Другими словами, я хотел бы, чтобы посетители сразу увидели, какие форматы видео доступны для каждого продукта, прежде чем перейти на страницу отдельного продукта.

Этот код работал при редактировании одного продукта.шаблон страницы, но мне не повезло вставить его в functions.php, так как он хочет, чтобы он появился сразу после названия продукта в цикле продуктов.

/** Check to see if product attributes exist **/
add_action( 'woocommerce_shop_loop_item_title', 'formatExists', 11 );

function formatExists() {

    function productAttributeExists($myTerm, $terms)
    {
        if (is_array($terms)) {
            foreach ($terms as $id => $data) {
                if ($data->name == $myTerm)
                    return true;
            }
        }
        return false;
    };  

if (productAttributeExists('Blu-ray', get_the_terms($product->id, 'pa_format')))
{
   echo "Blu-ray available";
}
else
{

};

    if (productAttributeExists('DVD', get_the_terms($product->id, 'pa_format')))
{
   echo "DVD Available";
}
else
{

};

    if (productAttributeExists('Digital Purchase', get_the_terms($product->id, 'pa_format')))
{
   echo "Digital Purchase available";
}
else
{

};

    if (productAttributeExists('Digital Rental', get_the_terms($product->id, 'pa_format')))
{
   echo "Digital Rental Available";
}
else
{

};


}

Я новичок в этом,так что любая идея или руководство будут с благодарностью!

...