Хуки для разработчиков
Woo2iiko эмитит множество WordPress-хуков для кастомизации поведения.
Настройки
| Хук | Тип | Назначение |
|---|---|---|
iiko_fields | filter | Добавить поля настроек в секции. |
iiko_settings_content | action | Контент страницы настроек. |
iiko_settings_content_after | action | После контента настроек. |
iiko_admin_field_{type} | action | Кастомный тип поля настроек. |
woocommerce_get_sections_iiko | filter | Добавить секцию в iiko-настройки. |
iiko_after_save_settings_button | action | Контент после кнопки сохранения. |
Пример: добавить секцию
php
add_filter('woocommerce_get_sections_iiko', function ($sections) {
$sections['my_section'] = __('Моя секция', 'iiko');
return $sections;
});Импорт
| Хук | Тип | Назначение |
|---|---|---|
iiko_product | filter | Модификация DTO товара (использует ModifiersFilter). |
iiko_product_args | filter | Аргументы создания товара WC. |
iiko_create_wc_product | action | После создания товара. |
iiko_variation_args | filter | Аргументы вариации. |
iiko_img_upload | filter | Загрузка изображения. |
iiko_after_product_import | action | После импорта товара (использует WpML). |
iiko_check_doubles | filter | Проверка дублей. |
iiko_wc_product_exists | filter | Проверка существования товара. |
set_iiko_meta_data | filter | Meta товара. |
iiko_create_product_attributes | filter | Атрибуты товара. |
Пример: изменить товар при импорте
php
add_filter('iiko_product', function ($product) {
// Меняем DTO товара
return $product;
});Экспорт заказа
| Хук | Тип | Назначение |
|---|---|---|
iiko_before_order_export | action | Перед экспортом (ReserveTables). |
iiko_success_order_export | action | После успеха (Loona, Bonuses). Args: $wc_order_id. |
iiko_after_order_export | action | После экспорта (Telegram). Args: $service, $order, $order_id. |
iiko_error_response | filter | Кастомизация ответа об ошибке. |
Пример: после успешного экспорта
php
add_action('iiko_success_order_export', function ($wc_order_id) {
$order = wc_get_order($wc_order_id);
// Ваша логика
});Checkout
| Хук | Тип | Назначение |
|---|---|---|
iiko_checkout_fields | filter | Поля checkout. |
iiko_checkout_terminals | filter | Список терминалов. |
iiko_phone_validation | filter | Валидация телефона. |
Товар
| Хук | Тип | Назначение |
|---|---|---|
iiko_mod_fields | filter | Поля модификаторов. |
iiko_modifier_price | filter | Цена модификатора. |
iiko_modifier_price_format | filter | Формат цены. |
iiko_children_name | filter | Имена дочерних мод. |
iiko_meta_group_title | filter | Заголовок группы. |
iiko_single_mod_text | filter | Текст одиночного мод. |
iiko_get_thumbnail | filter | Миниатюра. |
iiko_cat_add_qty_input | filter | Поле qty в каталоге. |
Доставка
| Хук | Тип | Назначение |
|---|---|---|
iiko_internal_restriction_request | filter | Внутренние ограничения доставки. |
iiko_shipping_method_chosen | action | Выбор метода доставки. |
Гео
| Хук | Тип | Назначение |
|---|---|---|
iiko_geo_legacy_sync_rate_limit_backoff | filter | Backoff при sync legacy. |
Бонусы
| Хук | Тип | Назначение |
|---|---|---|
OrderDeliveryRequest::GET_BONUS_ORDER_META_KEY_FILTER | filter | Ключ meta бонуса. |
OrderDeliveryRequest::HOLD_BONUSES_ACTION | action | Hold бонусов. |
Stop-list
| Хук | Тип | Назначение |
|---|---|---|
iiko_stoplist_webhook_update | action | Обновление стоп-листа (вебхук). |
iiko_stoplist_background_task | filter | Задача стоп-листа (можно отменить). |
iiko_stoplist_controlled_product_ids | filter | Контролируемые товары. |
iiko_get_stop_list | filter | Получение стоп-листа. |
iiko_stoplist_webhook_event_types | filter | Типы событий вебхука. |
SMS
| Хук | Тип | Назначение |
|---|---|---|
iiko_sms_services | filter | Добавить SMS-провайдера. |
iiko_sms_methods | filter | Своя отправка SMS. |
Telegram
| Хук | Тип | Назначение |
|---|---|---|
iiko_tg_new_order_message | filter | Сообщение о новом заказе. |
iiko_telegram_product_display_name | filter | Имя товара в Telegram. |
woo2iiko_telegram_product_display_name | filter | Алиас. |
Профиль / ЛК
| Хук | Тип | Назначение |
|---|---|---|
iiko_profile_fields | filter | Поля профиля (скрытие/показ). |
Транслитерация
| Хук | Тип | Назначение |
|---|---|---|
iiko_transliteration | filter | Расширение таблиц транслитерации. |
Фоновые процессы
| Хук | Тип | Назначение |
|---|---|---|
iiko_background_start | action | Перед фоновой задачей. |
iiko_background_complete | action | После завершения. |
Кеш
| Хук | Тип | Назначение |
|---|---|---|
iiko_cache_mirror_large_keys | filter | Зеркалирование больших ключей. |