我的页面都显示了网站标题(来自定制者),在页面或帖子标题之后,在“我的网站”之前;“正文”;该职位的。通过在WordPress代码前后插入要打印的文本行进行故障排除,将源代码缩小到the_content()
在页面模板内调用。
以下是方法the_content()
被称为:
...
</header><!-- .entry-header -->
<div class="content entry-content">
<?php the_content(
// Translators: %s: Name of current post. Only visible to screen readers.
sprintf( esc_html__( \'Continue reading %s\', \'bulmapress\' ), \'<span class="screen-reader-text">\' . the_title( \'\', \'\', false ) . \'</span>\' )
);
wp_link_pages( array(
\'before\' => \'<div class="page-links">\' . esc_html__( \'Pages:\', \'bulmapress\' ),
\'after\' => \'</div>\',
) );
?>
</div><!-- .entry-content -->
<footer class="content entry-footer">
...
我有点困惑,因为
post_template.php
哪里
the_content()
和
get_the_content()
定义的是WordPress/includes文件,而不是父主题文件。
我应该寻找一些在主题中定义的过滤器吗?TIA公司
SO网友:Rickmakeitquick
罪魁祸首在add\\u filter函数中。注释掉以下内容后,页面/帖子内容上方的网站标题被删除:
function add_post_content($content) {
if(!is_feed() && !is_home()) {
$content .= \'<p>This article is copyright © \'.date(\'Y\').\' \'.bloginfo(\'name\').\'</p>\';
}
return $content;
}
add_filter(\'the_content\', \'add_post_content\');
第一部分,“;本文版权所有(c)“;,在您期望的地方打印,但bloginfo(“名称”)出现在其他内容之前。
编辑--解释:
在WordPress Code Reference, 一些隐晦的建议出现了:“quot;这始终会将结果打印到浏览器。如果需要在PHP中使用这些值,请使用get\\u bloginfo()"E;Bloginfo()
包括echo
语句,因此它会在预处理代码时立即打印到浏览器。
我的呼叫bloginfo()
在my child主题的函数中functions.php
是在WordPress有机会打印页面或帖子内容之前处理的,因此此时会出现函数的输出。相反get_bloginfo()
仅返回与请求的参数相对应的数据。