2014-01-14 113 views
0

我正在自定義一個Tumblr博客,我找不到按日期訪問所有帖子的好方法。 Tumblr允許您使用Day Pages顯示某天的特定帖子,但我想查找所有帖子及其日期,然後將它們顯示爲按月份和年份細分的列表(實際上,它就像是Wordpress的默認側邊欄) 。看到示例圖像在這裏:http://i.stack.imgur.com/28gGH.pngTumblr博客:如何添加按日期排序的所有文章的列表

我一直在尋找通過Tumblr的Custom Theme Documentation,但還沒有找到一種方法來產生這些信息。也許他們通過他們的API提供它?我還沒有找到任何東西。

我很欣賞這裏的任何方向。謝謝。

+0

沒有簡單的方法。這就是提供的歸檔頁面的用途。 – Ally

+0

Thanks @Ally - 爲了在主頁上實現它,就像我提供的示例圖像一樣,我必須以某種方式從存檔頁面中提取數據?我很驚訝他們沒有提供更簡單的API選項。 – jonkratz

回答

2

我發現最好的辦法就是把它從你的博客自己的RSS提要中提取出來。添加該代碼的jQuery已被列入後:

<script> 
    $(function() { 
    var url = '/rss'; 
    var $list = $('#recent-posts'); 
    $.ajax({ 
     url: url, 
     type: 'GET', 
     dataType: 'xml', 
     success: function(data) {     
      var $items = $(data).find('item'); 
      $items.each(function() { 
       var $item = $(this); 
       var link = $item.children('link').text(); 
       var title = $item.children('title').text(); 
       if (link && title) { 
        $list.append($('<li><a href="' + link + '">' + title + '</a></li>')); 
       } 
      }); 
      } 
     }); 
    }); 
</script> 

它會走出去,把所有的博客文章列表,如果你想限制它,職位一定數目,你可以檢查傳入的索引值$ items.each()函數:http://api.jquery.com/jquery.each/

還要確保在您欄的清單:

<!-- RECENT POSTS --> 
    <ul id="recent-posts"></ul> 
<!-- RECENT POSTS --> 

注:列表中可能不會出現在預覽模式下,只有當您保存更改並去現場博客,它將能夠從/ rss

+0

謝謝Stefan。雖然我還沒有在野外測試過你的代碼,但這是一個很好的方法,這是值得標記的正確答案。 – jonkratz

相關問題