Июн
8
5

Все про артикулы товара в WooCommerce: создание, скрытие и вывод, плагины

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

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

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

Добавление артикулов в WooCommerce (SKU)

Указывать SKU, как и всю остальную информацию, вы можете в карточке товара при его создании/редактировании. Соответствующее текстовое поле находится в закладке «Запасы».

Добавляем артикул в WooCommerce

Кроме цифр допускаются букв, в том числе и кириллицы, однако важно чтобы артикул товара в WooCommerce был уникальным (система не даст сохранить одинаковые, а выдаст ошибку).

Если у вас имеется вариативный товар то разрешается задавать отдельные значения для каждой его разновидности.

Вариативные артикулы

Также при этом возможно определить общее значение. Если он будет пустой, то изначально на странице с карточкой товара пользователи увидят N/A (Н/Д), и лишь после выбора модификации оно изменится. 

Скрытие поля артикула

Как правило, в большинстве современных шаблонов WooCommerce артикул показывается по умолчанию, но только когда он указан в админке (если там пусто, то ничего на сайте выводиться не будет). А убрать его можно по-разному:

1. Самый простой способ, как по мне, — скрыть через CSS стили:

span.sku_wrapper {
    display: none;
}

Обычно для этого поля задан класс sku_wrapper. Если в вашем шаблоне другая конструкция, пропишите display: none; нужному элементу.

2. Наиболее радикальный метод — удалить весь код из шаблона, отвечающий за вывод этой информации. В стандартном макете отображение параметре производится в /single-product/meta.php.

3. Теоретически правильный подход — через файл функций (custom-function.php или function.php). Строка ниже полностью удалит любое его упоминание из магазина (на сайте и в админке):

add_filter( 'wc_product_sku_enabled', '__return_false' );

Если вам нужно скрыть поле только на странице карточки товара в онлайне, используйте такой способ:

function sv_remove_product_page_skus( $enabled ) {
    if ( ! is_admin() && is_product() ) {
        return false;
    }
 
    return $enabled;
}
add_filter( 'wc_product_sku_enabled', 'sv_remove_product_page_skus' );

По идее, следовало бы также упомянуть специальный плагин Remove SKU, но как видите, наша задача не такая уж сложная.

Как вывести артикул в Woocommerce

Соответствующий рабочий код находится по адресу: ваша_тема/woocommerce/single-product/meta.php и имеет вид:

<?php if ( wc_product_sku_enabled() && ( $product->get_sku() || $product->is_type( 'variable' ) ) ) : ?>
	<span class="sku_wrapper"><?php esc_html_e( 'SKU:', 'woocommerce' ); ?> <span class="sku"><?php echo ( $sku = $product->get_sku() ) ? $sku : esc_html__( 'N/A', 'woocommerce' ); ?></span></span>
<?php endif; ?>

Основная «магия» происходит во второй строке, где, во-первых, выводится текстовый лейбл ‘SKU:’, а во-вторых, значение атрибута считывается в переменную $sku и показывается, если не является пустым. В противном случае люди видят ‘N/A’.

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

Плагины и автоматические артикулы в Woocommerce

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

Product SKU Generator

После установки и активации Product SKU Generator, артикул товара начинает генерироваться автоматически.

Плагин WooCommerce Product SKU Generator

Важно помнить: 1) При включенном плагине поле SKU «заблокируется» для изменений в админке, и вы не сможете влиять на его содержимое; 2) Если будете редактировать существующий продукт с введенными ранее данными, то они перезапишутся по соответствующим указанным правилам. Разработчики рекомендуют выключать/включать модуль, когда вам нужно внести какие-то правки вручную.

Кроме функции автоматизации есть:

  • отдельные настройки в простых и вариативных продуктах.
  • генерирование SKU из значений URL (slug) или ID.
  • использование в артикулах вариаций товара родительского SKU, атрибутов или ID.

Вот пример некоторых названий:

Product SKU Generator - варианты артикулов

Выбирайте тот метод, который вам больше подходит/понравится.

Параметры создания артикулов в WooCommerce задаются в одноименном пункте меню во вкладке «Товары». Ищите там пункт Product SKUs, где будет 2 настройки отдельно для вариативной и простой продукции:

