Статья A.S Groups

Дополнительные опции товара WooCommerce: Product Add-Ons, поля и доплаты

Дополнительные опции и персонализация товара WooCommerce с Product Add-Ons

Навигация по статье

Услуги A.S Groups

Нужен сайт, магазин или автоматизация?

Помогаю бизнесу запускать и дорабатывать WordPress-проекты: от посадочной страницы до WooCommerce, CRM и Telegram-уведомлений.

Обсудить проект Telegram
WordPress под ключ Лендинги, корпоративные сайты и структура под заявки. WooCommerce Интернет-магазины, каталог, оплата, доставка и интеграции. Доработка сайта Правки, скорость, формы, баги и развитие текущего проекта. CRM / Telegram / AI Автоматизация заявок, уведомлений и ручных процессов.

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

WooCommerce Product Add-Ons решает другую задачу: добавляет к товару дополнительные поля и опции, которые покупатель заполняет перед добавлением в корзину. Опция может быть бесплатной или менять итоговую цену. Это удобно для персонализированных товаров, услуг, печати, подарков, изготовления на заказ и других сценариев, где основной товар остаётся тем же.

Ниже разберём, когда Product Add-Ons подходит лучше вариаций, как спроектировать поля и доплаты, что происходит в корзине и заказе, а также какие ограничения важно учесть до запуска.

Что именно решает Product Add-Ons

Официальное расширение Product Add-Ons позволяет добавлять к товару поля выбора, чекбоксы, короткий и длинный текст, загрузку файла, пользовательскую цену, количество, заголовки и выбор даты. Для опций можно задавать обязательность, описание и изменение цены.

Типовые сценарии:

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

Product Add-Ons, вариации или комплект: что выбрать

Задача Что использовать Почему
Размер или цвет имеет свой SKU, остаток, цену или изображение Вариации WooCommerce У каждой вариации можно отдельно управлять ценой, SKU, остатком, изображением и другими данными.
К основному товару нужна гравировка, упаковка, текст, файл или услуга Product Add-Ons Дополнительная опция относится к основному товару и не требует отдельной складской сущности.
Покупатель собирает набор из нескольких самостоятельных товаров Product Bundles или другой комплектный механизм Компоненты набора должны оставаться отдельными товарами со своей логикой и, при необходимости, складом.
Нужно полностью перестроить блоки и бизнес-логику карточки Кастомная доработка Одного набора полей может быть недостаточно, если логика зависит от внешних данных, ролей или сложных правил.

Ключевое ограничение Product Add-Ons: сами add-ons не являются отдельными товарами, не получают собственный SKU и не ведут собственный складской остаток. Если дополнительная опция должна реально резервироваться на складе, Product Add-Ons обычно не стоит использовать как замену вариациям или компонентам комплекта.

Как проходит выбранная опция от карточки до заказа

  1. Карточка товараПокупатель выбирает или заполняет дополнительные поля.
  2. ПроверкаWooCommerce проверяет обязательные поля, ограничения и допустимые значения.
  3. ЦенаЕсли add-on платный, его стоимость учитывается в цене позиции.
  4. КорзинаВыбранные параметры сохраняются вместе с конкретной строкой товара.
  5. ЗаказОпции попадают в данные позиции заказа и могут использоваться в письмах и интеграциях.

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

Шаг 1. Сначала описать бизнес-правила

Перед настройкой составьте список всех дополнительных параметров и для каждого ответьте на несколько вопросов:

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

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

Шаг 2. Выбрать глобальные или товарные add-ons

Product Add-Ons поддерживает два основных уровня настройки. Глобальные группы применяются сразу к нескольким товарам и при необходимости ограничиваются категориями. Товарные add-ons создаются в конкретной карточке продукта.

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

Не стоит копировать одинаковый набор полей вручную в десятки товаров. Если правило действительно общее, глобальная группа проще в сопровождении и снижает риск, что одна карточка останется со старой ценой или подписью.

Шаг 3. Настроить цену без неожиданных расчётов

Официальный Product Add-Ons поддерживает бесплатные и платные опции. Для доплаты доступны разные модели, включая фиксированную сумму, расчёт на основе количества товара и процент от цены продукта. Отрицательное значение может использоваться как скидка.

