Jekyll-admin

Meine Erfahrungen mit Jekyll.

Wenn eine schlanke Webseite schnell gerendert werden soll, mit responsive Design, dann ist ein statischer HTML Generator besser als ein PHP-Mysql -Monster wie Joomla.

Jekyll  basiert auf der Sprache Ruby.  Ich empfehle nicht  ein älteres Jekyll über apt-get zu installieren.  Version sollte neu sein und die gems auch. Bei mir gabs Versionskonflikte. 

Diese Seite erklärt die Installation.  Sorgfältig durchlesen! https://jekyllrb.com/docs/home

Besonders wichtig:

gem Befehle muß ich mit sudo starten.
Wenn man sich gem plugins für Jekyll installiert hat, müssen sie ins Gemfile eingetragen werden. Danach bundle install.

Besonders nützlich ist  das Plugin jekyll-admin.  Das erleichtert die Konfiguration und gibt eine WYSIWIG -Eingabe im Browser. 127.0.0.1:4000/admin

Github erlaubt kostenloses Hosting der erzeugten Jekyll- Webseite.   git init ->gitadd-> git commit-->git push

Auf der Github-seite  im Repository -> Settings klicken.

 Runterscrollen bis Githubpages. Auswählen masterbranch oder ph-pages-branch. Nach kuzer Zeit gibts ein hellgrünes Feld. und die Homepage ist aktiviert. URL wird angezeigt.

Beispiel: https://dewomser.github.io/jekyll-my-awesome-site/

Theme installieren oder downloaden

Vorteile Installieren : Es ist immer ein komplettes Theme vorrätig. einfach einen leeren Ordner anlegen . Mit der Bash Shell hineinspringen und  bundle exec jekyll serve  ein Server mit der Webseite wird gestartet. Änderungen an dem Theme sind aber mühselig ,weil verschiedene Unterordner und Dateien fehlen in denen das Theme geändert werden kann.

Vorteil Downloaden:  Thema kann überschrieben werden im Ordner . Pro Ordner kann dann je eine unterschiedliche Version angelegt werden.  Mit der Bash Shell hineinspringen und  jekyll serve ein Server startet. Beispiel Minima Theme downloaden


Webseite für den Wormser Linux User Stammtisch gebastelt.

Auch diese Webseite ist bei Github gehostet. Neu ist , dass jetzt alle Daten in eine YAML Datei ausgelagert sind. Neue Stammtischtermine und Reviews vergangener Stammtischtermine können dort einfach eingetragen werden ohne Markdown oder HTML zu verändern.

linuxuser:

- meeting: Nächstes Treffen
  tag: "06"
  monat: "11"
  jahr: 2018
  ort:  Times-Cafe Worms/Ludwigsplatz

Auschnitt aus daten.yaml . Hier können die nächsten Termine eingetragen werden.

linuxuser:
  
  - monat: '11'
    inhalt: >-
     Test November
  - monat: '10'
    inhalt: >-
     02.10.2018 RaspberryPi und Docker. RaspberryPi und Objekt …
  - monat: '09'
    inhalt: >-
     04.09.2018 Froscon - was gabs zu sehen - interessante Vorträge …

Ausschnitt review.yaml . Hier kann der Inhalt des letzten Stammtischs zusammengefasst werden.

YAML in Markdown integrieren

In der Markdownseite gibts eine Schleife,die die Daten dann wieder abfragt . Liquid ist in Jekyll integriert deshalb funktioniert das .

 

{% for review in site.data.review18.linuxuser %}
{{ review.inhalt }}
{% endfor %} 

So sieht die  Markdown  Seite aus, in der all Reviews des Jahres 2018 angezeigt werden.

{% assign next = site.data.daten.linuxuser[0] %}
{{next.meeting}} : {{next.tag}}.{{next.monat}}.{{next.jahr}}
19:30 im {{next.ort}} 

Um nur den ersten Datensatz aus der YAML Datei auszulesen, braucht man keine Schleife. Achtung Liquid fängt die Nummerierung bei 0 an.

Diese Datensätze lassen sich auch im Headteil der Webseite  für Beschreibungssprachen für Twitter, Google und Facebook benutzen. Zum Beispiel in /includes/head.md  oder in den Layouts.

Wer genau wissen will, wie ich das gemacht habe, kann sich den Source bei Github ansehen, und natürlich auch forken oder klonen.

Die Webseite heißt https://wolust.de

.

  • Kenntnisse zum Verstehen des Artikels: LINUX