Kategorie-Archiv: WordPress

WordCamp Cologne MMXV: Ich bin Community Sponsor

Bisher gibt es (erst) zwei drei schon fünf sogar sechs Communiy-Sponsoren beim WordCamp Cologne MMXV. Jawoll, ich bin einer davon. Und es werden hoffentlich noch viele – auch bei den großen Sponsoring-Paketen….

Banner_300_300

Klicke auf das Bild, um zu den Sponsoring-Paketen zu gelangen.

Ich bin sehr glücklich, dass ich endlich auch mal auf diese Weise der Open Source Community ein kleines bisschen zurück geben kann. Immerhin verdiene ich meine Brötchen mit einer super CMS-Software, für die ich nichts bezahlen muss. Danke an alle! :-)

WordPress-Websites von überflüssigem CSS-Code mit “UnCSS” befreien

In diesem Tutorial möchte ich zeigen, wie man die CSS-Datei einer WordPress-Website verkleinert, indem man überflüssigen bzw. nicht genutzten CSS-Code findet und entfernt. Mit dieser Maßnahme kann man die Performance der Website verbessern.

Um Euch mal einen Geschmack zu geben, was eigentlich der Nutzen ist, habe ich eine Testseite mit WordPress angelegt und sie mit und ohne “gesäuberten” CSS verglichen:

uncss-less-code

50% weniger Code beim WP-Theme “Twenty Fourteen” durch UnCSS.

Die style.css vom aktuellen Standard-Theme Twenty Fourteen ist unkomprimiert 77,4 kB groß. Nach dem Entfernen vom überflüssigen CSS-Code hatte die bereinigte Datei nur 39,0 kB! Diese Zahlen sprechen für sich.

Wie immer möchte ich erstmal grundsätzlich das Thema erörtern und im zweiten Teil, dann konkrete die Lösung beschreiben.

Teil 1: Worum geht es – Grundlagen

Was ist überflüssiger CSS-Code?

Mit überflüssigem CSS-Code ist hier der Code im CSS gemeint, welcher nicht für die Beschreibung der Format-Eigenschaften im HTML benötigt wird. Man kann zwei Arten von überflüssigem CSS-Code unterscheiden:

A) Nicht verwendeter CSS-Code:
Das sind Style-Definitionen, für die es im HTML keine Verwendung gibt. Die schleichen sich z.B. durch Reset-Stylesheets ein. Bei Reset-Stylesheets werden für alle möglichen HTML-Elemente Style-Definitionen festgelegt. Wenn aber in der Website nicht alle HTML-Elemente zum Einsatz kommen, hat man unnötigen Ballast in der CSS-Datei.

B) Überschriebener CSS-Code
Das sind Style-Definitionen, für die es im HTML zwar eine Verwendung gibt, die aber von anderen Definitionen überschrieben werden.

Die hier vorgestellte Methode erkennt beide Arten und elemeniert sie.

Teil 2. Finden und Ersetzen von überflüssigem CSS-Code

Im Prinzip geht man wie folgt vor:

  1. Es wird eine Sitemap mit allen URLs der Website erstellt.
  2. UnCSS erfasst anhand der Sitemap die Seiten und holt sich darüber auch alle Stylesheets – sowohl inline Styles als auch externe CSS-Dateien.
  3. Außerdem erfasst UnCSS alle Selektoren aus dem HTML.
  4. Dann werden alle Selektoren mit den Stylesheets abgeglichen.
  5. Die Stylesheets, für die es Selektoren gibt, wandern in eine neu generierte CSS Datei.*

*Das Zusammenfügen von mehreren Stylesheets-Dateien zu einer einzigen hat übrigens den schönen Nebeneffekt, dass man dadurch die Anzahl der HTTP Requests verringert.

Praktische Durchführung

1. Sitemap Plugin installieren

Kopiere das Sitemap Plugin von Liam Gladdy in das Verzeichnis /wp-content/mu-plugins
Ja, richtig gelesen. Das Verzeichnis soll mu-plugins heißen. Was das ist, erfährst Du hier.

