我创建了一个custom template 对于客户。这将是一个多站点安装上的多语言站点设置。
正如你在每个分类字母下看到的,帖子都是按字母顺序开始的,但“M”和“O”都不正常。
如果您使用顶部的字母栏点击这些类别,这些帖子将按字母顺序排列。
两个页面使用相同的代码,所以我不知道我做错了什么。我有一种感觉,我在某处有一个查询冲突,但我找不到它。下面是进行排序的代码:
<section class="atozlist">
<?php
$newargs = array(
\'child_of\' => $catID,
\'order\' => \'ASC\'
);
$categories = get_categories($newargs);
foreach ($categories as $category) {
echo \'<h2>\'.$category->name.\'</h2>\';
echo \'<ul>\';
$titleArgs = array(
\'cat\' => $category->term_id,
\'order_by\' => \'title\',
\'order\' => \'ASC\'
);
foreach (get_posts($titleArgs) as $post) {
setup_postdata( $post );
echo \'<li><a href="\'.get_permalink($post->ID).\'">\'.get_the_title().\'</a></li>\';
}
wp_reset_postdata();
echo \'</ul>\';
}
?>
</section>
我不确定
setup_postdata($post)
, 虽然我用它作为模板。我也不确定我是否实施了
wp_reset_postdata()
正确地
有人有什么想法吗?
最合适的回答,由SO网友:tadywankenobi 整理而成
啊耶。。。我们都错过了order_by
, 我们不是。。。应该是orderby
.
该死的。
无论如何,谢谢大家的帮助。