我正在构建一个Word Press插件,我需要返回页面并将内容发布为html字符串。我希望将其作为字符串返回,以便可以在DOM中搜索带有标签的特定元素,然后在找到这些元素时对其进行处理。
问题是我何时使用
the_content();
或
$content = apply_filters('the_content', $the_content());
似乎总是在我的插件页面上显示(渲染)我不想要的内容。我只想将输出作为字符串返回。
答案 0 :(得分:2)
这是错误的
$the_content()
说实话,我不确定$
的工作方式,但是对the_content()
的任何调用都只会输出它。
您可以使用
get_the_content(字符串$ more_link_text = null,bool $ strip_teaser = false)
以字符串形式获取帖子内容
在任何情况下,如果没有其他方法,您都可以始终使用输出缓冲
ob_start();
the_content();
$content = ob_get_clean();
您可以看到有关什么是输出缓冲的答案。
基本上,当您输出“东西”时,它会进入缓冲区,通常您对此无能为力,最终它会被转储到响应中。使用输出缓冲,您可以将“内容”捕获到可以控制的缓冲区中。
显然,最好使用直接返回字符串的方法,我只是认为如果您需要某种不提供这种方法的功能,那么我将共享输出缓冲“方法”。
干杯!