2. Grunt und Plugins installieren

Du brauchst:

Unter Ubuntu reicht für die Installation dieser Einzeiler:

sudo npm install grunt --save-dev && sudo npm install --save-dev load-grunt-tasks && sudo npm install --save-dev grunt-exec && sudo npm install --save-dev grunt-uncss

**Kleiner Einschub für alle, die noch keine Erfahrung mit Grunt haben: Ich werde beim Potsdamer WP-Meetup am 18. November eine Einführung in Grunt geben. Die wird es dann auch als Stream im Internet geben und entsprechende Dokumentation.

3. Gruntfile.js einrichten

Jetzt noch die Datei Gruntfile.js im Hauptverzeichnis des Projektes anlegen, den folgenden Code dort rein kopieren und die Verzeichnisse und Dateinamen anpassen:

// Wrapper - Nichts verändern!
module.exports = function(grunt) {
	'use strict';

	// Grunt Tasks
	grunt.initConfig({
		pkg: grunt.file.readJSON('package.json'),

		// Task für die Sitemap
		exec: {
			get_grunt_sitemap: {
				// Hier den Pfad zur Sitemap anpassen.
				command: 'curl --silent --output sitemap.json http://wohinauchimmer/wordpress/uncss/?show_sitemap'
			}
		},

		// Konfiguration von UnCSS
		uncss: {
			dist: {
				options: {
					//Hier ggfls. noch weitere Selektoren eintragen, die ignoriert werden sollen.
					ignore       : [/expanded/,/js/,/wp-/,/align/,/admin-bar/],
					// Hier den Link zur originalen CSS-Datei eintragen.
					stylesheets  : ['style-original.css'],
					// Hier die Links zu den CSS-Dateien eintragen, die generell ignoriert werden sollen.
					ignoreSheets : [/fonts.googleapis/],
					// Hier nichts verändern oder eintragen!
					urls         : []
				},
				files: {
					// Hier den gewünschten Pfad und Namen der erzeugten CSS-Datei eintragen.
					'style-uncss.css': ['**/*.php']
				}
			}
		}
	});

	// Hier werden die Plugins geladen. Nichts verändern!
	require('load-grunt-tasks')(grunt);

	// Hier werden die Tasks registriert. Nichts verändern!
	grunt.registerTask('load_sitemap_json', function() {
		var sitemap_urls = grunt.file.readJSON('./sitemap.json');
		grunt.config.set('uncss.dist.options.urls', sitemap_urls);
	});
	grunt.registerTask('uncss_style', [
		'exec:get_grunt_sitemap',
		'load_sitemap_json',
		'uncss:dist'
	]);
}

4. Grunt Task starten – UnCSS-isierte Datei erzeugen

Terminal öffnen, zum Projekt-Verzeichnis wechseln und den Grunt Task starten:
grunt uncss_style

grunt-uncss-terminal

Terminalausgabe des uncss-Task

Und …schwupp… haben wir eine “UnCSS-isierte” CSS-Datei erzeugt, die wirklich nur die Styles enthält, die benötigt werden. Je nach Größe der Website kann das Generieren der uncss-Datei einige Zeit dauern. Es empfiehlt sich daher, diesen Task nicht mit watch bzw. Livereload zu verbinden.

Risiken und Nebenwirkungen

Mit UnCSS wird der IST-Zustand einer Seite ausgewertet. Dieser Zustand ändert sich sobald etwas am Theme oder am Inhalt geändert wird. Darum muss das Layout immer überprüft werden bzw. man sollte von Zeit zu Zeit den UnCSS-Task ausführen, damit neu hinzu gekommene Selektoren beachtet bzw. die Styles von weggefallenen Selektoren entfernt werden.

Es versteht sich, dass Ihr UnCSS sowieso erstmal bei einem Testprojekt ausprobiert. Außerdem solltt Ihr nach jedem uncss-Task gründlich prüfen, ob nicht vielleicht irgendwo zu viel Styles weggenommen wurden. UnCSS soll mit komplexen Selektoren nicht arbeiten.

