2013-11-15 3 views
1

Я добавил разбивку на страницы до my website сегодня вечером, и я столкнулся с проблемами, где теперь я сломал весь сайт.Проблема Здание Jekyll blog post page и pagenation

Я использую стандартную структуру каталогов Jekyll для файлов. Для моего веб-сайта я хочу, чтобы страница индекса была обо мне, затем нажмите страницу /blog, чтобы просмотреть мой блог. Поэтому у меня есть index.md по главной странице. Тогда у меня есть страница blog.html, страница блога. Я использовал {% for post in site.posts limit: 10 %}, который работал и переключился на {% for post in paginator.posts %}, основываясь на том, как последняя документация рекомендовала цикл, и он сломался. В моем _config.yml файле у меня есть:

paginate: 10 
paginate_path: "blog/page:num" 
permalink: /blog/:year/:month/:day/:title.html 

Я хочу пейджинговой быть /blog/page2.html. Я не уверен, что я настроил неправильно. Вот моя вся blog.html страница:

--- 
title: Blog 
layout: default 
permalink: /blog/index.html 
--- 

{% for post in paginator.posts %} 
<div class="row"> 
    <div class="col-lg-12"> 
     {% if post.layout contains "link" %} 
     <h4><a href="{{post.url}}"><i class="icon-link"></i>&nbsp;{{post.title}}</a></h4> 
     {% else %} 
     <h4><a href="{{post.url}}">{{post.title}}</a></h4> 
     {% endif %} 
     <small>{{post.date | date: "%m/%d/%Y"}}</small> 
     <div class="post-content-truncate"> 
      {% if post.content contains "<!-- more -->" %} 
       {{ post.content | split:"<!-- more -->" | first % }} 
       <a href="{{post.url}}">Read full article...</a> 
      {% else %} 
       {{ post.content }} 
      {% endif %} 
     </div> 
    </div> 
</div> 
{% endfor %} 

{% if paginator.total_pages > 1 %} 
<div class="row"> 
    <div class="col-lg-12"> 
      <ul class="pagination"> 
       {% if paginator.previous_page %} 
        <li><a href="{{ paginator.previous_page_path | prepend: site.baseurl | replace: '//', '/' }}">&laquo; Prev</a></li> 
       {% else %} 
        <span>&laquo; Prev</span> 
       {% endif %} 

       {% for page in (1..paginator.total_pages) %} 
        {% if page == paginator.page %} 
         <li><em>{{ page }}</em></li> 
        {% elsif page == 1 %} 
         <li><a href="{{ '/index.html' | prepend: site.baseurl | replace: '//', '/' }}">{{ page }}</a></li> 
        {% else %} 
         <li><a href="{{ site.paginate_path | prepend: site.baseurl | replace: '//', '/' | replace: ':num', page }}">{{ page }}</a></li> 
        {% endif %} 
       {% endfor %} 

       {% if paginator.next_page %} 
        <li><a href="{{ paginator.next_page_path | prepend: site.baseurl | replace: '//', '/' }}">Next &raquo;</a></li> 
       {% else %} 
        <li><span>Next &raquo;</span></li> 
       {% endif %} 
      </ul> 
    </div> 
</div> 
{% endif %} 

Любые идеи о том, куда я иду не так?

ответ

2

Проблема была на самом деле две проблемы:

  1. Я использовал старую версию Джекила. Как только я обновился до последнего, он почти работал.
  2. я должен был поместить мой файл /blog.html в /blog/index.html

После того, как я сделал эти два шага, он работал.