Как отображать иконки атрибутов товаров Woocommerce?
Подскажите, как можно настроить отображение иконок атрибутов на товаре Woocommerce. Пример на изображении (атрибут Article).
По умолчанию в wordpress в таком виде выводится только размер скидки, а помимо него хотелось бы выводить некоторые атрибуты
Дополнительно:
Так отображаются не атрибуты, а "бейджи". Есть готовые плагины для этого.
Вопрос решен через плагин WPC Badge Management
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос

Иконки атрибутов WooCommerce можно сделать через метаполя терминов атрибутов. Атрибуты типа
pa_color,pa_materialи т.п. технически являются таксономиями, а их значения — терминами. Значит к каждому термину можно добавить поле “иконка”.Самый удобный вариант — ACF: создаёте группу полей для Taxonomy Term, ограничиваете её нужной таксономией атрибута и добавляете поле Image/Icon. Потом в шаблоне товара получаете термины и выводите иконки.
Пример:
$terms = get_the_terms(get_the_ID(), 'pa_article'); if ($terms && !is_wp_error($terms)) { foreach ($terms as $term) { $icon = get_field('attribute_icon', $term); echo '<span class="product-attr-icon">'; if ($icon) { echo wp_get_attachment_image($icon['ID'], 'thumbnail'); } echo esc_html($term->name); echo '</span>'; } }
Если ACF возвращает ID, код будет немного другим:
$icon_id = get_field('attribute_icon', $term); echo wp_get_attachment_image($icon_id, 'thumbnail');
Вывести блок можно через hooks WooCommerce, например на странице товара:
add_action('woocommerce_single_product_summary', 'theme_product_attribute_icons', 25);
Для карточки товара в каталоге:
add_action('woocommerce_after_shop_loop_item_title', 'theme_product_attribute_icons', 15);
Если иконки нужны для разных атрибутов, сделайте список таксономий, которые нужно выводить, чтобы не показывать все технические атрибуты подряд.
Итог: храните иконку не в товаре, а в значении атрибута/термине. Тогда одна иконка переиспользуется на всех товарах с этим атрибутом, а вывод управляется через шаблон или hook.