WooCommerce-如何在管理订单页面中将列添加到产品列表中

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

我正在尝试将列产品列表添加到管理订单页面。图片上的内容:

“”

php wordpress woocommerce product orders
2个回答
0
投票

当前版本的WooCommerce,没有简单的方法。

这是负责该部分的代码。

    <tbody id="order_line_items">
    <?php
        foreach ( $line_items as $item_id => $item ) {
            do_action( 'woocommerce_before_order_item_' . $item->get_type() . '_html', $item_id, $item, $order );

            include( 'html-order-item.php' );

            do_action( 'woocommerce_order_item_' . $item->get_type() . '_html', $item_id, $item, $order );
        }
        do_action( 'woocommerce_admin_order_items_after_line_items', $order->get_id() );
    ?>
    </tbody>

特别是这行:include( 'html-order-item.php' );。如果您查看html-order-item.php的内容,则没有添加任何td的钩子。

尽管我可以建议您在foreach循环内使用上述两个动作之一。用它放置一个带有数据的td标签。然后使用jQuery将td转移到应有的位置。


0
投票

您可以尝试使用此代码

add_action('woocommerce_admin_order_item_headers', 'my_woocommerce_admin_order_item_headers');
function my_woocommerce_admin_order_item_headers() {
    $column_name = 'TEXT';
    echo '<th>' . $column_name . '</th>';
}

add_action('woocommerce_admin_order_item_values', 'my_woocommerce_admin_order_item_values', 10, 3);
function my_woocommerce_admin_order_item_values($_product, $item, $item_id = null) {

    $value = 50;
if($item['type']=="line_item")
     echo '<td>' . $value . '</td>';
}
© www.soinside.com 2019 - 2024. All rights reserved.