列表作者的问题快捷代码

时间:2020-10-05 作者:Dim

我已经为我的网站创建了一个贡献者列表,效果很好。我正试图用函数中的一个短代码来实现这一点。php。列表显示良好。但是,当我想将其放置在任何页面的主题中时,它会出现在内容之前,而我希望它位于相应页面模板的页面底部。我似乎找不到我的错误

    function comite_shortcode( $atts ){
        $contributor_member = array(
             \'role\'    => \'Contributor\',
             \'orderby\' => \'user_nicename\',
             \'order\'   => \'ASC\',
             \'number\'  => 2,
        );
        $authors = get_users($contributor_member);
            foreach ($authors as $users):
                echo \'<div class="column-member">\';
                    echo \'<div class="info-member">\';
                        echo \'<span class="comite-description-name">\'.$users->display_name.\'</span>\';
                        echo \'<span class="comite-description">\'.$users->institution_rattachementUser.\'</span>\';
                        echo \'<span class="comite-description">\'.$users->fonctionUser.\'</span>\';
                        echo \'<span class="comite-description">\'.$users->responsableUser.\'</span>\';
                    echo\'</div>\';       
                echo\'</div>\';           
                 echo\'<hr class="separator-member">\';
            endforeach;
            $html = ob_get_contents();
            return $html; // On renvoie le contenu }
add_shortcode( \'comite\', \'comite_shortcode\' );

1 个回复
最合适的回答,由SO网友:Tom J Nowell 整理而成

这是因为输出缓冲区已关闭,但从未打开。

在短代码的开头添加此选项可以解决以下问题:

ob_start();

相关推荐

重写WordPress中$ATTS SHORTCODE_ATTS内的类

我有一个插件,我需要调整一个函数。特别是\'class\' => \'\'. 这是插件中的代码:function message_to( $atts, $content = null, $tag = \'\' ) { $atts = shortcode_atts( array( \'to\' => \'{current-post-author}\', \'subject\' => \'{current-po