更新:我尝试使用以下代码:
<?php if (is_category(events)) {
$posts = query_posts($query_string . '&orderby=event_date&order=desc');
} else {
$posts = query_posts($query_string . '&orderby=title&order=asc');
}
?>
有什么理由不工作吗?按字母顺序组织帖子似乎可以正常工作,但在“事件”中的日期顺序仍然没有运气。
--
在搜索了各种现有问题后,我无法完全找到我正在尝试做的事情的解决方案。
目前我网站上的所有帖子都按字母顺序排列,这很好,除了我添加的一个新类别。对于这个类别,我想按我在自定义字段中输入的值对所有帖子进行排序。该字段称为“event_date” - 所以我想基本上按日期排序帖子,而不是帖子创建的日期,即用户手动输入此字段的日期。
我设法通过使用:
<?php if (is_category($events)) { $posts = query_posts($query_string . '&orderby=$event_date&order=asc'); } ?>
但是,这会覆盖所有其他页面的 aphabetical 顺序。
对于我使用的字母顺序:
<?php if (is_category()) { $posts = query_posts( $query_string . '&orderby=title&order=asc' ); } ?>
本质上,我想要一个声明,告诉页面以 aphabetical 顺序对所有帖子进行排序,除非类别是“事件”,我想按自定义事件日期对它们进行排序。
正如您可能会说的那样,我非常喜欢前端,而不是后端,所以很多这对我来说是相当新的,所以任何帮助或建议都值得赞赏。