Ich verwende UnCSS bei meinen neuen Themes und es kommt nur sehr selten vor, dass mal irgendwo ein Style zu viel fehlt. Das lässt sich dann aber sehr leicht mit der “ignore”-Option (siehe oben im Code) fixen. Einfach den betreffenden Selektor eintragen. Und den Task neu starten. Dann wird der Selektor nicht mehr entfernt.

Quellen und Dank

Ohne diese Entwickler und Tools wäre UnCSS für uns nicht möglich:

Das wichtigste Tool für uns ist UnCSS von Giacomo Martino. Damit werden die überflüssigen CSS-Codes gefunden und eleminiert.

Das wir UnCSS komfortabel in Grunt anwenden können, haben wir Addy Osmani mit seinem Grunt Task grunt-uncss zu verdanken.

Und last not least das WordPress-spezifische Know-how für diese Methode stammt aus dem Beitrag von Liam GladdyUsing UnCSS and grunt-uncss with WordPress Liam zeigt dort, wie man UnCSS für WordPress Websites anwendet. Und von ihm ist auch das Sitemap-Plugin, welches wir für den Grunt Task brauchen.

 

WordPress Meetup Potsdam: Un-Vortrag zu Performance

Am 24. Juni war wieder WordPress Meetup in Potsdam. Und ich hatte einen kleinen “Un-Vortrag” zum Thema Performace gehalten. Dabei hatte ich versucht zu erklären, was eine Website schnell macht und wie man das mit WordPress hin bekommt.

tl;dr Die Slides gibt es bei GitHub

“Performance is a feature.”

google-performance-is-a-feature

Screenshot von Web Fundamentals

Meine Motivation für diesen Vortrag war/ist, das Thema Performance bei Entwicklern, Anwendern und v.a. Entscheidern anzubringen. Allgemein versteht und bejaht jeder die Nützlichkeit von performanten Websites. Aber mit der Umsetzung scheitert es dann zu oft in der Praxis. Das kenne ich aus eigenen Projekten zur genüge. Und selbst diese meine eigene Website hat noch Optimierungspotential. Naja, Schusters Kinder… ;-) Die Auftraggeber haben zwar einen Etat für einen Relaunch mit Kommunikation, Grafik und Programmierung. Aber Performance-Optimierung ist eher keine Position. Das wird immer irgendwie impliziert. Am Ende findet keine explizite Performance-Optimierung statt. Wenn sie nicht vorhanden ist, macht das auch nichts. Denn im Büro mit sattem DSL ist Performance eher kein Thema. Aber wehe, wenn man mal versucht irgendwo in einer “Mobilfunk-Wüste” (oder einfach nur am nächsten Bahnhof) mit sehr wackeliger und dünner Internetverbindung eine 10MB große Website aufzurufen. Das wird eine schöne Übung in Geduld.

Warum performante Websites wichtig sind

Passender Weise hatte ich just ein paar Tage vor dem Vortrag ein einschlägiges Erlebnis zum Thema Performance gemacht: Auf der Suche nach einer Steuerberatung für mich hatte ich gegooglet. Und problemlos etliche Suchergebnisse mit Steuerberatungskanzleien aus dem Prenzlauer Berg erhalten. Die drei bestplatziertesten Ergebnisse hatte ich angeklickt.

625px-Grapevinesnail_01

Manche Websites sind lahm wie eine Schnecke :-) (Bildquelle: von Jürgen Schoner [GFDL oder CC-BY-SA-3.0], via Wikimedia Commons)

Leider war eine Seite davon so langsam beim Laden, dass ich sie – nach dem ich die anderen beiden Seiten kurz gecheckt hatte – ungelesen wieder geschlossen hatte. Diese Steuerberatung hatte – nur weil Ihre Website so lahm unperformant war – einen potentiellen Mandanten verloren. So spielt das Leben… Aber davon mal abgesehen, ist für mich natürlich der Erfahrungsaustausch mit anderen Entwicklern und Anwendern sehr wichtig. Nur so kann ich meine WP-Fähigkeiten verbessern. Mein Un-Vortrag hatte drei Teile:

  1. Performance
  2. Methoden
  3. WordPress

