我在woocommerce(住宿预订)产品上使用了高级自定义字段(ACF)插件字段,并且在更新ACF字段时,我想将这些值推送到特定的woocommerce字段。
使用的预订插件是 Woocommerce预订-预订和预订以及 Woocommerce住宿预订(主要woocommerce预订插件的住宿预订扩展)
(1。任何人都可以向我展示执行此操作的代码吗?我进行了大量Google搜索,但找不到任何有用的解决方案。
一旦我有了更新字段的代码,如何找到每个特定wc字段的特定woocommerce钩子?
另外,我如何告诉wc product是住宿预订类型?)
编辑: ACF具有用于根据另一个字段更新字段的代码 https://www.advancedcustomfields.com/resources/update_field/ 因此,我的问题是如何调整代码,以便更新附加到产品发布类型的ACF字段时,可以自动将该字段的值用于woocommerce产品数据值。
例如,我有一个ACF字段“每晚价格”,然后在该字段中输入一个数字。当我单击以更新该产品时,我希望该数字自动输入到“标准价格”的woocommerce产品数据中。
答案 0 :(得分:1)
您对this simple search with "ACF action hook when update a field"的搜索不太满意。
第一个链接是一个好链接,并且要使用的挂钩类似于:
add_action('acf/save_post', 'my_acf_save_post', 1);
function my_acf_save_post( $post_id ) {
// bail early if no ACF data
if( empty($_POST['acf']) ) {
return;
}
// An array of fields values
$fields = $_POST['acf'];
// Get a specific field value and push to a specific Woocommerce meta data
if ( isset($fields['field_abc123']) ) {
$field_abc123 = $fields['field_abc123'];
// Push to a specific woocommerce meta data:
update_post_meta( $post_id, 'targeted_meta_key', sanitize_text_field( $field_abc123 ) );
}
}
代码进入您的活动子主题(或活动主题)的function.php文件中。应该可以。