有没有办法在 Wordpress WooCommerce 管理订单页面中编辑元数据文本

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

在我们使用的网络公司破产后,我接管了我公司的 WordPress 网站。我不是一个强大的程序员,所以对我来说裸露。我正在尝试编辑 WooCommerce 管理订单页面上的元数据字段。例如,当它说“_user_handle_rebate”时,我需要它说“Handle Rebate”。我用字符串查找器查找了这个,我只能在 order-details.php 文件中看到它,在尝试更改名称后,该文件似乎不是编码的地方。很多谷歌搜索表明这可能在functions.php文件中,但我仍然不知道要寻找什么。

是否可以添加一段代码来在事后更改此值,或者我是否必须在存储时更改此值。非常感谢任何建议。

我尝试编辑 order-details.php 文件中的元数据字段,但这对管理订单页面没有影响。我也尝试查看functions.php,但无济于事。这是我可以使用字符串查找器找到的唯一代码:

do_action( 'woocommerce_order_item_meta_start', $item_id, $item, $order );

echo "<br/>";
if (!empty($item_meta->meta['_user_width'][0]))
    echo "Width: ". $item_meta->meta['_user_width'], $item_meta->meta['_user_unit'] ."<br/>";
if (!empty($item_meta->meta['_user_drop'][0]))
    echo "Drop: ". $item_meta->meta['_user_drop'], $item_meta->meta['_user_unit'] ."<br/>";
if (!empty($item_meta->meta['_user_fitting'][0]))
    echo "Fitting Type: ". $item_meta->meta['_user_fitting'] . "<br/>";
if (!empty($item_meta->meta['_user_pull']))
    echo "Pull side: ". $item_meta->meta['_user_pull'] ."<br/>";
if (!empty($item_meta->meta['_user_chain']))
    echo "Chain Type: ". $item_meta->meta['_user_chain'] ."<br/>";
if (!empty($item_meta->meta['_user_tilt'][0]))
    echo "Tilt side: ". $item_meta->meta['_user_tilt'] ."<br/>";
if (!empty($item_meta->meta['_user_controls'][0]))
    echo "Controls: ". $item_meta->meta['_user_controls'] ."<br/>";
if (!empty($item_meta->meta['_user_stack'][0]))
    echo "Stack side: ". $item_meta->meta['_user_stack'] ."<br/>";
if (!empty($item_meta->meta['_user_bracket'][0]))
    echo "Bracket fitting side: ". $item_meta->meta['_user_bracket'] ."<br/>";
if (!empty($item_meta->meta['_user_opening'][0]))
    echo "Control Wand: ". $item_meta->meta['_user_opening'] ."<br/>";
if (!empty($item_meta->meta['_user_frame_colour'][0]))
    echo "Frame colour: ". $item_meta->meta['_user_frame_colour'] ."<br/>";
if (!empty($item_meta->meta['_user_operation_type'][0]))
        echo "Operation Type: ". $item_meta->meta['_user_operation_type'] ."<br/>";
if (!empty($item_meta->meta['_user_depth'][0]))
    echo "Depth: ". $item_meta->meta['_user_depth'] ."<br/>";
if (!empty($item_meta->meta['_user_handle_rebate']))
{
    echo "Handle Rebate Location: ". $item_meta->meta['_user_handle_rebate'];
    echo '<br/>Measurements: ' . $item_meta->meta['_user_hr_measurements'].' mm';
}
php wordpress woocommerce metadata orders
1个回答
0
投票

在 WooCommerce 管理单一订单页面中,要将任何显示的元键更改为可读的标签名称替换,请使用以下命令:

// Add readable "meta key" label name replacement
add_filter('woocommerce_order_item_display_meta_key', 'filter_wc_order_item_display_meta_key', 10, 3 );
function filter_wc_order_item_display_meta_key( $display_key, $meta, $item ) {
    // Only for "line_item" order item type
    if( $item->get_type() === 'line_item' ) 
        return $display_key;

    // Handle Rebate
    if( $meta->key === '_user_handle_rebate' ) {
        $display_key = esc_html__('Handle Rebate', 'woocommerce');
    }

    // Measurements
    elseif( $meta->key === '_user_hr_measurements' ) {
        $display_key = esc_html__('Measurements', 'woocommerce');
    }

    return $display_key;
}

代码位于子主题的functions.php 文件中(或插件中)。应该可以。

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