0

我正在构建一个 wordpress 插件,我需要取回页面并将内容作为 html 字符串发布。我希望它作为字符串返回,以便我可以在 DOM 中搜索带有标签的特定元素,然后在找到时对这些元素执行某些操作。

问题是当我使用

the_content();

或者

$content = apply_filters('the_content', $the_content());

它似乎总是在我的插件页面上显示(渲染)不是我想要的内容。我只想将输出作为字符串返回。

4

1 回答 1

2

这是错误的

$the_content()

老实说,我不确定它如何与 a 一起使用$,但任何调用the_content()都会输出它。

您可以使用

get_the_content(字符串 $more_link_text = null,布尔 $strip_teaser = false )

检索帖子内容[作为字符串]

在任何情况下,如果没有其他方法,您始终可以使用输出缓冲

ob_start();
the_content();
$content = ob_get_clean();

您可以看到有关输出缓冲是什么的答案。

什么是输出缓冲?

基本上,当您输出“东西”时,它会进入缓冲区,通常您无法控制它,它最终会被转储到响应中。通过输出缓冲,您可以将“内容”捕获到您可以控制的缓冲区中。

显然,最好使用直接返回字符串的方法,我只是想我会共享输出缓冲“方法”,以防你需要这种能力来处理不提供这种方法的东西。

干杯!

于 2019-04-12T03:15:57.160 回答