Подтвердить что ты не робот

Jekyll Post Order

Если этот вопрос уже задан, я действительно не смог его найти!

В принципе, я начал блог на основе jekyll с темой jekyll-now. Я новичок в jekyll и о том, как он работает (особенно Liquid). Я понимаю, что новые должности должны быть следующими: 2014-10-04-Hello-World.md. Но я действительно не понимаю, как я мог их заказать.

Моя первая мысль заключается в том, что они упорядочивают по дате, поэтому два сообщения в одну и ту же дату будут упорядочены случайным образом. Но разве это не так? Есть ли способ упорядочить должности в хронологическом порядке. ИЛИ, по крайней мере, иметь страницу после архива?

Извиняюсь за довольно дезинформированный вопрос, но я совершенно застрял в этом. И я не могу найти ничего понятного в Интернете.

4b9b3361

Ответ 1

В официальной документации Jekyll есть пример того, как создать основную страницу пост-архива:
Отображение индекса сообщений

Бонус: для более красивой страницы архива (сгруппированы по году или году/месяцу), см. этот ответ.


Вы правы, я не могу найти что-либо в документах, где он говорит, как упорядочиваются сообщения, но на самом деле Jekyll упорядочивает их в хронологическом порядке, причем последнее сообщение сначала (вы можете это увидеть, если попробуете примеры, приведенные выше).

Чтобы отсортировать их по-другому (самый старый пост), вы можете использовать ключевое слово reversed в соответствии с документацией по жидкости

{% for post in site.posts reversed %}

Однако я не знаю, как упорядочены два сообщения в одну дату, потому что я не пишу столько сообщений, поэтому у меня никогда не было этой проблемы:-)
Вы должны попробовать это сами.

Ответ 2

Просто столкнулся с той же проблемой и решил с этим решением: https://groups.google.com/forum/#!topic/jekyll-rb/8QCIzevauSU

Добавьте поле даты в поле "Ямал" перед сообщением, например:
date: 2010-09-15 14:40:45

например. если у вас есть 2 сообщения в 2014/12/31, вы можете добавить date: 2014-12-31 00:30:00 в latest_post.md и date: 2014-12-31 00:10:00 на old_post.md.

При необходимости вы можете добавить часовой пояс (например, date: 2014-12-31 00:10:00 +08:00):)

Ответ 3

У меня была такая же проблема, и я долго искал ее. Я смеялся, чувствуя, что заказы могут быть возможны или не могут быть.

Скорее всего, Коксзи уже получил свой ответ, но я хочу документировать свою борьбу на этом посту, чтобы он мог помочь другим пользователям.

Вам нужно сделать два изменения.
1. Откройте свои сообщения и добавьте вес. например, вес: 100 - 2. Откройте файл html для меню, в котором вы хотите отсортировать сообщения. Для меню Java/J2EE у меня есть файл java.html на корневом пути моего проекта.
THEN

Добавьте {% assign pages_list = pages_list | sort: "weight" %}, как показано в приведенном ниже коде. Это сортирует по весу.

{% for category in site.categories %} 
  {% if category[0] contains 'java' %} 
    <h3 id="{{ category[0] }}-ref">{{ category[0] | join: "/" }}</h3>
    <ul>
      {% assign pages_list = category[1] %}  
      {% assign pages_list = pages_list | sort:"weight" %}  
      {% include JB/pages_list %}
    </ul>
  {% endif %}
{% endfor %}