wordpress中高级自定义字段的语法

时间:2013-07-30 11:27:57

标签: php wordpress syntax

我正在尝试显示一个字段,但它显示的值很好,但是标签的OUTSIDE?!??!

echo '<h2>'. the_field('where') .'</h2>';

输出=

"London"
<h2></h2>

应该是=

<h2>London</h2>

2 个答案:

答案 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