2015-04-20 99 views
2

有沒有人想出了一個簡單/快捷的方式來使用Ghost的自定義後排序順序?Ghost博客文章排序順序

具體來說,我想實現一個主題,使用Ghost的標籤{slug} .hbs功能來呈現標籤特定的頁面,以訂購帖子最早的>最新的,而不是默認的最新版本>最舊的。

任何想法與黑客攻擊鬼核心和大混亂?

感謝

+1

目前,這是不可能的:https://github.com/TryGhost/Ghost/issues/889 – mikedidthis

回答

1

見:https://github.com/TryGhost/Ghost/issues/5602

要訂購後最古老>最新,編輯核心\服務器\型號\ post.js文件,找到orderDefaultOptions功能和改變published_at值(」 ASC'):

orderDefaultOptions: function orderDefaultOptions() { 
    return { 
     status: 'ASC', 
     published_at: 'ASC', 
     updated_at: 'DESC', 
     id: 'DESC' 
    }; 
}, 
0

您不能讓博客引擎返回不同的排序順序。但是你可以做的是使用模板代碼來拋棄引擎提供的結果,並使用#get助手獲取新結果。

{{#has any="tag.feature_image"}} 
     {{#get "posts" filter="tags.slug:{{tag.slug}}" limit=100 order="published_at asc"}} 
      <!-- `posts` from the parent context is overwritten by get --> 
      {> "loop"}} 
     {{/get}} 
    {{else}} 
      <!-- default loop --> 
      {{> "loop"}} 
    {{/has}} 

我如想列出tag.hbs帖子按時間順序,如果標籤有一個featured_image。因此,對於此類標籤,我使用#get幫手按時間順序獲取帖子(order="published_at asc")。如果未顯示由博客引擎以相反順序提供的帖子。