Wordpress 从自定义字段添加可下载文件

Wordpress 从自定义字段添加可下载文件,wordpress,woocommerce,advanced-custom-fields,Wordpress,Woocommerce,Advanced Custom Fields,使用高级自定义字段,我在我的Woocommerce编辑页面中添加了一个“Post Object”字段,设置为返回帖子ID 我试图从这些帖子中获取数据,并从中自动填充我的Woocommerce可下载文件 我当前代码的问题是,如果我更改自定义字段中的数据,然后保存我的产品,它不会更新下载内容。我需要再次更新产品以使下载受到影响 add_action( 'woocommerce_admin_process_product_object', 'mysite_add_downloads', 50, 1 )

使用高级自定义字段,我在我的Woocommerce编辑页面中添加了一个“Post Object”字段,设置为返回帖子ID

我试图从这些帖子中获取数据,并从中自动填充我的Woocommerce可下载文件

我当前代码的问题是,如果我更改自定义字段中的数据,然后保存我的产品,它不会更新下载内容。我需要再次更新产品以使下载受到影响

add_action( 'woocommerce_admin_process_product_object', 'mysite_add_downloads', 50, 1 );

function mysite_add_downloads( $product ){

        $mysite_select_albums = get_field('mysite_select_albums');

        $downloads = array(); // Clear $downloads variable

        foreach ($mysite_select_albums as $album) {

          // Gets Information About Download From Album Post Type
          $post = get_post($album);
          $file_title = $post->post_title;
          $file_url = "http://changingthinstosimplify.com/";
          $file_md5 = md5($file_url);

          $download  = new WC_Product_Download(); // Get an instance of the WC_Product_Download Object

          // Set the download data
          $download->set_name($file_title);
          $download->set_id($file_md5);
          $download->set_file($file_url);

          $downloads[$file_md5] = $download; // Insert the new download to the array of downloads
      }

      $product->set_downloads($downloads); // Set new array of downloads

}