Ich versuche mal, das wichtigste stichpunktartig festzuhalten.

1. Performance

Hier geht es darum, was Performance in Bezug auf (WordPress-)Websites bedeutet.

Speeeeed

Letztendlich bedeutet Performance bei Websites Geschwindigkeit. Je schneller eine Website ist, desto performanter / besser ist sie. Die Hauptfaktoren dabei sind die Übertragungszeiten (Latenz) vom Server zum Client und die Umsetzungszeit (Rendering) im Browser.

UX

Die Nutzererfahrung wird durch die Performance maßgeblich bestimmt. Wie in meinem obigen Erlebnis sicherlich gut nachzuvollziehen. Führt eine langsame Seite zu hohen Absprungraten.

Google-SEO

Last not least ist die Performance (schon seit Anfang 2010!) ein Ranking-Faktor bei den Google-Suchergebnissen.

2. Methoden

Welche Methoden zur Performance-Steigerung bieten sich an.

Rendering optimieren

Hauptsächlich das Rendering Blocking von CSS und Javascript muss geschickt umgangen bzw. vermindert werden:

  • CSS im Header als erstes einbinden
  • JS möglichst am Ende des Footers einbinden und asynchron laden
  • Kleine CSS- und JS-Schnipsel als inline-Code
  • (HIntergrund-)Bilder als Inline-Grafiken oder Sprites

Komprimieren/Minifizieren

Wichtigstes Mittel der Wahl ist natürlich die gzip-Komprimierung. Damit verringert man die Dateigrößen von Dokument, CSS und JS um 50 bis 70%! Beim Minifizieren werden unnötige Leerzeichen, Zeilenumbrüche und Tabs aus dem Code entfernt. Auch Kürzen von z.B. Variablennamen bringt was ein. (uglify)

Kombinieren

Beim Kombinieren geht es v.a. darum, die verschiedenen Script- und Stylesheet-Dateien in jeweils eine Datei zu vereinen. Aber auch mit Bildern geht einiges (siehe Rendering). Das spart Latenz in Form von weniger http-requests.

Caching

Das Vorhalten von Seiten kann auf verschiedenen Weisen erfolgen. Entweder werden statische Dateien der Seiten angelegt oder Datenbankabrufe gespeichert. Manchmal wird erst ein Cache angelegt, wenn jemand zuerst die Seite aufruft und manchmal werden schon vorab Caches angelegt (Priming). Beim Caching ist es wichtig, dass man den richtigen Zeitraum bestimmt, wie lange gecacht werden soll.

usw.usf…. Es gab einige Methoden, auf die ich aus Zeitgründen nicht eingegangen bin. z.B. Bild-Optimierung

3. WordPress

Bisher war der Vortrag eher Theorie-lastig. Aber ohne geht es leider nicht. Im letzen Teil war nun wichtig: Wie kann man das vorher genannte einfach umsetzen?

Wegen der Pragmatik hatte ich mich v.a. auf Pugins bezogen. Die kann man einfach installieren und – meist – optimieren sie schon “out of the box”. Wer allerdings das Letzte aus seiner Seite herausholen möchte, kommt nicht umhin auch mal in der .htaccess zu schreiben oder die Server-Konfiguation aufzupeppen.

Empfehlenswerte Plugins

Caching: W3 Total Cache*, WP Super Cache, Cachify
Kombinieren, Komprimieren: wpCompressor (Ist schon etwas alt, tut aber bisher immer noch seinen Dienst) ,JS & CSS Script Optimizer
Bilder: WP Smush.it

*Dieses Plugin ist zwar sehr mächtig, aber eher für die angebracht, die sich mit Performace Optimierung gut auskennen. Für alle anderen empfehle ich Cachify!

Empfehlenswerte Online-Dienste

