繁体   English   中英

Wordpress 基岩模板中的排序事件

[英]Sorting events in Wordpress Bedrock template

Wordpress 站点基于 Bedrock 构建需要模板调整。 模板中显示的事件从最旧到最新排序。 我认为这是默认行为,因为我看不到任何负责排序的特定部分。

我想将事件从最新到最旧进行排序。

模板中用于显示事件的代码:

  <list-posts
      :list="{{ $past_events }}"
      api-url="/wp-json/version/past-events"
    >
      <template v-slot:default="{ list }">
        <event-card
          v-for="event in list"
          :key="event.id"
          :event="event"
          type="overview"
        >

我尝试在“wp-json ...”路径的末尾添加不同的排序命令:

?filter[orderby]=date&order=desc
?filter[orderby]=event_date&order=desc
?orderby=date&order=desc

但他们破坏了网站(每行单独使用)。

我将不胜感激有关如何正确排序事件(最新到最旧)的任何提示。

创建一个计算属性并在那里对数组进行排序。

https://v2.vuejs.org/v2/guide/computed.html

<div id="example">
  <p>Original message: "{{ message }}"</p>
  <p>Computed reversed message: "{{ reversedMessage }}"</p>
</div>
var component = new Vue({
  el: '#example',
  data: {
    message: 'Hello'
  },
  computed: {
    // a computed getter
    reversedMessage: function () {
      return this.message.split('').reverse().join('')
    }
  }
})

如果您想尝试提高效率,您可能只能对其排序一次并将其存储在数据 object 中。

谢谢你的建议。

我还发现我可以通过使用来获得反转数组:

 v-for="event in list.slice().reverse()"

这是相关的答案: vue.js: reverse the order of v-for loop

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM