Входные данные

На сайте используется плагин Perfect Brands for WooCommerce и Тема Bono.
По макету карточки товара, в верхнем левом углу необходимо выводить кликабельную картинку бренда.

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

Решение

Опытным путем выбрал использовать хук woocommerce_shop_loop_item_title
В вашем случае он может быть другой, все зависит от темы.

Код

[php]
add_action('woocommerce_shop_loop_item_title', 'my_brand_img');

function my_brand_img()
{
global $product;

# Сначала получаем все прикрепленные к товару бренды
$brands = get_the_terms($product->get_id(), 'pwb-brand');

# Зная id бренда, получаем id его изображения
$brand_img_id = get_term_meta($brands[0]->term_id, 'pwb_brand_image', true);

# Получаем <img> тег картинки
$brand_img = wp_get_attachment_image($brand_img_id, 'medium', false);

// Выводим картинку
echo '<div class="left_angle_top"><a href="' . home_url() . '/brand/' . $brands[0]->slug . '">' . $brand_img . '</a></div>';
}

[/php]

Уточнения

  • Переменная $brands содержит массив прикрепленных к товару брендов. В приведенном выше примере обрабатывается только первый элемент массива.
  • «Прибить» картинку бренда к верхнему левому углу карточки можно с помощью css стилей. Например, прописать их для класса left_angle_top. Все зависит от темы сайта.

В итоге, получилось следующее:

Таким образом, используя простые функции и хуки WooCommerce, вы можете легко интегрировать информацию о брендах в ваш магазин. Это не только улучшает навигацию для пользователей, но и повышает доверие к товарам, а также положительно сказывается на внутренней перелинковке сайта.

Поделитесь Вашим мнением
Ваш комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Еще записи из этой же рубрики

Что будем искать? Например,Плагин «Подсказки» от DaData.ru

Минуту внимания
Мы используем файлы cookies, чтобы обеспечивать правильную работу нашего веб-сайта, а также работу функций социальных сетей и анализа сетевого трафика.