我认为这将是更容易从不同的角度解决这个问题。
可以在每个职位的选择字段过滤器的选项。见https://www.advancedcustomfields.com/resources/dynamically-populate-a-select-fields-choices/
function acf_load_option_field_choices($field) {
global $post;
$current_id = $post->ID;
switch ($current_id) {
case 101: //Post ID 101
$field[ 'choices' ] = array(
'ferrari' => 'Ferrari',
'lambo' => 'Lambo',
'toyota' => 'Toyota',
'volvo' => 'Volvo'
);
break;
case 202: // Post ID 202
$field[ 'choices' ] = array(
'youtube' => 'Youtube',
'facebook' => 'Facebook',
'twitter' => 'Twitter',
'stackoverflow' => 'Stack Overflow'
);
break;
}
// return the field
return $field;
}
add_filter('acf/load_field/name=options', 'acf_load_color_field_choices');
在这一点上,你可以拉选项从全局选项或者你喜欢的地方,他们并不需要被硬编码。这意味着之前完成繁重的工作,然后在循环中循环遍历诸如正常ACF字段的选项。
你是什么意思有似乎不工作? – davejal