Bideroptimierung: Kraken.io (wie Smush.it), TinyPNG
Inline Bilder: Base64 Image Converter

Für den “normalen Hausgebrauch” ist man damit schon bestens ausgerüstet. Falls ich aber dennoch etwas essentielles Übersehen haben sollte, würde ich mich über Eure Ergänzungen freuen! :-)

Slides Download

Die Slides habe ich auf GitHub abgelegt. Sie sind allerdings noch spärlicher als mein Artikel hier. Es war keine Zeit…. ;-)

https://github.com/HeikoMamerow/wpdm_2014-06-24_unvortrag_performance

WordPress: Frusti, machs gut!

Es ist 0:38 Uhr und ich habe mir soeben alle Blog-Artikel mit samt den Kommentaren und Threads auf Twitter und Google+ zu Caspars Community-Beitrag durchgelesenen. Wirklich alle und gründlich. Es hat sich sehr viel Lesestoff angesammelt. Obwohl der Betrag keine zwölf Stunden draußen war. Also scheint die Community doch nicht ganz so passiv und mitnahmeorientiert zu sein wie vermutet. Puh, Glück gehabt! ;-)

Was mir besonders gut gefällt ist, dass oft von “Nehmen und Geben” die Rede ist. Das ist sehr tugendhaft und trifft auch meine Intention, wieso ich mich wenigstens um ein klein wenig Aktivismus bei WordPress bemühe. Allerdings scheint mir das allgemeine Verständnis vom “Nehmen und Geben” irreführend zu sein. Ich gebe etwas, also habe ich irgendwie auch ein Recht darauf etwas zu bekommen. So scheint der Konsens zu sein. Aber auch: Wenn ich immer etwas gebe, aber nie etwas zurück bekomme, dann werde ich eben frustig. Ihr seit schuld!

Oh nein mein Lieber/meine Liebe, denke nicht so! Solche Gedanken werden Dir nicht helfen. Sie werden Dir nur Schaden bringen. Sie machen Dich – über Kurz oder Lang – zum Frusti! 

feelingb

Was erwartest Du eigentlich?

Niemand hat ein Recht auf irgendwas. Man nimmt sich höchstens ein Recht heraus. Der ganze Frust, den ich bei einigen heraus lese, ist nicht darin begründet, dass andere (in diesem Fall die deutsche WP-Community) nicht so sind, wie man es gerne hätte.

Wenn man z.B. jahrein-jahraus an einem Plugin arbeitet. Es ständig den neuen WP-Versionen anpasst und weiter entwickelt. Aber der einzige “Lohn” sind nörgelnde Anwender im Forum. Dann mag das frustrieren. Aber nur deshalb, weil man erwartet hat, dass man – und sei es auch noch so gering – positive Resonanz erfährt. Das Ego will gefüttert sein….

Enttäuschung führt zu Lustlosigkeit führt zu Frustration führt zu Wut führt zu… Das alles führt dazu, dass man sich schlecht fühlt und unglücklich ist. Unglück entsteht aus nicht erfüllten Wünschen bzw. Vorstellungen. Jedesmal wenn das Leben eine Wendung nimmt, die wir uns nicht wünschen, dann entstehen solche leidvollen Zustände. Je mehr man an seinen Wünschen festhält, desto stärker wirken sie.

Mein Rat ist der, sich gründlich über seine Wünsche bzw. Erwartungen klar zu werden: Was will ich eigentlich? Warum tu ich das? Was erwarte ich? Das ist ein bittere Pille. Denn wer möchte schon zugeben, dass man nur aus selbstwertschätzender Motivation heraus agiert. Dass man Anerkennung haben möchte, einen guten Ruf oder auch Karriere, Geld….

Sich ehrlich über seine Motivation, Wünsche klar zu werden, ist der erste Schritt zur Selbstbestimmung. Leg los!

Frusti, machs gut!

Du sitzt da so allein auf deinem Stuhl
Und schenkst dir einen ein.

Mensch frusti machs gut!

