【发布时间】:2021-03-18 14:20:12
【问题描述】:
我在 WooCommerce 中有一个额外的自定义字段(高级自定义字段)来显示一些产品亮点。这些突出显示在 HTML 中的格式如下:
<li>Supports thousands of apps</li>
<li>1080p maximum display resolution</li>
<li>Supports both 2.4 Ghz and 5 Ghz Wi-Fi networks</li>
<li>Supports iOS</li>
我需要格式为like this:
<g:product_highlight>Supports thousands of apps</g:product_highlight>
<g:product_highlight>1080p maximum display resolution</g:product_highlight>
<g:product_highlight>Supports both 2.4 Ghz and 5 Ghz Wi-Fi networks</g:product_highlight>
<g:product_highlight>Supports iOS</g:product_highlight>
基本上我只需要更改标签并将内容保存在第二个元字段中。
我找到了update the value of a specific field 和fire an action when saving a post 的文档。
我的 sn-p 是这样的:
add_action('acf/save_post', 'my_acf_save_post', 5);
function my_acf_save_post( $post_id ) {
// Get previous values.
$prev_values = get_fields( $post_id );
// Get submitted values.
$values = $_POST['acf'];
// Check if a specific value was updated.
if( isset($_POST['acf']['product_details_usp']) ) {
$field_key = "product_details_usp_google";
$value = "some new string";
update_field( $field_key, $value, $post_id );
}
}
我要更改数据的元字段是product_details_usp。
我现在想更改该字段中的数据(下一步)并将其保存在product_details_usp_google。
但它不起作用。没有数据从一个字段传输到另一个字段。 我的代码有什么问题吗?
【问题讨论】:
-
到目前为止,您的调试进展如何?您是否检查过它是否进入了 if 分支?你检查过update_field的返回值吗?
-
我做了一些调试,但 sn-p 似乎不起作用。我现在尝试一些其他方法
标签: php wordpress woocommerce advanced-custom-fields