我有一个简单的自定义快捷代码插件,你给它一个标签,它会显示所有贴子的标题。
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;
}
SO网友:S kumar
这个get_posts()
参数应该是numberposts
不posts_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模式中输入了短代码。