Immer noch sitzt du allein
Auf deinem kleinen kühlen Stein.
Und du denkst über vergangene Zeiten nach
Und du denkst wie es kommen sollte,
Und wie es nicht kam
Das kotzt dich alles so urst an.
Und du denkst was solls
Da trink ich doch noch einen.

Mensch frusti machs gut

Du bist ein cooler Typ
Und ansonsten bist du auch ganz ok
…Aber manchmal…
…Manchmal…
…Da hast du einfach nicht alle machs.

Text von hier.

PS: Jetzt ist es 4:04 Uhr und ich hab den Artikel endlich fertig. Warum mach ich das eigentlich? Was erwarte ich?? ;-)

WP-Plugin-Tipp: Tippspiele für die Fußball-Weltmeisterschaft 2014

Die Fußball-Weltmeisterschaft 2014 steht vor der Tür und es mehren sich Anfragen nach einem geeignetem WM-Tippspiel-Plugin für WordPress. Ich habe darum nach Tippspiel-Plugins im WordPress-Repository gesucht und drei Plugins ausgewählt, die mir auf den ersten Blick für die kommende WM am passendsten erschienen.

Kriterien

Meine wichtigsten Entscheidungskriterien waren:

  1. Fertige Datensätze
    Die Tippspiele sollen “WM2014-ready” sein. Also alle Basisdaten (Manschaften, Spielernamen, Termine usw.) für die kommende WM mitbringen. Denn das nachträgliche Einrichten und Einpflegen der Daten nimmt erfahrungsgemäß sehr viel Zeit in Anspruch.
  2. Sprachunterstützung
    Weil die Zielgruppen meiner Kunden meist deutschsprachig sind, muss ergo mindestens das Frontend auch in deutscher Sprache sein.
  3. Administration
    Einfache Administation der Basisdaten, Tipps, und Benutzer
  4. Einbindung
    Einbindung von Spielständen, Ergebnislisten etc. soll als Shortcode oder Widget möglich sein.
  5. Quizfragen, Preisausschreiben
    Tippspiele werden gerne mit Preisen verbunden. Dass soll sich einfach umsetzen lassen.

Diese Plugins habe ich auf einer lokalen WP-Testinstallation gespielt und verglichen:

World Cup Predictor

Screenshot: Spielübersicht

Screenshot: Spielübersicht

Der Name ist Programm. Dieses Plugin ist im Vergleich zu den anderen am engsten auf die Bedürfnisse eines WM-Tippspiels zugeschnitten und lässt sich – selbst für einen Fußball-Dau wie mich – intuitiv verstehen. Hiermit konnte ich am schnellsten ein fertiges WM-Tippspiel erstellen.

Plugin-Seite: https://wordpress.org/plugins/world-cup-predictor/

Football Pool

Screenshot: Spielplan

Screenshot: Spielplan

Das ist wohl die “Eierlegende Wollmilchsau” unter den Tippspiel-Plugins. Hiermit kann man viel mehr Tippspiele anbieten als “nur” zur Fußball-Weltmeisterschaft. Es ist möglich, das Plugin für andere Sportarten oder Meisterschaften anzupassen. Diese Plugin kann ich allen empfehlen, die öfter mal ein Tippspiel auf ihren Websites anbieten möchten.

Plugin-Seite: https://wordpress.org/plugins/football-pool/

wp-championship

Screenshot: Tippspiel

Screenshot: Tippspielübersicht

Das Plugin tut was es soll. Aber unglücklich gelöst finde ich den etwas umständlichen Import der Basisdaten. Die Daten müssen nämlich direkt in der Datenbank hochgeladen werden. Dieser Weg dürfte die meisten Anwender abschrecken. Denn welcher “normalsterbliche” WP-Anwender hat schon mal eine Datenbank administriert? Aber so schlimm ist es nun auch wieder nicht. Mit dem hervorragenden Datenbankverwaltungs-Plugin Adminer von Frank Bültge schafft sogar jeder “Nicht-Techie” den Import.

Plugin-Seite: https://wordpress.org/plugins/wp-championship/

