2017-02-20 3 views
2

Я использовал этот код:Отображение сообщения администратора на woocommerce_order_action крюке

https://gist.github.com/bekarice/5233ed58c3a836064123b290463241c0

В sv_wc_process_order_meta_box_action функции, как можно отобразить окно сообщения админа?

В настоящее время код использует update_post_meta() функции и add_order_note() метод и не выводит сообщение для администратора.

Спасибо.

+0

лучше введите код в свой вопрос со ссылкой на источник и упомянуть автора (просто совет). – LoicTheAztec

ответ

1

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

Этот код не тестировался, и я ничего не гарантирует:

// The message function to be hooked in 'admin_notices' hook. 
function my_custom_admin_notice() { 
    ?> 
    <div class="notice notice-success is-dismissible"> 
     <p><?php _e('Order has been updated "printed for packaging"'); ?></p> 
    </div> 
    <?php 
} 


//The second function that you use (customized with an add_action()): 
function sv_wc_process_order_meta_box_action($order) { 

    // add the order note 
    $message = sprintf(__('Order information printed by %s for packaging.', 'my-textdomain'), wp_get_current_user()->display_name); 
    $order->add_order_note($message); 

    // add the flag so this action won't be shown again 
    update_post_meta($order->id, '_wc_order_marked_printed_for_packaging', 'yes'); 

    // Setting the admin message function in 'admin_notices' hook. 
    add_action('admin_notices', 'my_custom_admin_notice'); 
} 
add_action('woocommerce_order_action_wc_custom_order_action', 'sv_wc_process_order_meta_box_action'); 

Связанные документы:

Смежные вопросы