Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将post元自定义字段复制到其他自定义字段_Php_Wordpress_Methods_Woocommerce_Custom Fields - Fatal编程技术网

Php 将post元自定义字段复制到其他自定义字段

Php 将post元自定义字段复制到其他自定义字段,php,wordpress,methods,woocommerce,custom-fields,Php,Wordpress,Methods,Woocommerce,Custom Fields,如何在一篇文章中将值从文章元复制到其他域元? 例如: 字段1或字段2中只有一个有值,而字段3总是有从fiel1或字段2复制的e值。 所有自定义字段都在一个post(woo产品)元中。您可以通过两种方式完成: 1) 旧方法来自$product\u id动态产品id(或订单id): 2) 新方式(自)来自$product的WC\u产品对象(或来自$order的WC\u订单对象): 代码进入活动子主题(或活动主题)的function.php文件。两种方法都有效。非常感谢LoicTheAztec。只是我

如何在一篇文章中将值从文章元复制到其他域元? 例如:

字段1或字段2中只有一个有值,而字段3总是有从fiel1或字段2复制的e值。


所有自定义字段都在一个post(woo产品)元中。

您可以通过两种方式完成:

1) 旧方法来自
$product\u id
动态产品id(或订单id):

2) 新方式(自)来自
$product
WC\u产品
对象(或来自
$order
WC\u订单
对象):


代码进入活动子主题(或活动主题)的function.php文件。两种方法都有效。

非常感谢LoicTheAztec。只是我在functions.php中复制了第二个代码,还是需要修改?@Mani您不能在functions.php中直接复制它。当您需要获取动态$product Id或order Id时,需要将此代码放置在挂钩函数或模板中(或动态产品或订单对象…如果此答案回答了您的问题,请不要忘记答案,谢谢。非常感谢LoicTheAztec。您能给我一个适用于Woocmerce商店所有产品的完整功能吗?thx@Mani这取决于你想在哪里显示它们,以及如何…meta_键是什么?exa在哪里确实要显示这些值吗?它们需要以什么html结构显示?@LoicTheAztec Hi。每个订单都有“交货时间”或“发送时间”元字段。并且其中始终有一个有值。我需要一个自定义函数来检测“发送时间”字段是否有值,将值复制到“交货时间”每个订单的订单自定义元中的字段。
copy value from custom_field_1 (if exist) or custom_field_2 (if exist) to custom_ field_3
if( ( $value = get_post_meta( $product_id, 'custom_field_1', true ) || $value = get_post_meta( $product_id, 'custom_field_2', true ) ) && ! get_post_meta( $product_id, 'custom_field_3', true ) ){
    update_post_meta( $product_id, 'custom_field_3', $value );
}
if( ( $value = $product->get_meta( 'custom_field_1' ) || $value = $product->get_meta( 'custom_field_2') ) && ! $product->get_meta( 'custom_field_3' ) ){
    $product->update_meta_data( 'custom_field_3', $value );
}