我只是想问一个简单但却非常麻烦的问题,让我们明白这一点
为什么当我在add_filter()中写一个require时,它会在文本末尾返回不需要的1个整数?这是代码
function satufu_template( $satufu_content ){
if ( is_singular( 'satufu_projects' ) ){
$located = locate_template('satufu-template.php');
if ( !empty($located) ){
} else {
echo require plugin_dir_path(__FILE__) . 'template.php';
}
} else {
return $satufu_content;
}
}
add_filter('the_content','satufu_template');
这是我要求的模板文件
typo<?php
echo $satufu_content;
这是输出
test
//SomeMyAwesomeContent
1
这是var_dump()包装器的输出
test
//SomeMyAwesomeContent
int(1)
这是一个简单的1整数,毁了我的生活(好吧,我试了两天只是为了调试这个,直到我放弃。
非常感谢你的关注,并且真的希望这个很棒的论坛能够杀死这个小小的bug:)
答案 0 :(得分:1)
使用echo
时,您不必使用require
。
只需更改:
echo require plugin_dir_path(__FILE__) . 'template.php';
为:
require plugin_dir_path(__FILE__) . 'template.php';
目前出现“1”是因为您正在回应require的结果,这是成功的 (1 - 真,0 =假)。