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