为了账号安全,请及时绑定邮箱和手机立即绑定

更改 Woo 商务订单中管理员帐单地址字段的顺序

更改 Woo 商务订单中管理员帐单地址字段的顺序

PHP
温温酱 2022-09-17 21:59:52
我对管理员中的woocommerce顺序有问题,我希望billing_address_2页面末尾显示为例如波纹管。任何人都可以帮我。
查看完整描述

1 回答

?
慕村9548890

TA贡献1884条经验 获得超4个赞

负责显示字段的核心文件位于WooCommerce插件下:包括/管理员/元框/类-wc-元框-顺序-数据.php

唯一可用且高效的钩子是:woocommerce_admin_shipping_fields

但是,您只能使用以下内容更改管理计费字段顺序:

add_filter( 'woocommerce_admin_billing_fields' , 'change_order_admin_billing_fields' );

function change_order_admin_billing_fields( $fields ) {

    global $the_order;


    $address_2 = $fields['address_2'];


    unset($fields['address_2']);


    $fields['address_2'] = $address_2;


    return $fields;

}

这将为您提供类似如下的内容:

//img1.sycdn.imooc.com//6325d3020001ae2c03150570.jpg

因此,如您所见,您不会获得帐单address_2字段,而是根据需要显示在交易ID之后,而只会显示在帐单字段下。phone


加法 - 在billing_country字段之前显示billing_address_2字段:


add_filter( 'woocommerce_admin_billing_fields' , 'change_order_admin_billing_fields' );

function change_order_admin_billing_fields( $fields ) {

    global $the_order;


    $sorted_fields = [];

    $address_2 = $fields['address_2'];

    unset($fields['address_2']);


    foreach ( $fields as $key => $values ) {

        if( $key === 'country' ) {

            $sorted_fields['address_2'] = $address_2;

        }

        $sorted_fields[$key] = $values;

    }


    return $sorted_fields;

}


查看完整回答
反对 回复 2022-09-17
  • 1 回答
  • 0 关注
  • 107 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号