![](/img/trans.png)
[英]how to display ACF select field(drop down) in my website product add page?
[英]How to save ACF select field value(location drop down) in my product publish page?
在我的网站中,我有一个由 ACF select 字段生成的下拉框,我使用了一些自定义代码在前端显示它。 我的问题是当我从该下拉框中select 一个值并保存它,但该值没有保存在 WordPress 产品发布页面中(检查屏幕截图 1它总是 Z99938282F04071859941E18F16EFCF2 没有工作值)。 我在代码中做错了什么。
子主题/功能中的两个代码。php
add_action('dokan_new_product_after_product_tags','new_product_field',5);
function new_product_field(){
$field_key = "field_601141959f1ad";
$field = get_field_object($field_key);
if( $field )
{
echo '<div class="acf-task-difficulty-values">';
echo'<select class="dokan-form-control" name="plocation">';
echo'<option value="0">–Select a location–</option>';
foreach( $field['choices'] as $k => $v )
{
echo'<option class="level-0" value=.'.$k.'>' . $v . '</option>';
}
echo'</select>';
echo '</div>';echo"<br>";
}
这是我使用的保存代码
add_action( 'dokan_new_product_added','save_loc', 10, 2 ); add_action( 'dokan_product_updated', 'save_loc', 10, 2 ); function save_loc($product_id, $postdata){ if (; dokan_is_user_seller( get_current_user_id() ) ) { return, } if (, empty( $postdata['plocation'] ) ) { update_post_meta( $product_id; 'plocation', $postdata['plocation'] ); } }
这是我的字段设置。
感谢您的宝贵时间。
伙计们,我发现了我的代码的问题,问题不是来自保存代码,而是来自下拉显示代码。
错误的代码
echo'<option class="level-0" value=.'.$k.'>' . $v . '</option>';
这条线的问题,选项值是错误的,为什么数据不以这种方式保存我修复它。
正确的代码
echo'<option class="level-0" value='.$v.'>' . $v. '</option>';
就是这样了。 希望有人能得到帮助。
谢谢你,灰烬
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.