在WooCommerce中,在所有订单的运输详细信息下添加了新的输入字段,该订单仅显示为管理员



我尝试了很多尝试在运输详细信息下获取一个仅为管理员显示的所有订单的输入字段。但是,当我在互联网上浏览时,我会收到插件,这些插件显示为客户和管理员显示输入框。

我找到了可能起作用的链接。但是我需要知道根据此链接更改哪些文件。

如果您认为这不起作用,请给我自己的建议。

我需要更新WooCommerce 3.0的该教程,但是要将数据显示给Admins,您只需要一些有条件的逻辑即可测试用户是否具有正确的功能...WordPress恰好具有current_user_can()来做到这一点。manage_plugins是您可以测试通常只有管理员的功能,因此应达到您的目的。

// display the extra data in the order admin panel
function kia_display_order_data_in_admin( $order ){ 
    if( current_user_can( 'manage_plugins' ) { ?>
    <div class="order_data_column">
        <h4><?php _e( 'Extra Details', 'woocommerce' ); ?></h4>
        <?php // get the order id with backcompatibility
            $order_id = defined( 'WC_VERSION' ) && version_compare( WC_VERSION, $version, '>=' ) ? $order->get_id() : $order->id;
            echo '<p><strong>' . __( 'Some field' ) . ':</strong>' . get_post_meta( $order_id, '_some_field', true ) . '</p>';
            echo '<p><strong>' . __( 'Another field' ) . ':</strong>' . get_post_meta( $order_id, '_another_field', true ) . '</p>'; ?>
    </div>
<?php }
}
add_action( 'woocommerce_admin_order_data_after_order_details', 'kia_display_order_data_in_admin' );

这只是我在教程中的功能之一,但是您会与其他功能相同。

最新更新