Для покупателя цена должна быть предсказуемой. Если упаковка стоит фиксированную сумму за весь товар, не используйте режим, который умножает её на количество единиц, если это не соответствует реальному бизнес-процессу. После настройки обязательно проверьте несколько количеств и комбинаций в корзине.

Шаг 4. Не превращать карточку в анкету

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

Для длинного набора параметров полезно разделять их понятными заголовками и писать короткие инструкции. Обязательные поля должны быть очевидны, а ошибка — объяснять, что именно нужно исправить. На мобильной версии особенно важно проверить длинные подписи, изображения вариантов, date picker и загрузку файла.

Если нужна более глубокая перестройка самой страницы товара, отдельно посмотрите материал о безопасной кастомизации карточки WooCommerce. Product Add-Ons решает задачу дополнительных данных, а не заменяет архитектуру product page.

Важное ограничение variable products

Add-ons, добавленные к variable product, наследуются всеми его вариациями. В официальном Product Add-Ons нельзя назначить разный набор add-ons каждой отдельной вариации.

Это нужно учитывать заранее. Если у размера S один набор дополнительных услуг, а у размера XL принципиально другой, одного Product Add-Ons может быть недостаточно. В таком случае стоит пересмотреть модель товара или использовать другое расширение/кастомную логику.

И наоборот, если все вариации используют одинаковое поле «Текст для гравировки», Product Add-Ons хорошо дополняет вариативный товар: вариация продолжает отвечать за склад и цену конкретной версии, а add-on — за персонализацию.

Условная логика: не путать разные расширения

У официального WooCommerce Product Add-Ons нет встроенной conditional logic, которая автоматически показывает или скрывает поля в зависимости от предыдущего выбора. В WooCommerce Marketplace существуют другие расширения с похожими названиями и собственной условной логикой, поэтому при выборе решения важно смотреть документацию именно установленного продукта.

Если сценарий строится на цепочке «выбрал A → покажи B → для B рассчитай C», сначала оцените сложность. Иногда проще использовать специализированный конфигуратор или кастомную форму, чем пытаться превратить базовый add-ons механизм в сложный конструктор.

Загрузка файлов: что проверить до запуска

File Upload полезен для макетов, изображений и материалов от клиента, но такой сценарий требует отдельной проверки безопасности. WooCommerce хранит файлы Product Add-Ons в каталоге внутри wp-content/uploads/product_addons_uploads/.

Официальная документация рекомендует отключить directory listing. При этом само отключение списка файлов не делает каждый загруженный файл приватным: пользователь, знающий точный URL, всё ещё может открыть файл. Поэтому Product Add-Ons не следует использовать как защищённое хранилище конфиденциальных документов.

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

API и headless: add-ons можно автоматизировать

Product Add-Ons имеет собственный REST API для глобальных групп и расширяет WooCommerce Products API данными товарных add-ons. В документации WooCommerce указано, что такая REST-поддержка доступна начиная с Product Add-Ons 6.9.0.

Для глобальных групп используются endpoints семейства wc-product-add-ons/v2/global-add-ons. В данных продукта появляются свойства addons и exclude_global_add_ons. Это позволяет создавать и обновлять конфигурацию из внешней системы, если такая автоматизация действительно нужна.

Для клиентской корзины Product Add-Ons также интегрируется с Store API: при добавлении товара можно передать addons_configuration. Схематичный запрос выглядит так:

{
  "id": 1234,
  "quantity": 1,
  "addons_configuration": {
    "ADDON_ID": "Текст персонализации"
  }
}

ID в примере условный. Реальная структура значения зависит от типа add-on. Для интеграции важно не хардкодить конфигурацию без проверки актуальных ID и не передавать секретные ключи в клиентский код.

Если магазин синхронизирует заказ с CRM, ERP или производством, заранее проверьте, как выбранные add-ons попадают в line item metadata и как внешняя система должна их интерпретировать. При сложной интеграции можно использовать доработку WooCommerce, а для нового магазина — разработку WooCommerce-магазина.

