繁体   English   中英

Wordpress Woocommerce-用户账单元更新

[英]Wordpress Woocommerce - User Billing Meta Update

我目前有这个工作示例。 除了woocommerce元数据之外的所有内容都已更新。

我的语法不正确吗? (rgar是一个重力形式函数,它返回转义的表单值)

$user_id = wp_create_user( $username, $password, rgar( $entry, '4' ) );
wp_update_user( array( 
    'ID'                   => $user_id, 
    'role'                 => 'customer', //works
    'first_name'           => rgar( $entry, '1.3' ),  //works
    'last_name'            => rgar( $entry, '1.6' ),  //works
    'billing_first_name'   => rgar( $entry, '1.3' ), 
    'billing_last_name'    => rgar( $entry, '1.6' ),
    'show_admin_bar_front' => 'false', //works
    'billing_email'        => rgar( $entry, '4' ), 
    'billing_address_1'    => rgar( $entry, '3.1' ), 
    'billing_city'         => rgar( $entry, '3.3' ), 
    'billing_state'        => rgar( $entry, '3.4' ), 
    'billing_postcode'     => rgar( $entry, '3.5' ),
    'billing_phone'        => rgar( $entry, '6' )
));
update_field('field_5629452b8c7de', rgar( $entry, '1.3' ) . ' ' . rgar( $entry, '1.6' ), 'user_' . $user_id); //works
update_field('field_5629455f8c7df', rgar( $entry, '9' ), 'user_' . $user_id); //works
update_field('field_569e4be42ab47', rgar( $entry, '8' ), 'user_' . $user_id); //works
update_field('field_569e4c192ab48', str_replace('-', '', rgar( $entry, '7' )), 'user_' . $user_id); //works

您尝试在wp_update_user()中更新的大多数东西都是user_meta字段,而不是user字段。

...因此,您需要使用:

update_user_meta( $user_id, $meta_key, $meta_value, $prev_value );

wp_update_user()会以正确的方式自动识别并保存一些user_meta字段,但其中不包括Woocommerce的自定义字段。

因此,您需要相应地更新代码,以使用update_user_meta() 例如:

update_user_meta( $user_id, 'billing_postcode', rgar( $entry, '3.5' ) );

检查此处查看全部user_meta可以传递到田间地头wp_update_user()函数(同那些可以传递到wp_insert_user()函数- https://codex.wordpress.org/Function_Reference/wp_insert_user#Notes

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM