2016-11-06 7 views
2

Ich versuche, eine Archivseite von Beiträgen von meiner Website zu erstellen. Was ich möchte, ist in der Lage sein, eine Seite pro Monat für jede Liste der Beiträge in diesem Format hat:Beiträge von Monat in Jekyll

www.mywebsite.com/2016/11 würde für 2016. November alle Beiträge angezeigt

Kann ich Haben Sie für jeden Monat, den ich gepostet habe, eine Seite, die jedes Mal erstellt wird, wenn ich in einem neuen Monat poste? Ich möchte nicht für jeden Monat manuell eine neue Seite erstellen müssen.

Ich kann schon Gruppen Beiträge Jahr etwa so:

<ul> 
{% for post in site.posts %} 
    {% assign currentdate = post.date | date: "%Y" %} 
    {% if currentdate != date %} 
    <li id="y{{currentdate}}">{{ currentdate }}</li> 
    {% assign date = currentdate %} 
    {% endif %} 
    <li><a href="{{ post.url }}">{{ post.title }}</a></li> 
{% endfor %} 
</ul> 

Vielen Dank für jede Hilfe.

Antwort

3

Sie können Ihren date Filter ändern, um den Monat, z. date: "%B %Y". Das ist, was ich in einem Layout verwendet habe, mit einem separaten <ul> für jeden Monat.

Von documentation, Monat nur Werte für die date Filter sind:

  • %b: abgekürzter Name des Monats.
  • %B: vollständiger Monatsname.
  • %m: Monat des Jahres (01 - 12).

komplette Schleife:

<ul> 
{% for post in site.posts %} 
    {% assign currentdate = post.date | date: "%B %Y" %} 
    {% if currentdate != date %} 
    <li id="y{{currentdate}}">{{ currentdate }}</li> 
    {% assign date = currentdate %} 
    {% endif %} 
    <li><a href="{{ post.url }}">{{ post.title }}</a></li> 
{% endfor %} 
</ul> 

über die Seiten zu erzeugen, AFAIK dies kann nur durch ein Plugin erfolgen. Wenn Sie Plugins nicht verwenden können, z. Wenn Sie Ihre Seiten auf GitHub hosten, sollten Sie Ihre Seiten auf ein kleines YAML-Frontmatter reduzieren, das auf einem Layout basiert, wie in this answer.

+0

Danke, das hat mir geholfen. Ich bin Hosting auf GitHub, so dass ich keine Plugins für diese wird (und um ehrlich zu sein ich die Seite so leicht wie möglich halten will, so ich will keine Abhängigkeiten von externen Plugins). – colmulhall

Verwandte Themen