将现有的meta_value复制到新的meta_key名称-WordPress

时间:2019-04-25 21:57:52

标签: php sql wordpress

我正在尝试将meta_key和相应的meta_value复制到wp_postmeta表中的新行,其中meta_key获得一个新名称,但具有原始的meta_value

我可以使用MySQL复制一篇文章,但这需要完成300篇以上的文章,因此必须在声明中提供一种方法。

给出的例子: meta_key:postalCode meta_value:1234AA 需要复制到相应的帖子ID到 meta_key:wpcf-adres meta_value:1234AA

我尝试过: 更新wp_postmeta设置meta_key ='postalCode'其中meta_key ='wpcf-adres'

但是,这当然不会重复并保留原始的meta_key,而只是将其重命名。

我希望有人可以指引我正确的方向。

非常感谢对此进行研究。

亲切的问候

Wim

update wp_postmeta  set meta_key = 'postalCode'  where meta_key = 'wpcf-adres'

1 个答案:

答案 0 :(得分:1)

这不是我的代码,我之前保存过,但是可能是您想要的。根据需要切换键。

 <?php
 // HOOK ON REGISTERING NEW USER/CUSTOMER
 add_action('user_register', 'mm_sync_phone_number' , 20, 1);    
 // HOOK ON PERSONAL OPTIONS UPDATE
 add_action('personal_options_update', 'mm_sync_phone_number' , 20, 1);
 // HOOK ON USER PROFILE UPDATE    
 add_action('edit_user_profile_update','mm_sync_phone_number' , 20, 1); 
 function mm_sync_phone_number( $user_id ) { 
 // GET PHONE NUMBER FROM OTHER FIELD
     $phone_number = get_user_meta( $customer_id, 'meta_key_of_other_phone_field', true );
 // UPDATE PHONE NUMBER IN BILLING PHONE NUMBER FIELD
 update_user_meta( $user_id, 'billing_phone',  $phone_number ); 
 }
 ?>