Отобразить определенные атрибуты товара под названием товара на страницах архива Woocommerce - PullRequest
0 голосов
/ 05 ноября 2018

В woocommerce я хотел бы показать некоторые атрибуты товара на странице магазина под заголовком товара. Это товарные атрибуты "год", "модель" и "масло".

Вот что у меня сейчас:

add_action('woocommerce_shop_loop_item_title', 'wh_insertAfterShopProductTitle', 15);

function wh_insertAfterShopProductTitle()
{
    global $product;

    $abv = $product->get_attribute('pa_year');
    if (empty($abv))
        return;
    echo __($abv, 'woocommerce');
}

Любая помощь приветствуется.

1 Ответ

0 голосов
/ 05 ноября 2018

Чтобы отобразить атрибуты "год", "модель" и "масло" под заголовками продуктов на страницах архива Woocommerce в качестве магазина, используйте следующее:

add_action('woocommerce_shop_loop_item_title', 'display_attributes_after_product_loop_title', 15);
function display_attributes_after_product_loop_title(){
    global $product;

    $output = array(); // Initializing

    // The year
    if( $year = $product->get_attribute('pa_year') ){
        // Save the value in the array
        $output[] = $year; 
    }

    // The model
    if( $model = $product->get_attribute('pa_model') ){
        // Save the value in the array
        $output[] = $model;
    }

    // The type of oil
    if( $oil = $product->get_attribute('pa_oil') ){
        // Save the value in the array
        $output[] = $oil;
    }

    // Output
    if( sizeof($output) > 0 ){
        // Display product attributes coma separated values (you can change the separator by something else below).
        echo implode( ', ', $output);
    }
}

Код помещается в файл function.php вашей активной дочерней темы (active theme). Проверено и работает.

...