Woocommerce: Как вывести Недавно просмотренные товары через виджет, плагины, свой шорткод

Задача: На сайте WordPress с Woocommerce возникла необходимость вывести на странице товара блок «Недавно просмотренные товары».

Недавно просмотренные товары в Woocommerce

Вывод через виджет

Решение 1: В Woocommerce есть собственный виджет «Недавно просмотренных товаров». Чтобы использовать блок «Недавно просмотренные товары» нужно перейти в админке в виджеты и добавить (перетянуть) стандартный виджет Woocommerce «Недавно просмотренные товары» в нужный сайдбар. Правда, этот блок не очень красивый и скорей всего придется доработать стили CSS.

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

Плагины

Решение 2. Также, для вывода недавно просмотренных пользователем товаров можно воспользоваться плагином Recently viewed and most viewed products (от CedCommerce). Он позволяет выводить не только недавно просмотренные товары, но и самые просматриваемые. После установки настраиваем отображение и вставляем в необходимое место шорткод.

Второй плагин Recently Viewed Products (Rajnish Arora) — показывает недавно просмотренные товары пользователем на странице товара, на странице магазина, на странице корзины или через шорткод [rvp_show] или [rvp_show no_products="4" slider_use="true"]. Немаловажно товары могут быть выведены в слайдере.

Свой шорткод

Задача. На сайте не отображались «Недавно просмотренные товары», ни через виджет, ни через виджеты конструктора WPBakery и даже плагины.

Решение 3. Разобраться в чем причина не было времени, но нашлось решение вывода недавно просмотренных товаров через свой шорткод на основе стандартного шорткода Woocommerce [products]. Способ подсмотрел у misha.agency. Код №1 добавляем в functions.php и выводим товары шорткодом [recently_viewed_products] в нужном месте.

Код №1: Шорткод вывода Недавно просмотренных товаров [recently_viewed_products]
В конце кода в строчке [products ids=’$product_ids’ per_page=’4′ columns=’4′] можно задать количество отображаемых товаров (per_page) и количество колонок товаров (columns).
Ссылка на основную публикацию