我正在尝试显示一个字段,但它显示的值很好,但是标签的OUTSIDE?!??!
echo '<h2>'. the_field('where') .'</h2>';
输出=
"London"
<h2></h2>
应该是=
<h2>London</h2>
答案 0 :(得分:4)
因为你有这样的功能:
function the_field($text){
echo $text;
}
echo '<h3>'. the_field('where') .'</h3>';
将您的功能更改为:
function the_field($text){
return $text;
}
echo '<h3>'. the_field('where') .'</h3>';
为什么呢?因为PHP在打印echo的输出之前执行该函数。
答案 1 :(得分:0)
使用此:
<h2><?php the_field('where'); ?></h2>
<强>解释强>
由于echo
的工作方式,您的代码具有输出。它首先生成整个字符串(运行函数),然后呈现输出。因此,如果函数the_field
有输出,它将生成您看到的内容。
基本上你的代码相当于:
$title = '<h3>'. the_field('where') .'</h3>';
echo $title;
示例:强>
function test() {
echo '1';
return '2';
}
echo 'PRE - ' . test() . ' - POST';
结果如下:
$ php test.php
1PRE - 2 - POST