(Этот вопрос был закрыт на Wordpress StackExchange, так как, по-видимому, это было не по теме, надеюсь, что где-то здесь может быть более полезным!)
В настоящее время работает на веб-сайте на основе подписки иЯ ищу способ контролировать, запускается ли хук order.created
WooCommerce на основе определенных атрибутов товаров в заказе.
Я пытался использовать фильтр woocommerce_webhook_topic_hooks
, чтобы удалить соответствующую темуи фильтр woocommerce_webhook_delivery_url
для перенаправления запроса на другой URL, но эти фильтры вызываются до действия wp_loaded, и поэтому функции get_cart
и get_order
возвращают ошибку.
Notice: get_cart was called incorrectly. Get cart should not be called before the wp_loaded action.
также пытался использовать фильтр woocommerce_webhook_payload
, чтобы очистить полезную нагрузку перед отправкой, но, опять же, это похоже на срабатывание до wp_loaded
, и я не могу выполнить требуемую проверку условий.
В основном мне нужна возможность сначалапроверьте элементы в корзине / заказе, а затем либо разрешите запуск веб-крючка, либо заблокируйте его от стрельбы.
К сожалению, яНа самом деле я не в состоянии просто удалить веб-крючков из WooCommerce, поскольку этот конкретный сайт требует их для выполнения заказа.