按元而不是默认发布日期按字母顺序对分类页面进行排序

时间:2011-06-23 作者:Chuck

用户从显示自定义帖子类型的帖子的页面开始,“代理”。

显示的每个帖子显示其所属的区域/自定义分类法,并链接到一个页面,该页面显示用户单击的区域中的所有帖子。

这是这些帖子当前的显示方式,

<?php while ( have_posts() ) : the_post(); ?>
理想情况下,我希望按照meta\\u键lname的字母顺序对这些内容进行排序,而不是按照wordpress默认的发布日期进行排序。

感谢您的任何意见

编辑:我用来获取所有自定义帖子类型代理的脚本。将一个指定的帖子作为最后一篇帖子。

<?php 
    $loop = new WP_Query( array( 
        \'post_type\' => \'agents\',
        \'orderby\' => \'meta_value\',
        \'meta_key\' => \'lname\',
        \'order\'=>\'ASC\',
        \'meta_query\' => array(array( \'key\' => \'lname\' )),
        \'post__not_in\' => array( \'93\' ),
        \'posts_per_page\' => -1 ) );
    $loop2 = new WP_Query( array( 
        \'post_type\' => \'agents\',
        \'post__in\' => array( \'93\' ) ) );
?>
<?php
    if($loop->have_posts() || $loop2->have_posts()) { 
    if($loop->have_posts()) { while($loop->have_posts()) { $loop->the_post();
?>

3 个回复
最合适的回答,由SO网友:Chuck 整理而成

这就是最终起作用的原因。

global $wp_query;   

query_posts(array_merge(array(\'orderby\' => \'meta_value\', \'meta_key\' => \'rw_lname\' ),$wp_query->query));

<?php while ( have_posts() ) : the_post(); ?>

SO网友:mfields

在循环之前,可以尝试以下操作:

<?php
query_posts( wp_parse_args( $query_string, array(
    \'meta_key\' => \'your_meta_key\',
    \'orderby\' => \'meta_value\'
    ) ) );
?>

SO网友:chrisguitarguy

与上述答案大致相同,但使用meta_query 而不是meta_key. meta_key 自WP 3.1起已弃用。我不确定是不是meta_value 然而,在这种情况下仍然有效。

$wpse20766args = array(
     \'orderby\'  => \'meta_value\',
     \'order\'    => \'ASC\',
     \'post_type\'    => \'agent\',
     \'posts_per_page\' => -1,
     \'meta_query\'   => array(
        array( 
            \'key\' => \'lname\'
        )
     ) 
);

$wpse20766q = new WP_Query( $wpse20766args );

// then the loop...
if( $wpse20766q->have_posts() ):
while( $wpse20766q->have_posts() ) :
$wpse20766q->the_post(); 

// do stuff...

endwhile;
endif;

结束

相关推荐

Sort admin menu items

关于“的相关注释”Changing the Order of Admin Menu Sections?“,我正在寻找一种按字母顺序对WordPress管理区域的每个子部分中的条目进行排序的方法。目前,每当添加新插件时,其条目都会出现在“设置/工具/插件”下看似随机的位置,通常很难找到新的菜单项。(我已经有很多插件了,所以我的菜单很满。)由于我相当经常地添加和删除插件,所以我宁愿不需要不断进入设置页面来获取菜单排序插件并调整顺序。抱歉问了这么长的问题;我只是想弄清楚我在找什么。示例代替: S