我正在创建一个主题,我希望用户能够使用短代码。
现在它输出[the_shortcode]
,我想我知道为什么但不知道如何解决它。
我不以传统方式加载页面内容。 优选的方法是加载the_content()
函数。但是我的模板设计方式是根据页面层次结构中的位置加载内容的。
所以父母的眼神与孩子不同。
为此,我使用 foreach 循环加载内容并回显$grandchild->post_title
.该页面是父级的孙子。
根据互联网的说法,现在解决这个问题的方法是使用apply_filters()
功能。
该函数需要两个参数,我不知道如何填充它们:
function apply_filters( $tag, $value )
这是我的短代码函数:
function output_function(){
return 'Knees weak, arms are heavy';
}
add_shortcode('output', 'output_function');
短代码放置在如下所示的页面帖子中:['output']
关于如何通过过滤器输出页面内容的任何想法?
你想要的是the_content
$content = 'some string that has a [output] shortcode';
echo apply_filters('the_content', $content);
此过滤器将确保所有$content
都像WordPress编辑器一样解析。
和the_content()
一样.