Плагин WPSHOP предоставляет удобный способ создать полноценный интернет-магазин на базе WordPress. Один из самых простых и гибких методов вывода товаров — использовать шорткоды. В этой статье подробно разберём, как правильно применять шорткоды WPSHOP для отображения продуктов на страницах сайта, а также рассмотрим примеры кастомизации и фильтрации.
Что такое шорткоды WPSHOP и зачем они нужны
Шорткоды — это небольшие текстовые метки в квадратных скобках, которые WordPress заменяет на динамический контент. WPSHOP предоставляет собственные шорткоды для вывода каталога товаров, отдельных продуктов, категорий и фильтров. Это позволяет быстро встроить нужный контент без программирования и с минимумом настроек.
Основные преимущества использования шорткодов WPSHOP:
- Гибкая настройка вывода товаров — можно указать категорию, количество, порядок и другие параметры.
- Встраивание каталога в любые страницы и записи.
- Поддержка AJAX-подгрузки и пагинации.
- Возможность комбинировать с кастомным CSS и JavaScript для уникального дизайна.
Основные шорткоды для вывода продуктов в WPSHOP
Рассмотрим несколько ключевых шорткодов, которые используются для отображения товаров.
Шорткод каталога товаров
Для вывода каталога всех товаров или товаров из конкретных категорий используется шорткод [wpshop_products] с параметрами.
[wpshop_products category="slug-kategorii" per_page="12" orderby="date" order="DESC"]Пояснения к параметрам:
category— слаг категории товаров. Если не указан, выводятся все товары.per_page— количество товаров на странице.orderby— поле сортировки (например, date, title, price).order— порядок сортировки: ASC или DESC.
Пример вывода 8 последних товаров из категории «aksessuary»:
[wpshop_products category="aksessuary" per_page="8" orderby="date" order="DESC"]Шорткод отдельного товара
Для показа информации об одном товаре можно использовать шорткод с ID или слагом товара:
[wpshop_product id="123"]или
[wpshop_product slug="nazvanie-tovara"]Это удобно для создания специальных лендингов или отдельных обзоров продуктов.
Как создавать кастомные шорткоды для дополнительной фильтрации
Иногда стандартных параметров недостаточно — например, нужно вывести товары, которые есть в наличии, или с определённой ценой. Для этого можно создать собственный шорткод с использованием возможностей WPSHOP и WordPress.
Ниже пример функции, которая выводит товары с ценой ниже заданного значения:
function wpeducation_get_products_below_price($atts) {
$atts = shortcode_atts(array(
'max_price' => 1000,
'per_page' => 10,
), $atts, 'wpeducation_products_below_price');
$args = array(
'post_type' => 'wpshop_product',
'posts_per_page' => intval($atts['per_page']),
'meta_query' => array(
array(
'key' => '_wpshop_price',
'value' => floatval($atts['max_price']),
'compare' => '<=',
'type' => 'NUMERIC',
),
),
);
$query = new WP_Query($args);
ob_start();
if($query->have_posts()) {
echo '<ul class="wpshop-products-list">';
while($query->have_posts()) {
$query->the_post();
echo '<li><a href="'.get_permalink().'">'.get_the_title().'</a></li>';
}
echo '</ul>';
} else {
echo '<p>Товары не найдены.</p>';
}
wp_reset_postdata();
return ob_get_clean();
}
add_shortcode('wpeducation_products_below_price', 'wpeducation_get_products_below_price');Использование шорткода на странице:
[wpeducation_products_below_price max_price="1500" per_page="5"]Этот код запрашивает товары с метаполем цены ниже 1500 и выводит их списком.
Интеграция WPSHOP с другими плагинами для расширения функционала
Для расширения возможностей магазина на базе WPSHOP можно использовать дополнительные плагины. Например, Expert Review позволяет добавлять отзывы с оценками к товарам, что повышает доверие покупателей.
Для реализации динамического поиска по товарам можно использовать AJAX-решения, которые можно встроить в шорткоды. Это значительно улучшит пользовательский опыт.
Советы по оптимизации и кастомизации вывода товаров через шорткоды
Чтобы шорткоды работали эффективно и выглядели красиво, рекомендую следующие подходы:
- Используйте кеширование результатов, чтобы снизить нагрузку на сервер при большом количестве запросов.
- Добавляйте кастомные CSS-классы через параметры шорткода для удобства стилизации.
- При необходимости подключайте JavaScript, например, для фильтров и сортировки, чтобы сделать каталог динамичным.
- Проверяйте совместимость с используемой темой WordPress и адаптируйте шаблоны вывода.
Пример добавления кастомного класса:
[wpshop_products category="aksessuary" per_page="6" class="my-custom-class"]Обработка параметра class в функциях вывода
Чтобы параметр class работал, нужно доработать функцию вывода в файле темы или плагина, например:
function wpeducation_wpshop_products_shortcode($atts) {
$atts = shortcode_atts(array(
'category' => '',
'per_page' => 12,
'class' => '',
), $atts, 'wpshop_products');
// Основной код запроса и вывода...
echo '<div class="wpshop-products '.esc_attr($atts['class']).'">';
// вывод товаров
echo '</div>';
}
add_shortcode('wpshop_products', 'wpeducation_wpshop_products_shortcode');Таким образом, вы получите максимальный контроль над стилем и функционалом.