要解决“ACF字段在首页上未显示出来”的问题,首先需要检查以下几点:
// 在 functions.php 中注册ACF字段
function my_acf_fields() {
if( function_exists('acf_add_local_field_group') ):
acf_add_local_field_group(array(
'key' => 'group_5f7d13dfaffa1',
'title' => 'My Custom Fields',
'fields' => array(
array(
'key' => 'field_5f7d13f64724e',
'label' => 'My Field',
'name' => 'my_field',
'type' => 'text',
'instructions' => '',
'required' => 0,
'conditional_logic' => 0,
'wrapper' => array(
'width' => '',
'class' => '',
'id' => '',
),
'default_value' => '',
'placeholder' => '',
'prepend' => '',
'append' => '',
'maxlength' => '',
),
),
'location' => array(
array(
array(
'param' => 'post_type',
'operator' => '==',
'value' => 'post', // 替换为正确的帖子类型
),
),
),
'menu_order' => 0,
'position' => 'normal',
'style' => 'default',
'label_placement' => 'top',
'instruction_placement' => 'label',
'hide_on_screen' => '',
'active' => true,
'description' => '',
));
endif;
}
add_action('acf/init', 'my_acf_fields');
get_field()
或the_field()
函数来获取和显示ACF字段的值。例如:// 在首页模板文件中调用ACF字段
$my_field_value = get_field('my_field');
echo $my_field_value;
// 在自定义首页模板文件中调用ACF字段
if (have_posts()) :
while (have_posts()) : the_post();
$my_field_value = get_field('my_field');
echo $my_field_value;
endwhile;
endif;
如果你已经检查了以上步骤,ACF字段仍然未显示在首页上,请确保在ACF设置中正确选择了要显示ACF字段的位置。此外,还要检查是否存在任何与ACF相关的缓存插件或功能,这些插件或功能可能会导致字段未正确显示。最后,确保ACF字段的权限设置允许在首页上显示。
下一篇:ACF字段在主题中显示