Fazit

Alle oben genannten Plugins haben die von mir gewünschten Kriterien erfüllt. Für mich hat World Cup Predictor das Rennen gemacht, weil es am engsten auf die WM zugeschnitten ist. Die anderen Plugins kann man nämlich auch für andere Meisterschaften/Turniere und z.T. sogar für andere Sportarten nehmen. Das macht die Verwaltung allerdings etwas komplexer und erfordert viel mehr Zeit zum Einarbeiten.

CMS-Garden: Meine drei tollen Tage auf der CeBIT

Diese Woche war sehr aufregend und ereignisreich für mich. Ich hatte mir nämlich ein paar freie Tage genehmigt und war von Montag bis Mittwoch zur CeBIT nach Hannover gefahren, um wieder etwas beim CMS-Garden mitzuhelfen.

CMS-Garden

CMS-Garden ist ein gemeinschaftlicher Messestand von verschiedenen Open-Source Content-Management-Systemen (CMS). Ziel des Gartens ist, den Leuten die enormen Fähigkeiten von Open Source CMSen zu zeigen und Entscheidungshilfe bei der Auswahl für ein bestimmtes CMS zu geben.

cms-garden21014-0

Der Stand mit den Terminals.

Der CMSGarden wurde von ehrenamtlichen OpenSource-Enthusiasten aus den jeweiligen CMS-Communitys konzeptioniert, organisiert und durchgeführt. Da steckt sehr viel Herzblut drin aber auch sehr viel Professionalität. Die meisten Betreuer auf der CeBIT waren Entwickler, die ihr CMS sehr gut kannten und sehr gut aus dem eigenen “Nähkästchen” plaudern konnten.

Unser Publikum am Stand war dafür bunt gemischt. Es kamen sehr viele IT-Entscheider und CMS-Anwender, mit konkreten Fragen zu bestehenden und anstehenden Projekten. Außerdem kamen Schüler, Azubis und Studenten da, die sich freiwillig((!!!) im Rahmen ihres Studiums bzw. Ihrer Ausbildung auf der Messe informiert haben. Zwei Schüler mit denen ich zu tun hatte, kamen sogar über 400km aus Österreich angereist. Viel Spaß hatte ich auch mit ein paar Interessenten, die mit Ihren Laptop vorbei kamen sind um sich vor Ort ein Problem mit der WordPress-Installation bzw. -Plugin beheben zu lassen.

Der Stand

Unser Messestand bestand im Prinzip aus drei Bereichen: Ein Bereich war zum “Anlocken”. Dort lagen die sogenannten Gartenfibeln aus. Ein praktisches Büchlein in dem alle CMS ausführlich vorgestellt wurden und wichtige Themen wie OpenSource, Lizenzierung usw abgehandelt sind. Wenn die Messebesucher sich für die Fibeln interessiert haben, wurden sie von uns angesprochen, ob man Ihnen helfen können. Meist wollten Sie erstmal wissen, was CMS-Garden eigentich ist. Die meisten dachten, wir wären irgend so eine Firma, die etwas zu verkaufen hätte. Entsprechend erstaunt reagierten alle, dass wir wirklich nur helfen wollen.

Der zweite Bereich waren kleine Terminas. Für jedes CMS gab es ein Terminal mit einem virtuelem Host und Internetanschluss. Wen die Leute spezielle Frgen hatten, konnten wir ihnen direkt am CMS eine Lösung zeigen.

Der dritte Bereich war eine kleine Präsentationsfläche, wo von Zeit zu Zeit Präsentationen für CMSe gemacht wurden.

Reich

Die größte Bereicherung für mich war das Kennenlernen von vielen interessanten Menschen. Ganz besonder gefreut habe ich mich, über den persönlichen Kontakt zu meinen “Standkollegen” Jan ReimersFrank Staude und Sven Wagener.

cms-garden21014-3

Frank, Jan und Jens bei der “Lagebesprechung” am ersten Tag

Die sehe ich sicherlich bald in Hamburg wieder… :-)

