自定义“single.php”无法显示“高级自定义字段”值。
这是使用自定义“single.php”获取自定义“页面模板”的页面ID的功能
enter code here
<?php
function lang_page_id($id){
if(function_exists('icl_object_id'))
{
return icl_object_id($id,'page', false,ICL_LANGUAGE_CODE);
} else
{
return $id;
}
}
?>
这表示acf值
enter code here
<h4 class="x-feature-box-title"><?php the_field('smr_header',
lang_page_id(355));?>
答案 0 :(得分:1)
删除以下内容:
<?php
function lang_page_id($id){
if(function_exists('icl_object_id'))
{
return icl_object_id($id,'page', false,ICL_LANGUAGE_CODE);
} else
{
return $id;
}
}
?>
在您的代码中:
<h4 class="x-feature-box-title"><?php the_field('smr_header', 355);?>
或者:
<?php $h4_feature_title = get_field('smr_header', 355);?>
<h4 class="x-feature-box-title"><?php echo $h4_feature_title;?></h4>
ACF已经具有帖子特定值,只需输入您想要获取该字段的帖子的ID。我不确定你为什么要将它用于当前页面,因为那时你应该只使用the_field('smr_header');因为它从当前页面获取它。
如果你想获取页面的ID,请在循环内:
$postid = get_the_ID();
echo $postid;
仅包含在自定义页面模板上。
如果您确实希望在循环外获取页面的ID,请在以下位置创建一个函数:
global $wp_query;
echo $wp_query->post->ID;