Updates in eigener Sache

Plattformen, Hosting, Deployment

Heute gibt es mal wieder ein kleines Update hier in eigener Sache, da ich in den letzten Monaten einfach eine Menge zu tun hatte und zu nichts kam was die Schreiberei angeht und auch niemanden mit Zeug langweilen wollte, welcher niemanden interessiert. Egal, nachfolgend einige Dinge die passiert sind.

WordPress, Jekyll, Middleman?

Wer eine Webseite betreibt, kennt diese Grundsatzfrage die einem von Zeit zu Zeit in den Sinn kommt: Welche Plattform will ich eigentlich nutzen und ist die aktuelle die passendste? Nicht anders war es auch als ich anfing dieser Seite ein Facelift zu verpassen.

Ganz oben auf meiner Liste standen die Static Site Generators, namentlich Jekyll und dessen Ruby on Rails-artiger Bruder Middleman, in die man Markdown und ‘HTML+CSS-Backformen’ wirft und sich eine statische HTML-Seite backen lässt, die man anschließend günstig auf Amazon S3 oder kostenlos auf GitHub Pages hosten kann.

Jedoch entschied ich mich gegen das verlockend klingende Angebot den Overhead den WordPress mit sich bringt abzuwerfen und wollte stattdessen meinen bisherigen Stack optimieren, um so eine ähnliche Performance zu erreichen wie die statischen Kollegen. Auch wollte ich nicht auf diverse WordPress Funktionen verzichten die man eben seit Jahren gewohnt ist. An dieser Stelle ein Verweis auf das wohl beste WordPress Plugin: Advanced Custom Fields.

Development & Deployment

Wo ich schon einmal dabei war hinter den Kulissen umzubauen habe ich auch gleich meinen bisherigen Workflow etwas angepasst und wechselte z.B. von Grunt zu gulp.js und tauschte aufgeblasene Icon-Fonts durch ein SVG Sprite aus, welches von gulp-svg-sprites aus einzelnen SVG-Icons zusammengebaut wird. Wie üblich gibt es noch zahlreiche andere Änderungen (Hallo Refactoring und Optimierung) die aus Erfahrungswerten resultieren, aber damit könnte / werde ich denk ich ein anderes Mal einen kompletten Artikel füllen. Also weiter im Text.

Weil “Daten via SFTP vom Computer auf den Server ziehen” dank Git und massig Deployment-Lösungen nicht mehr angebracht ist, hab ich Capistrano in meinen Workflow integriert, welches den wünschenswerten “One Command Deploy” bringt, heißt: Commits zu GitHub pushen, cap production deploy und binnen Sekunden sind die Änderungen live. Für Notfälle gibt es auch noch die Option eines Rollback zur vorherigen Version.

Da ich sowieso vor hatte meine Host Europe vServer nach und nach zu DigitalOcean umzuziehen konnte ich so direkt einmal HHVM mit nginx aufsetzen und es im Production-Einsatz testen. Der Performance-Gewinn ist wirklich erheblich, ohne jetzt Zahlen und Statistiken auspacken zu wollen, die man im Web zu genüge findet. Das kombiniert mit Caching ist wohl die aktuell schnellste Technik, WordPress und generell PHP-basierte Anwendungen auszuliefern.

+ About Seite

Was ist schwieriger als eine Seite über die eigene Person zu bauen und mit Texten über sich selbst zu versehen? Richtig, eine Seite über sich selbst zu bauen. Zumindest war das mein Empfinden, als ich nach Ewigkeiten fertig war eine About-Page zusammenzuwürfeln, welche meine Tätigkeiten grob abbildet.

+ Fotos (Kategorie)

Eine weitere Änderung erfuhr die Foto Kategorie, welche bisher lediglich die Beiträge einschloss, welche in entsprechender Kategorie lagen. Unvorteilhaft für meine Anforderungen.

Problem: Ich schreibe z.B. ein Review zu irgendetwas und streue dort Fotos mit ein, aber diese werden nie in der Foto-Kategorie gelistet, da es sich eben um kein reinen Foto-Beitrag handelt und ich nur ungern die Kategorie mit Reviews belege. (Stay on Topic!)

Lösung: Attachments (ein WordPress Post Type) mit Kategorien versehen und diese in den WP Query der Archivseite einschließen. Dann noch ein passenderes Layout dazu entwerfen und fertig ist die Foto-Seite.

So viel für den Moment, ich habe vermutlich zig Sachen vergessen zu erwähnen, wollte diese Sache aber endlich abschließen und es gibt ja immer noch die Möglichkeit, weitere Beiträge zu schreiben. In diesem Sinne.