主页上的获取帖子不工作(_P)?

时间:2011-10-03 作者:markamgine

我有一个简单的自定义快捷代码插件,你给它一个标签,它会显示所有贴子的标题。

e、 g.在我的帖子中,如果我键入“[listposts标记=2011年10月]”,它将输出标记为“2011年10月”的所有帖子的标题。

这个插件在v3之前一直运行良好。2升级。

现在,当使用短代码的帖子被单独查看时,它仍然可以正常工作。但当在主页上查看该帖子时,get\\u posts()查询返回0个结果。

我需要做什么来修复插件?

以下是相关代码:

function listposts($atts) {
    $atts = shortcode_atts(
        array(
            \'tag\' = \'jan-2011\',
            \'numberposts\' = \'-1\',
            \'orderby\' = \'post_date\',
            \'order\' = \'asc\',
            \'post_status\' = \'any\' ),
        $atts);

    $catposts = get_posts($atts);
    $out = \'\';
    foreach ($catposts as $single) {
        $out .= $single->post_title;
    }

    return $out;
}

2 个回复
SO网友:S kumar

这个get_posts() 参数应该是numberpostsposts_per_page 你把它当作绳子传递。尝试将其设置为整数。

function listposts( $atts ) {

    $atts       = shortcode_atts( array( 
        \'tag\'         => \'jan-2011\',
        \'numberposts\' => -1,
        \'orderby\'     => \'post_date\',
        \'order\'       => \'asc\',
        \'post_status\' => \'any\' 
    ), $atts );
    $catposts   = get_posts( $atts );
    $out        = \'\';

    foreach( $catposts as $single ) {
        $out .= "{$single->post_title}<br />";
    }

    return $out;
}
add_shortcode( \'list\', \'listposts\' );

SO网友:Rutwick Gangurde

我在本地检查了你的代码,效果很好。。。

function listposts($atts) {
    $atts = shortcode_atts(array(\'tag\' => \'lorem\', \'posts_per_page\' => -1, \'orderby\' =>  \'post_date\', \'order\' => \'asc\', \'post_status\' => \'any\'), $atts);
    $catposts = get_posts($atts);
    $out = \'\';
    foreach ($catposts as $single) 
        {
            $out .= $single->post_title."<br />";
        }
    return $out;
    }

    add_shortcode(\'list\', \'listposts\');
请重新检查是否在可视化编辑器的HTML模式中输入了短代码。

结束

相关推荐

ShortCode and extra </p>

[box id=“1”text=“一些文本”]短代码在某一点上是输出文本html结果为:</p> some text </p>开头有一个额外的结束段落,结尾有一个开头。。。为什么?这些是从哪里来的?。。。。有什么想法吗?。。它搞砸了我的w3验证!**注意我发现。。。但在我看来,一切都“修补”了。。。任何干净的溶液。。。wp脏了吗?reference