在 woocommerce_order_action 挂钩上显示管理消息

问题描述 投票:0回答:1

我使用了这个代码:

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

sv_wc_process_order_meta_box_action
功能中,如何向管理员显示消息框?

当前代码使用

update_post_meta()
函数和
add_order_note()
方法,并且不向管理员显示任何消息。

谢谢。

php wordpress woocommerce backend orders
1个回答
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' );

相关文档:

© www.soinside.com 2019 - 2024. All rights reserved.