Сортированное меню навигации с помощью Jekyll и Liquid

Я создаю статический сайт (без блога) с помощью Jekyll / Liquid. Я хочу, чтобы у него было автоматически сгенерированное меню навигации, в котором перечислены все существующие страницы и выделена текущая страница. Пункты следует добавлять в меню в определенном порядке. Поэтому я определяю свойство weight в YAML страниц:

---
layout : default
title  : Some title
weight : 5
---

Меню навигации построено следующим образом:

<ul>
  {% for p in site.pages | sort:weight %}
    <li>
      <a {% if p.url == page.url %}class="active"{% endif %} href="{{ p.url }}">
        {{ p.title }}
      </a>
    </li>
  {% endfor %}
</ul>

Это создает ссылки на все существующие страницы, но они не отсортированы, sort игнорируется. Очевидно, я что-то делаю не так, но не могу понять, что именно.

68
задан flyx 29 January 2012 в 12:11
поделиться