【问题标题】:Order Categories by a custom order in wp_dropdown_categories按 wp_dropdown_categories 中的自定义顺序对类别进行排序
【发布时间】:2018-03-27 20:47:31
【问题描述】:

我使用wp_dropdown_categories( $args ) 函数来显示/选择某些类别。默认设置按字母顺序在下拉菜单列表中显示类别标题('orderby' => 'name')

因为我的网站有一个事件列表,所以我有 7 个类别,每天一个,即“星期一”、“星期二”、....“星期日”。

由于'orderby' => 'name',这些类别按字母顺序排列:
Dienstag”(星期二)、“Donnerstag”(星期四)等。

我想在一周中的几天以正确的顺序订购/显示它们,即以“Montag”(星期一)开始并以“Sonntag”结束(星期日)。

如何为此指定自定义订单?

【问题讨论】:

  • 您是仅在仅显示那些日期名称选项的情况下才需要此排序顺序,还是在显示 all 选项时才需要此排序顺序 - 并且只有这几个排序按字母顺序,其余的按不同的标准?请举例说明您需要什么以及在哪里。
  • 我需要这个只是为了在下拉菜单中更好地显示它。它从打开的下拉菜单列表的顶部开始,“D”代表 Dienstag(星期二)而不是 Donnerstag(星期四)......等等。以蒙塔格(星期一)开头会比迪恩斯塔格(星期二)等更好。
  • 如果您愿意牺牲所有“活力”并且对仅适用于您的网站的静态解决方案感到满意,并且只要您不对这些现有条款进行任何修改,您可以简单地使用 orderby=include,并以正确的顺序在include 数组/字符串中列出术语 id。如果您需要它比这更灵活,您可以使用像 wordpress.org/plugins/taxonomy-terms-order 这样的插件,它允许您通过在后端拖放对您的术语进行排序,然后让您使用 orderby=term_order 在查询中对它们进行排序。
  • 通过包含并列出(仅)7 个按 id 的类别...非常好!非常感谢!

标签: wordpress sql-order-by


【解决方案1】:

您可以在 wp_dropdown_categories( $args ) 中更改 'orderby'=> 'ID','order'=> 'ASC'

https://developer.wordpress.org/reference/functions/wp_dropdown_categories/

【讨论】:

  • 这是可能的。但是我的 7 个工作日的类别没有正确顺序的 ID...monday-category-id 高于 tuesday-category。或者 sunday-catgegory-id 的 id 小于 saturday-category-id。因此,按 ID 排序是没有意义的。如果我能给他们一个自己的身份证,那将是可能的。但我认为这并不容易。
  • 你可以试试这个插件wordpress.org/plugins/taxonomy-terms-order
猜你喜欢
  • 2021-12-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-02-14
  • 2019-05-28
相关资源
最近更新 更多