WP-Trick: Maximale Dateigröße für Upload bei Medien überlisten

Wenn man größere Medien-Dateien – z.B. Videos – in WordPress hochladen möchte, kann es passieren, dass das nicht klappt, weil die Dateien größer sind als die maximal erlaubte Dateigröße. Dann bricht WordPress den Upload mit einer Fehlermeldung ab:

WordPress: max Upload überschritten

Das ist kein Fehler von WordPress – sondern eine Begrenzung des Web-Servers. Das Problem ließe sich am einfachsten lösen, wenn man die entsprechende Serverkonfiguration ändert. Diese Möglichkeit ist meist bei knapp bemessenen Webspace-Angeboten nicht gegeben. Es gibt aber einen einfachen Trick, wie man trotzdem große Dateien in WordPress bekommt: über den Upload mit FTP und mit Hilfe eines Plugins. Und zwar wie folgt:

1. Upload der großen Datei mit FTP

Man lädt die gewünschte Datei mit einem FTP-Programm (z.B. Filezilla) auf seinen Webspace. Am besten in das Upload-Verzeichnis. Dort liegen ja auch die anderen Medien:
…wp-content/uploads

2. Einbinden der Datei in das Media-Verzeichnis

Die neue Datei liegt jetzt zwar schon auf dem Web-Server. Aber WordPress “weiß” noch nichts von ihrer Existenz. Wenn man jetzt im Admin-Bereich unter “Media” nachschauen würde, wäre die Datei dort noch nicht aufgeführt. Damit sie das wird, braucht man ein spezielles Plugin: Add From Server.

Wenn dieses Plugin installiert ist, hat man im Admin-Bereich bei “Media” einen neuen Unterpunkt: “Add From Server”. Dort klickt man drauf und erhält eine Dateiliste.

Hier sucht man sich nun die gewünschte Datei raus, setzt das Häkchen und klickt zu guter Letzt unten auf den Schaltknopf “Importiere”.

Fertig! Die neue Medien-Datei ist nun WordPress bekannt und kann wie gewohnt z.B. mit dem Text-Editor verwendet werden.

WPR.FM • WordPress Radio

Es gibt jetzt tatsächlich ein Internetradio für WordPress:

wpr-templogod

Das ist ein “24/7 WordPress Audio Content Stream” mit Themen Rund um WordPress. Leider gibt es auf der Website noch keine Infos über das Radio und die Macher. Aber den Stream habe ich mir soeben in meinem Player gespeichert und lass ihn den ganzen Tag laufen… Bin gespannt, was da kommt!

Hier geht es zur Website von WordPress Radio: http://wpr.fm

PS: Danke an Sergej Müller für diesen Tipp! :-)

“WordPressen” mit Oscar Peterson

Die aktuelle Version von WordPress hat die Nummer 3.6 und ist bereits am 1. August erschienen. Diese Version nennt sich “Oscar“. Jede WordPress-Version ist einem berühmten Jazz-Musiker gewidmet. Diesmal in Erinnerung an den Pianisten Oscar Peterson.

Oscar Peterson
image-8553

Bildquelle: Wikipedia (weitere Infos im Link)

Weil ich gerne neben der Arbeit etwas Musik höre, läuft bei mir heute den ganzen Tag Oscar Peterson. Hier meine aktuelle Playlist: (wird im Laufe des Tages aktualisiert…)

Wegen Radfahren vorübergehend geschlossen

Vom 20. – 23. Juni…

wegen-radfahren-voruebergehend-geschlossen

Mein Sohn und ich fahren mit dem Rennrad (+Anhänger) von Berlin nach Waren (Müritz). Wir haben sogar ein kleines Reiseblog dazu eröffnet. In den nächsten Tagen gibt es dort mehr zu sehen: http://wegen-radfahren-voruebergehend-geschlossen.heikomamerow.de/

Update: Das Rad-Blog habe ich geschlossen, weil mir Radfahren viel mehr Spaß macht als bloggen…. ;-)