Отображение определенных терминов, связанных с атрибутами продукта, для продукта WooCommerce

Например, у товара есть атрибут pa_color с тремя значениями (серебристый, красный и коричневый). Я хотел бы показать три динамические ссылки на его описание.

Я хочу, чтобы мой продукт отображал этот текст:
Этот продукт имеет три цвета: серебристый (html-ссылка), красный (html-ссылка), коричневый (html-ссылка)

мне удалось это сделать, если у него есть один атрибут:

if ( is_product() && has_term( 'Silver', 'pa_color' ) ) {

}

person George Gour    schedule 13.02.2021    source источник
comment
А что должны показывать ссылки?   -  person Hamid Reza Yazdani    schedule 14.02.2021


Ответы (1)


Используйте следующий код, который будет отображать набор понравившихся цветов атрибута для продукта:

$taxonomy = 'pa_color'; // Here set the product attribute taxonomy
$terms    = wp_get_post_terms( get_the_ID(), $taxonomy ); // Get the terms

if ( ! empty( $terms ) ) {
    $output   = []; // Initializing

    // Loop through the terms set in the product
    foreach( $terms as $term ) {
        $output[] = '<a href="'.get_term_link( $term, $taxonomy ).'">'.$term->name.'</a>';
    }
    // Display
    printf( __("This product has these %s %s: %s."),  count($terms),
    _n( "color", "colors", count($terms) ), implode( ', ', $output ) );
}

Проверено и работает.

person LoicTheAztec    schedule 14.02.2021
comment
Спасибо сработало отлично!!! - person George Gour; 16.02.2021