Tumblr博客:如何添加按日期排序的所有帖子的列表

时间:2014-01-14 20:22:54

标签: api tumblr posts

我正在定制Tumblr博客,但我找不到按日期访问所有帖子的好方法。 Tumblr允许您使用Day Pages显示一天中的特定帖子,但我想查找所有帖子及其日期,然后将其显示为按月和年划分的列表(实际上,它就像Wordpress的默认侧边栏)。请参见此处的示例图片:http://i.stack.imgur.com/28gGH.png

我一直在查看Tumblr的Custom Theme Documentation,但还没有找到生成此信息的方法。也许他们通过他们的API提供它?我还没找到任何东西。

我很欣赏这里的任何方向。感谢。

1 个答案:

答案 0 :(得分: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中提取