在the_content过滤器中使用echo或return

时间:2014-11-26 10:59:38

标签: wordpress wordpress-plugin

我是Wordpress插件开发的新手,我刚开始就陷入困境。 我尝试开发一个非常简单的插件,为每个帖子添加一个链接。这是我第一次尝试的代码:

add_filter('the_content', 'my_funct');

function my_funct($content) {
   return $content . '<a href="www.mysite.com">Link</a>';
}

但结果只是附加了文字&#39;链接&#39;到帖子,没有任何超链接。

然后我发现以下解决方案有效:

add_filter('the_content', 'my_funct');

function my_funct($content) {
   echo $content . '<a href="www.mysite.com">Link</a>';
}

第一个解决方案不起作用的原因是什么?

1 个答案:

答案 0 :(得分:0)

the_content()需要返回简单的$content ...否则会删除标记。如果您想要return内容,您应该可以通过以下方式:

add_filter('the_content', 'my_funct');

function my_funct($content) {
    $content .= '<a href="www.mysite.com">Link</a>';
    return $content;
}

了解为何如此in the source