Запрет добавления черновика товара в заказ через админку
Магазин работает на WP+WooCommerce. Бывает, что покупатель, после создания заказа, в телефонном режиме просит добавить товар в его заказ. Менеджер через админку добавляет этот товар в нужный заказ. Ассортимент товаров довольно большой и часто меняется. Соответственно некоторые новые товары имеют статус "черновик". Требуется запретить менеджеру добавлять товары с этим статусом в заказы, но при этом, чтобы у менеджера оставалось право создавать и редактировать черновики.
Т.е. по сути, мне программно бы убрать товар со статусом " черновик" из поиска при добавлении товаров в админке на странице заказа.
Ответы (1 шт):
Варианты выхода из ситуации:
- Запретить добавлять
- Перед добавлением смотреть статус товара
- Перед записью или отправкой проверять статус всех товаров
- Написать костыль. И тут быстрого ответа не будет.
Единственное могу подсказать, что есть хук woocommerce_new_order_item, который вроде отрабатывает и по клику добавить товар в ордер в админке (но это не точно) - находится в файле wc-order-item-functions.php . Меня на него вывел поиск dropdown-wrapper в JS файлах, который в свою очередь вызывал через аякс wc_add_order_item. Через него, с горем пополам можно внедрить доп. проверку и исключать товары не опубликованные из массива. То есть данный хук срабатывает уже после добавления товаров в заказ (судя по коду) и надо повторно, самому обойти ещё раз заказ и удалить из него те товары, что не опубликованы. То есть куда копать есть, но готового решения, увы не предложу.
У меня добавления в заказы через админку запрещены от слова совсем.
Причина в том, что часть людей скажут: "Вы меня не поняли, не то добавили", а время потеряно, а иногда и товар поехал...
ЗАЧЕМ?