Настройки автогенерации артикулов

В принципе, ничего сложно, только важно помнить, что вы не сможете менять значения SKU при включенном плагине. Это сделано дабы не возникало ошибок с одинаковыми полями.

Booster for WooCommerce

По аналогии с Jetpack для магазинов есть плагин Booster с кучей разных фишек, в том числе и по нашей сегодняшней теме. После активации переходите в настройки WooCommerce, где выбираете раздел Booster — Товары — Артикулы:

Booster - настройка артикулов

Включаете опцию с помощью соответствующей галочки (кнопка сохранения внизу страницы). Разных интересных штук здесь действительно много, но часть из них скрыты для премиальной версии. Вам доступны:

  • Установка общего префикса/суффикса атрибутов + разные суффиксы под каждую категорию продукции.
  • Шаблон генерирования SKU.
  • Включение поиска по данному полю во фронтенде, Search by SKU — реально крутая и полезная фишка.
  • Разрешение дублей.
  • Добавление/удаление поля из Email рассылок.
  • Полный запрет SKU в магазине.

Набор функций в бесплатной версии практически идеальный, если бы не одно «но» — в вариативном товаре устанавливается такой же SKU, как и в родительском. Если вам нужны разные значения при этом, от Booster придется отказаться. Кроме того, тем, кто использует в модуле 1-2 функции от силы, думаю, нецелесообразнее поискать более простые и легкие решения (тот же Product SKU Generator).

Имеющиеся вопросы по WooCommerce артикулам их скрытию, редактированию, плагинам и т.п., пишите в комментах. Обсудим.

комментариев 5 к статье “Все про артикулы товара в WooCommerce: создание, скрытие и вывод, плагины”

  • Артем   17.06.2018

    Недавно скрывал артикулы в шаблоне — просто нашел и удалил соотв.код. А так статья годная.

  • Дима   25.06.2018

    Добрый день. Делаю интернет-магазин, в котором будут использоваться десятичные дроби (особенности товара — метраж). Установил нужные плагины (WooCommerce Advanced Quantity — для дробей) и WooCommerce Thumbnail Input Quantities — добавляет счетчик на главную стр (чтобы можно было заказывать не заходя на страницу отдельного товара). Проблема в следующем: в корзине и на отд.стр. дроби работают, на главной счетчик присутствует, но не работает. Не работают дроби (их просто нет), не работают целые — в корзине при любом кол-ве отправляется только 1 единица товара. Как все это дело синхронизовать и привести к одному стилю(в разных местах счетчики оформлены по-разному), где копать?

  • Tod   27.06.2018

    Дима, к сожалению, наличие модуля не гарантирует его беспроблемную работу, скорее наоборот — во всех плагинах есть какие-то косяки. Можно, в принципе, указать о них на сайте плагина во вкладке Support — если разработчики активно все обновляют, то в следующих релизах ошибки исправят. Если результат нужен «прямо сейчас», то без самостоятельной доработки модуля (или подключения сторонних разработчиков-фрилансеров) тут не обойтись.

  • Юля   08.06.2020

    Спасибо. Облазила кучу сайтов, и только представленный вами способ помог удалить артикулы. Через функцию темы. А то артикул скрывался только на самой карточке товара, а на странице категории был виден. Код из 3 пункта удалил везде. Ещё раз спасибо)

  • Tod   08.06.2020

    Юля, отлично! Рад, что код вам пригодился)

Оставить комментарий


Блог Wordpress Inside поможет вам научиться работать в вордпресс, закрепить и расширить имеющиеся знания. Плагины и шаблоны, разные хаки и функции wp, оптимизация и безопасность системы – все это и намного больше вы сможете найти на страницах нашего проекта!

Если хотите быстро и оперативно получать последние новости и статьи, то рекомендуем подписаться на обновления блога:

Поиск:
Последние посты
Лучшее в категории

Облако тегов
Скажи свое мнение!

В чем основные плюсы Wordpress?

Посмотреть результаты

Загрузка ... Загрузка ...
Друзья проекта
Последние новости