首页 文章

自定义主题中的WordPress短代码失败

提问于
浏览
0

我正在创建一个主题,我希望用户能够使用短代码 .
现在它输出 [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']

有关如何通过过滤器输出页面内容的任何想法?

1 回答

  • 2

    你想要的是 the_content

    $content = 'some string that has a [output] shortcode';
    echo apply_filters('the_content', $content);
    

    此过滤器将确保所有 $content 都像WordPress编辑器一样被解析 .
    the_content() 一样 .

相关问题