Типичные ошибки при внедрении

  • Использовать add-on вместо складской сущности. Если опция имеет собственный SKU и остаток, это обычно вариация или отдельный компонент.
  • Создать слишком много полей. Карточка становится длинной, а покупатель теряет основной CTA.
  • Не проверить количество. Доплата может рассчитываться не так, как ожидает бизнес, если выбран quantity-based режим.
  • Ожидать разные add-ons для каждой вариации. Официальный Product Add-Ons применяет набор к variable product и наследует его всеми вариациями.
  • Ожидать встроенную conditional logic. У официального Product Add-Ons её нет.
  • Тестировать только product page. Нужно пройти корзину, checkout, заказ, письма и внешние выгрузки.
  • Считать file upload приватным хранилищем. Отключение directory listing не закрывает доступ по точному URL.

Когда лучше Product Bundles

Если дополнительный выбор — это не услуга и не параметр, а самостоятельный товар, Product Bundles может быть более правильной моделью. Например, основной товар продаётся вместе с реальным аксессуаром, у которого есть собственный склад, SKU и отдельная карточка.

Подробно про этот сценарий — в статье Product Bundles WooCommerce: настройка комплектов.

Чек-лист перед запуском Product Add-Ons

  • Для каждой опции определено, нужна ли ей отдельная складская сущность.
  • Глобальные поля вынесены в глобальные группы, уникальные — на уровень конкретного товара.
  • Проверены обязательность, ограничения текста, чисел и количества.
  • Фиксированные, quantity-based и percentage-based доплаты соответствуют бизнес-правилам.
  • Variable products проверены с реальными вариациями.
  • Карточка проверена на телефоне и не перегружена полями.
  • Корзина и checkout показывают выбранные параметры понятно.
  • В заказе и письмах сохраняется информация, нужная менеджеру или производству.
  • Если есть загрузка файлов, отключён directory listing и оценена реальная приватность.
  • Если есть API/CRM/ERP, проверена передача add-ons в интеграцию.

Частые вопросы

Можно ли сделать платную гравировку без отдельной вариации?

Да. Для текста гравировки можно использовать text add-on, а стоимость добавить как фиксированную доплату. При этом основной товар остаётся одной товарной сущностью.

Можно ли вести отдельный остаток у add-on?

У официального Product Add-Ons add-ons не являются отдельными товарами и не имеют собственного SKU для складского учёта. Если нужен реальный остаток компонента, лучше использовать вариацию, отдельный товар или комплектный механизм.

Можно ли назначить разные add-ons разным вариациям?

В официальном Product Add-Ons нет отдельного набора add-ons для каждой вариации: опции variable product наследуются всеми вариациями.

Есть ли условная логика из коробки?

Нет. Официальная документация Product Add-Ons прямо указывает, что встроенной conditional logic нет. Для зависимых полей нужен другой механизм или отдельная доработка.

Можно ли принимать файл от покупателя?

Да, есть тип File Upload. Но каталог загрузок нужно защитить от directory listing, а для конфиденциальных документов использовать более строгую схему доступа, потому что точный URL файла может оставаться доступным.

Можно ли управлять add-ons по API?

Да. Product Add-Ons предоставляет REST API для глобальных групп и расширяет Products API товарными add-ons. Есть и интеграция со Store API для передачи выбранной конфигурации в корзину.

Что выбрать: Product Add-Ons или кастомную разработку?

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

Вывод

Product Add-Ons полезен там, где к основному товару нужно добавить персонализацию, услугу или дополнительный параметр без создания новой складской позиции. Он хорошо подходит для гравировки, упаковки, текста, файлов и простых доплат, но не должен подменять вариации и реальные компоненты со своим SKU и остатком.

Надёжное внедрение начинается с модели данных: что является товаром, что — вариацией, а что — дополнительной опцией. После этого уже настраиваются поля, цена, мобильный UX, корзина, заказ и интеграции. Если стандартной конфигурации недостаточно, A.S Groups может доработать действующий WooCommerce-магазин под конкретный процесс.

Официальные источники

Следующий шаг

Нужно решить похожую задачу?

A.S Groups может настроить Product Add-Ons, кастомные поля товара, расчёт доплат и передачу выбранных опций в корзину, заказ и внешние интеграции.

Обсудить задачу

Источники

Обсуждение

Вопросы и комментарии

Можно уточнить детали статьи или поделиться своим опытом. Первый комментарий проходит проверку.

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

Email не публикуется. Ссылки и HTML в тексте удаляются.

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

Используем необходимые cookies, аналитику и данные форм, чтобы сайт работал корректно и заявки доходили.