SORU
29 Ocak 2012, Pazar


Jekyll ile navigasyon menü sıralanmış ve Sıvı

Statik bir site (blog) Jekyll/Sıvı ile inşa ediyorum. Bu otomatik olarak oluşturulan tüm varolan sayfalar ve vurgulamak listeleyen bir navigasyon menüsü geçerli sayfa olsun istiyorum. Öğeleri belirli bir sırada menüye eklenmelidir. Bu nedenle, ben, bu sayfada YAML: . weight bir özellik tanımlamak

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

Navigasyon menüsünde aşağıdaki gibi inşa edilmiştir

<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>

Bu mevcut tüm sayfalara bağlantılar oluşturur, ama sıralanmamış onlar, sort filtre göz ardı gibi görünüyor. Belli ki, bir şeyler yanlış yapıyorum ama ne olduğunu çözemedim.

CEVAP
3 ŞUBAT 2012, Cuma


Tek seçenek çift döngü kullanmak gibi görünüyor.

<ul>
{% for weight in (1..10) %}
  {% for p in site.pages %}
    {% if p.weight == weight %}
      <li>
        <a {% if p.url == page.url %}class="active"{% endif %} href="{{ p.url }}">
          {{ p.title }}
        </a>
      </li>
    {% endif %}
  {% endfor %}
{% endfor %}
</ul>

Çalışması lazım, çok çirkin. Eğer siz de bir kilo olmadan sayfaları varsa, ek bir iç döngü sadece/önce {% unless p.weight %} dahil mevcut iç bir sonra olacak.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • David MeShow

    David MeShow

    10 EKİM 2006
  • Dive In

    Dive In

    17 Temmuz 2013
  • Flash CS6 Video Tutorials for Beginners (Actionscript 3 Gaming)

    Flash CS6 Vi

    14 EYLÜL 2012