wp-lessons.ru wordpress WP-Lessons

Как использовать шорткоды в WooCommerce: описание и примеры

WooCommerce — один из самых популярных плагинов для электронной коммерции на WordPress. Часто в интернет-магазинах требуется гибко вставлять различные элементы каталога, корзины или оформления заказа в страницы и посты. Для этого WooCommerce предоставляет набор встроенных шорткодов, которые можно использовать без дополнительного кода и плагинов.

Что такое шорткоды в WooCommerce и зачем они нужны

Шорткод — это простой тег в формате [shortcode], который WordPress заменяет на динамический контент при отображении страницы. WooCommerce расширяет функционал стандартных шорткодов своими, ориентированными на задачи интернет-магазина:

  • вывод продуктов и категорий;
  • отображение корзины и оформления заказа;
  • показ страницы аккаунта пользователя;
  • и многое другое.

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

Основные встроенные шорткоды WooCommerce

Рассмотрим самые часто используемые шорткоды и их параметры.

1. Вывод страницы магазина

Шорткод [woocommerce_shop] редко используется напрямую, так как WooCommerce автоматически назначает страницу магазина. Но если нужно вывести каталог товаров в любом месте, можно использовать:

[products limit="8" columns="4" orderby="popularity" order="desc"]

Этот шорткод выведет 8 товаров в 4 колонки, отсортированных по популярности.

2. Отображение корзины

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

[woocommerce_cart]

Это полезно, например, для создания пользовательских страниц с корзиной или встраивания корзины в боковую панель.

3. Страница оформления заказа

Шорткод [woocommerce_checkout] выводит форму оформления заказа. Можно создать отдельную страницу и вставить этот шорткод для удобства пользователей.

4. Страница аккаунта пользователя

Шорткод [woocommerce_my_account] выводит личный кабинет пользователя, где он может просматривать заказы, редактировать данные и менять пароль.

Дополнительные шорткоды для вывода товаров и категорий

WooCommerce также предлагает шорткод [products] с множеством параметров, позволяющих гибко настраивать вывод товаров.

  • limit – количество товаров;
  • columns – число колонок;
  • orderby – сортировка (date, popularity, rating, price и т.д.);
  • order – направление сортировки (asc или desc);
  • category – вывод товаров из конкретной категории;
  • tag – фильтрация по тегу.

Пример вывода 6 товаров из категории «aksessuary»:

[products limit="6" columns="3" category="aksessuary" orderby="date" order="desc"]

Как создать собственный шорткод для WooCommerce с помощью PHP

Иногда встроенных шорткодов недостаточно и нужно сделать свой, например, для вывода товаров по кастомным условиям. Рассмотрим пример создания шорткода [wp-lessons_featured_products], который выводит избранные товары.

function wp_lessons_featured_products_shortcode($atts) {
    $atts = shortcode_atts(array(
        'limit' => 4
    ), $atts, 'wp-lessons_featured_products');

    $args = array(
        'post_type' => 'product',
        'posts_per_page' => intval($atts['limit']),
        'meta_key' => '_featured',
        'meta_value' => 'yes'
    );

    $query = new WP_Query($args);
    if (!$query->have_posts()) {
        return '<p>Избранные товары не найдены.</p>';
    }

    $output = '<ul class="wp-lessons-featured-products">';
    while ($query->have_posts()) {
        $query->the_post();
        global $product;
        $output .= '<li><a href="' . get_permalink() . '">' . get_the_title() . '</a> - ' . wc_price($product->get_price()) . '</li>';
    }
    wp_reset_postdata();
    $output .= '</ul>';

    return $output;
}
add_shortcode('wp-lessons_featured_products', 'wp_lessons_featured_products_shortcode');

Вставьте этот код в файл functions.php вашей темы или в плагин. После этого на любой странице можно использовать [wp-lessons_featured_products limit="5"] для вывода 5 избранных товаров.

Какие плагины помогут расширить возможности шорткодов в WooCommerce

Если встроенных шорткодов недостаточно, можно использовать специализированные плагины:

  • ABC Pagination — позволяет создавать пагинацию для шорткодов с товарами;
  • WPRemark — расширяет возможности комментариев и отзывов в WooCommerce;
  • Quizle — для создания викторин и опросов, которые можно встраивать через шорткоды.

Эти инструменты помогут сделать магазин более интерактивным и удобным для клиентов.

Советы по отладке и оптимизации шорткодов WooCommerce

При работе с шорткодами важно следить за производительностью. Запросы к базе данных должны быть оптимизированы, особенно если шорткод выводит большое количество товаров.

Используйте кэширование результатов, если это возможно, например, с помощью Transients API WordPress.

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

Если выводите сложные списки товаров, подумайте о пагинации или ограничении количества элементов на странице.

×
WordPress
ждет обновления!

Забирай -20% на премиум-решения

Темы и плагины ⋙