繁体   English   中英

在 ACF 字段更新推送字段值到 WooCommerce 元值

[英]On ACF field update push field value to WooCommerce meta value

我在 woocommerce(住宿预订)产品上使用高级自定义字段 (ACF) 插件字段,当更新 ACF 字段时,我想将这些值推送到特定的 woocommerce 字段。

使用的预订插件是 Woocommerce Booking - Booking and Reservation 和 Woocommerce Accommodation Bookings(主要 woocommerce 预订插件的住宿预订扩展)

(1. 谁能给我看代码来做这样的事情?我做了大量的谷歌搜索,但找不到任何有用的解决方案。

  1. 一旦我有了更新字段的代码,我如何找到每个特定 wc 字段的特定 woocommerce 挂钩?

  2. 另外,我如何告诉 wc 产品是住宿预订类型?)

编辑:ACF 有一个代码可以根据另一个字段更新一个字段https://www.advancedcustomfields.com/resources/update_field/所以,我的问题是如何调整代码,以便当 ACF 字段附加到产品帖子类型更新后,可以自动使用该字段的值作为 woocommerce 产品数据值。

例如,我有一个 ACF 字段“每晚价格”,我在该字段中输入了一个数字。 当我点击更新该产品时,我希望该数字自动进入标准价格的 woocommerce 产品数据。

您没有很好地搜索到这个带有“更新字段时的 ACF 操作挂钩”的简单搜索

第一个链接是好的,要使用的钩子是这样的:

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 文件中。 它应该工作。

暂无
暂无

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

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