В WooCommerce я создаю собственный плагин для продавца и добавил этот хук:
add_action( 'woocommerce_order_details_after_order_table', 'track_me' );
Внутри функции track_me()
я хочу получить заказ , чтобы сделатьнекоторые вещи
Функция делает то, что я хочу, когда я хочу, но в настоящее время я получаю order_id
с URL, который кажется неуклюжим.
Я не могу понять, как правильно извлечь $order
объект или $order_id
, которого было бы достаточно.
Это почти наверняка что-то очевидное, поскольку часы поиска в Интернете были бесплодными.Я просто не знаю, что за очевидное что-то ...
ОБНОВЛЕНИЕ 1: Следуя совету @LoicTheAztec, я сделал следующее:
do_action( 'woocommerce_order_details_after_order_table_items', $order );
class Order_MY extends WC_Order
{
function __construct()
{
add_action( 'woocommerce_order_details_after_order_table', array( $this, 'track_me' ) );
}
function track_me( $order )
{
// My code here
}
}
Первое место, где сценарий терпит неудачунаходится в строке do_action, в которой PHP жалуется, что $ order - неопределенная переменная.
Сценарий также завершается ошибкой при расширении WC_Order: класс 'WC_Order' не найден
Новый вопрос ... есть что-то, что янужно сделать, чтобы у меня был доступ к классам woocommerce в моем плагине?