Получите название метки атрибута продукта в Woocommerce 3 - PullRequest
0 голосов
/ 31 октября 2018

Я использую множество атрибутов продуктов в своих продуктах в Woocommerce, и я перебираю все варианты таблицы, которые могут отображаться с помощью короткого кода на странице продукта.

Для этой таблицы мне нужны все атрибуты продукта в заголовке таблицы (это перед циклом между вариантами), и я получаю атрибуты, используя:

$attributes = $product->get_variation_attributes();
foreach ($attributes as $key => $value) {
    echo '<td>'.&key.'</td>';
}

Это не очень элегантно, правда?

Так что это тоже работает:

$attributes = $product->get_attributes();
foreach ($attributes as $attribute) {
    echo '<td>'$attribute['name']'</td>';
}

В обоих случаях я получаю кусок атрибута продукта. Вместо этого мне нужно получить имя метки, так как для каждого имени есть перевод Polylang (также термины).

Как получить название метки атрибута продукта вместо слагаемого таксономии?

1 Ответ

0 голосов
/ 31 октября 2018

Вы будете использовать wc_attribute_label() выделенную функцию Woocommerce:

foreach ($product->get_variation_attributes() as $taxonomy => $term_names ) {
    // Get the attribute label
    $attribute_label_name = wc_attribute_label($taxonomy);

    // Display attribute labe name
    echo '<td>'.$attribute_label_name.'</td>';
}

OR

foreach ($product->get_attributes() as $taxonomy => $attribute_obj ) {
    // Get the attribute label
    $attribute_label_name = wc_attribute_label($taxonomy);

    // Display attribute labe name
    echo '<td>'.$attribute_label_name.'</td>';
}
...