使用Posts 2 Posts plugin 我已经创建了\'piece\'
, \'person\'
和\'collection\'
自定义帖子类型:任何文章都可以连接到个人(具有角色\'author\'
, \'conductor\'
等)和收集。
现在,相关代码如下所示:
// get all audio pieces connected to current $person:
$audio_ascond = p2p_type( \'pieces_persons\' )->get_connected( $person->ID,
array( \'connected_meta\' => array( \'role\' => \'conductor\' ),
\'media_tag\' => \'audio_tag\',
\'posts_per_page\' => -1 ) );
// get their IDs:
$audio_ascond_IDs = array_map( create_function( \'$p\', \'return $p->ID;\' ),
$audio_ascond->posts );
// get collections for those pieces:
$colls = p2p_type( \'pieces_collections\' )->get_connected( $audio_ascond_IDs,
array( \'orderby\' => \'menu_order title\', \'posts_per_page\' => -1 ) );
所以,问题是
\'orderby\'
没有任何影响。其他一切都很好。
print_r($colls)
看起来不错。
请问这是什么?
谢谢
最合适的回答,由SO网友:brownian 整理而成
所以,现在我决定用php进行排序:
function compare_collections( $c1, $c2 ) {
if( $c1->menu_order == $c2->menu_order ) {
return ( $c1->post_title < $c2->post_title ) ? -1 : 1;
} else {
return ( $c1->menu_order < $c2->menu_order ) ? -1 : 1;
}
}
// and then in my template:
uasort( $colls->posts, \'compare_collections\' ) ;
但我很高兴了解出了什么问题:-)
我猜是这样的p2p_type( )->get_connected
\'s的排序首选项更强或类似。对不起,我不是程序员:-)