Howdy lieber WordPress-Entwickler!

Es beginnt der neue Monat und es gibt viel zu berichten. Unter Fundus erkläre ich dann auch, wer oder was „nooper“ bedeutet. Legen wir los!

1. WordPress Entwickler-News

1.1. WordPress-Kurz-Updates

Mitte August erschien WordPress in der Version 4.6. Was es – aus technischer Sicht – Neues gab, habe ich im letzten Newsletter zusammengefasst. Gleich darauf wurde ein ziemlich doofer Fehler entdeckt: Entfernt man im Texteditor ein Zeichen, springt die Scrolling-Position nach oben. Das wird hoffentlich bald gefixt.


Startschuss für WordPress 4.7. Nun stellen wir uns natürlich die Frage: was wird es in 4.7 Neues geben? Dazu gab es eine Umfrage von Helen Hou-Sandi, Release-Leaderin der nächsten Version. Folgendes ist im Gespräch (alles engl.):

  • ein neues Default-Theme (TwentySeventeen);
  • Alle REST-API Endpunkte in den Core (wir berichteten darüber, dass Matt Mullenweg ein Machtwort gesprochen hat und deshalb die Endpunkte nicht schon früher übernommen wurden);
  • bessere Medien-Organisation (darauf warten wir schon lange);
  • bessere Benutzererfahrung bei der Installation von Themes
  • und bessere Benutzerfreundlichkeit beim Customizer.

Am kommenden Wochenende (2. und 3. September) findet das WordCamp in Frankfurt statt. Es gibt noch ein paar Tickets. Wer Lust und Zeit hat, der soll hinfahren. Wir sind natürlich auch mit dabei.


Auch hinsichtlich der Programmierung tut sich einiges. Wer als Programmierer mit WordPress schon einmal gearbeitet hat, weiß, dass nicht alles optimal gelöst ist. Zum Beispiel kann die Verwendung von so vielen globalen Variablen (wie $wpdb oder $post) einem neuen Entwickler schon einmal den Kopf verdrehen. Nun gibt es einen Änderungsvorschlag zur Nutzung einer so genannten Registry anstatt der globalen Variablen (engl.).


Nächstes Thema: Autoloading in WordPress. Auch dafür gibt es einen Änderungsvorschlag im Trac (engl.).


Achja. Und weil wir gerade dabei sind. Auch Konstanten finden in WordPress zuhauf Anwendung. Ein gutes Beispiel ist die DOING_AJAX Konstante. Anstatt

$doing_ajax = defined( 'DOING_AJAX' ) && DOING_AJAX;

können wir hoffentlich bald

$doing_ajax = wp_doing_ajax();

nutzen. Das sagt zumindest dieser Changeset (engl.).


Zwar etwas versteckt aber dennoch brauchbar: Seit WordPress 4.6 gibt es nun auch die Funktionen do_action_deprecated() zbd apply_filters_deprecated(). Damit haben Entwickler nun die Möglichkeit, Hooks als „veraltet“ zu markieren und diese dann in einer späteren Version komplett zu entfernen.


Wer nutzt Post-Formate eigentlich überhaupt? Matt Cromwell hat sich mal Gedanken dazu gemacht und möchte die Post-Formate als Tabs oben (anstatt rechts) anzeigen (engl.). Ob sie dadurch öfter genutzt werden?


Ist WordPress ein Framework? Nein. Ist es erst einmal nicht, sagt Tom McFarlin. Zuerst einmal war es eine Blogging-App. Nun ist es ein CMS-System. Und mit der REST-API wird es zu einer so genannten „Foundation“. Also eine Applikation auf die man andere Applikationen aufbauen kann.


Obwohl sich viel tut geht einigen wohl die Entwicklung von WordPress nicht schnell genug. „Neben den Verbesserungen bei der Plugin- und Theme-Verwaltung ist nichts dabei, was mich sonderlich begeistert“, sagt Jeff Chandler von WPTavern (engl.).


„Hören Sie endlich auf, den Admin-Bereich zu ruinieren“, so der Aufruf von DigWP (engl.). Grund ist die immer noch bestehende Diskussion, wie manche Plugin- und Theme-Entwickler Popups oder Meldungen anzeigen, die eigentlich keiner haben will und die man oft auch nicht mehr wegklicken kann. Für den Kunden selbstverständlich nervig.

Passend dazu: ein kleines Framework hilft Entwicklern nun, schöne Admin-Notices zu erstellen, die sich auch wieder wegklicken lassen.


JetPack hat in Version 4.2 an Performance zugelegt (engl). 69% aller Datenbank-Abfragen im Frontend wurden – soweit ich das verstanden habe – komplett entfernt. 49% sind es im Backend. 20% Speicher soll es im Schnitt weniger verbrauchen. In der Version 4.3 wurde es gar so umgeschrieben, dass der Großteil nun aus Ract.js besteht (siehe News weiter unten).


Die Suchanfragen bezüglich „WordPress“ fallen weiter (engl.). Wie lässt sich das erklären? Ganz einfach: Viele Leute kennen WordPress bereits und suchen halt nicht direkt danach sondern nach anderen, zusammenhängenden Dingen, wie z.B. spezielle Plugins. Deshalb steigen auch weiterhin die Suchanfragen nach WordPress Programmierern. Das meint zumindest Mario-Peshev auf Quora.


Durch ein neues WP-CLI-Kommando kann man sich ganz einfach als anderen Benutzer in WordPress anmelden ohne das Passwort zu benutzen. Dieses animierte GIF zeigt, wie’s funktioniert.

1.2. WordPress lernen

Wer als Frontend-Developer loslegen will ist bei Looks Awesome richtig: Die Anatomie von einem WordPress-Theme wurde hier erklärt (engl.).


24 Stunden über WordPress plaudern. Das war WordSesh 2016. Alle Videos können jetzt noch einmal bei Crowdcast angesehen werden (alle engl.). Laut WP-Tavern sind folgende Videos interessant:


„Eine Zeile Code reicht aus, um den direkten Zugriff auf Plugins von außen zu sperren“, sagt ebenfalls McFarlin (engl.). So sieht’s aus:

// If this file is called directly, abort.
if ( ! defined( 'WPINC' ) ) {
	 die;
}

Was ist der Unterschied zwischen Klassen und Objekten? Wer gerade in die Entwicklung einsteigt ist hier sicherlich richtig (engl.).


Zu wenig genutzt: der WordPress Object-Cache (engl.). Per Standard gibt nur die Option, Inhalte über einen Seitenaufruf hinweg zu speichern. Mit Memcached oder Redis lassen sich Dinge, die mehr Rechenzeit brauchen jedoch auch über einen längeren Zeitraum bereithalten. Tom McFarlin beschreibt dies mal genauer.

Dazu passend: Bitte keine Sekunden-Timestamps als Cache-Key benutzen. Warum und wieso, dürfte wohl klar sein 😉


 

Facebooks Instant-Articles ist die direkte Konkurrenz von Google AMP. Aber wie funktioniert’s und wie lässt es sich nutzen? Dazu gibt es einen sehr ausführlichen Blogpost von Bufferapp (engl.).


Schonmal Interesse daran gehabt, Docker zur lokalen WordPress-Entwicklung zu nutzen? Eine erste Starthilfe gibt Torque im Blog (engl.).


Eine neue Artikelserie von Torque widmet sich der Plugin-Erstellung (engl.).


Was sind WordPress Hooks eigentlich? Eine Beschreibung von Tom McFarlin (engl.).


Ein Plugin zu schreiben ist aber nur die halbe Miete. Das Marketing von Produkten ist halt das andere. Und noch viel härter als das Coden an sich, sagt Chris Lema (engl.).


Passend dazu: 5 Gründe warum man ein Plugin-Business starten sollte (engl.).


Und passend wiederum dazu: Heute noch in’s WordPress-Theme Business einsteigen? Wohl ein hartes Stück Arbeit. Trotzdem möglich, wenn man genügend heraussticht. Und das hat nicht immer mit dem Preis zu tun. Ein Interview auf MattReport mit Mike McAlister (engl.).

1.3. React.js und REST-API

JavaScript-Frameworks sind nach wie vor ein Thema. Deswegen hat dieser Topic wieder einige Blogposts im letzten Monat zutage gebracht. Sacha Greif hat bei Medium mal ein paar Zahlen zur Nutzung JS-Frameworks veröffentlicht. Demnach wollen 74% React lernen. 92% würden weiterhin damit arbeiten. Das spürt man, denn Automattic hat das populäre Plugin Jetpack wohl so umgeschrieben, dass es nun zum großen Teil aus React.js besteht.


In der mittlerweile 6-teiligen Serie über die REST-API hat sich Torque mal genauer angeschaut, wie sich die REST-API mit Drittanbieter-APIs verbinden lässt (engl).


Wie man eigene REST-Routen erstellt, war ebenfalls ein Thema bei Torque im vergangenen Monat (engl). Dabei wird gezeigt wie das mit Objekt orientiertem PHP funktioniert.


Im Schnitt ist die REST-API 15% schneller als die admin-ajax.php. Das hat jemand bei DeliciousBrains herausgefunden (engl.).


Wie man ein WordPress-Plugin für eine React.js-App schreibt, zeigt WPShout mit Codebeispielen (engl.). Auch Igor Benic hat dazu was geschrieben (engl.).


Josh Pollock bietet einen neuen Kurs an: natürlich über die REST-API. (engl.)


Europas größte WordPress-Agentur inpsyde hat ein REST-API Starter-Paket auf Github geschnürt.

1.4. Über den Tellerrand: WordPress Konkurrenz

Static Site-Generatoren sind in aller Munde. Können sie Systeme wie WordPress, Joomla oder Drupal ablösen? PostStatus hat sich das mal gefragt (engl.).


Lassen sich Static-Site-Generators skalieren? Stefan Baumgartner hat bei einem Projekt einiges gelernt und teilt seine Erkenntnisse bei SmashingMagazine (engl.).


Nicht wirklich „statisch“ aber auch ein neuer Konkurrent zu WordPress: Postleaf. Arbeitet auch – fast altmodisch – mit PHP und MySQL.

2. Tools- und App-News

Ab Version 53 wird Google Chrome alle Flash-Inhalte standardmäßig blockieren (engl.). Ja. Google hat die Macht dazu. Und wer braucht das wirklich noch? Zeit, dass die alten Flash-Inhalte jetzt verschwinden und dem neuen HTML5 weichen.


Kaum zu glauben aber mittlerweile gibt es mehrere Page-Builder. KingComposer hat neun von ihnen vorgestellt. Darunter natürlich die Altbekannten wie z.B. der VisualComposer (engl.).


Auch das ist immer wieder ein Thema: wie lassen sich zwei (oder mehrere) WordPress-Seiten synchron halten? WPSiteSync ist ein neues Plugin welches genau das verspricht (engl.).


AdvancedCustomFields hat nun ein Klon-Feld (engl.).


PHPStorm erhielt ein Update auf Version 2016.2.1. Es gab mehrere Bugfixes. Das Autocomplete für stdClass-Objekte funktioniert z.B. wieder (engl.).

Schneller Coden: In SublimeText lassen sich Text-Schnipsel für die Wiederverwendung erzeugen. Wie das geht, steht in einem BlogPost von WebDevStudios (engl.).


Aber nicht nur PHPStorm und SublimeText sind gern gesehene Gäste auf Entwickler-Parties. Immer mehr Leute scheinen nun auch auf Atom umzusteigen und lassen Coda (welches schon seit gefühlt ewigen Zeiten kein Update mehr erhalten hat) hinter sich (engl.).

https://twitter.com/ellenbauer/status/768578413552472064

Passend dazu: Die interessantesten Atom-Pakete die Ben McCormick gefunden hat. Darunter z.B. ein Autocomplete-Paket (engl.).


Pressmatics 1.1.0 (ein MAMP-Konkurrent) ist raus. Man kann jetzt mit React.js und Node.js eigene Plugins dafür bauen und das Tool dadurch erweitern:

https://twitter.com/pressmaticwp/status/765970032333434880


Facebook hat eine neue API Version herausgebracht. Deswegen funktioniert auf vielen Seiten nun der Abruf von Sharing-Zahlen nicht mehr (engl.).


Ulysses (eine Markdown-App) kann nun auch zu WordPress hochladen.


Der Kunde hat mal wieder keinen blassen Schimmer, wenn man ihn fragt, welchen Browser und welche Version er nutzt? Warum nicht einfach auf SupportAlly weiterleiten?

3. Server/Hosting-News

Eine neue Sicherheitslücke namens HEIST zieht seine Kreise. Das verlinkte PDF bei T3N zeigt, wie Angriffe zwischen Mr. Sniffels mit Bugs Bunny stattfinden könnten. Zur Sicherheit sollte man Drittanbieter-Cookies deaktivieren.


Uberspace wurde leider angegriffen. Mit einer DDoS-Attake. Leider kann man da wenig machen. Zumindest über IPv6 waren die Seiten zumeist erreichbar.


Wobei wir bei IPv6 sind: 50% haben wir schon einmal. Zumindest im mobilen Bereich.


Das Team von DeliciousBrains arbeitet an einem Database-Merging-Tool namens Mergebot.


Debugging auf dem Live-System? Papertrail macht’s möglich, sagt ein Blogpost bei Torque (engl.). Benötigt wird ein Account sowie das WordPress-Plugin dazu.

4. Happy-Dev

„Nicht aufgeben!“ ist die Devise für Freelancer. Wie man ein schon tot-geglaubtes Plugin wieder auferstehen lässt, darüber hat Pippin geschrieben (engl.).


Wie wird Code in größeren Teams eigentlich getestet? Na, in dem die Leute einfach nochmal drüber schauen. Das wäre zumindest die erste Idee, schreibt Ben Lobaugh von WebDevStudios (engl.).


Bock auf ein Treffen mit anderen Entwicklern? PostStatus ruft den ersten „Publish“-Tag aus. Und zwar einen Tag vor dem WordCamp US (1. Dezember 2016). Grund ist, dass viele WordPress-Leute zwar auf WordCamps gehen, diese aber oft „im Flur stehen bleiben“. Sprich: sie hören sich die Tracks nicht an weil sie sich lieber untereinander austauschen. Konversationen außerhalb des WordCamps also. Einen Versuch ist es Wert.


Dazu passend und nicht in den USA: CodeTalks. Am 29. und 30. September gibt es Vorträge mit Live-Coding in Hamburg. Interessant z.B. der Vortrag zum Thema „Autoscaling WordPress mit Docker“.


Man muss nicht immer nur für Kunden arbeiten: Die Bundesregierung fördert bis zu 60 Open Source Software Projekte mit 1,2 Millionen Euro in maximal 30’000 Euro Paketen. Angesprochen werden ausschließlich Einzelkämpfer. Saugut. Haben Sie eine Idee? Dann sollten Sie sie auf der Website des Prototypefund einreichen.


Scheiße gelaufen! <– Ja, manchmal ist es eben so. Wir machen alle Fehler. Aber welche Fehler machen andere Freelancer eigentlich? Sechs Leute wurden von iThemes befragt (engl.).


Negative Schwingungen im Kundensupport. Auch blöd. Trotzdem muss man mit Hasskommentaren umgehen. Wie das gehen soll, steht bei HelpScout (engl.).


So viel Urlaub haben wie man will. Wie geht das? Alexis Crosswell erzählt wie Automattic das macht (engl.).


Sie verdienen zu wenig? Machen Sie’s wie D’nelle Dowis. Einfach mal 35% draufschlagen (engl.).


„Mach dich erstmal selbst glücklich“ lautete der Titel des Vortrags von Daniel Bachhuber auf dem WordCamp Europe. Ansehen lohnt sich (engl.).

5. Fundus

Schon gehört? Bald werden wir in CSS die Farben mit

rgb(0 255 0 / 50%)

und nicht mehr mit

rgba(0, 255, 0, 50%)

auszeichnen. Ist Ihnen der Unterschied aufgefallen? Die Kommas fehlen. Das hört sich erst einmal blöd an, wäre aber eigentlich richtig. Denn seit jeher werden einzelne Werte nur durch Leerzeichen getrennt. Kommas sind den Funktionen vorbehalten. Natürlich könnte man sich jetzt streiten: ist rgba() nicht auch eine Funktion? Die Erklärung kann man auf der Website von Tab Atkins Jr. nachlesen, der diesen Commit eingereicht hat (engl.).


Schonmal vom rel=“nooper“-Attribut gehört? Nein? Dann sollte man den Artikel von Mathias Bynens lesen, der herausgefunden hat, dass sich vorher geöffnete Browser-Fenster mit JavaScript ansprechen lassen (Achtung jetzt kommt’s) auch wenn diese nicht zur eigenen Domain gehören (Cross-Origin) und dieses entsprechende Attribut nicht vorhanden ist. Sprich: Webseiten von z.B. Twitter lassen sich verändern. Ein Sicherheitslücke also (engl.).


Was sind WebP-Dateien? Ein neues Bildformat welches im Schnitt 26% weniger Speicher im Vergleich zu PNGs und 25 bis 34% weniger Speicher als JPGs verbrauchen soll. Wie kann man WebP-Dateien in WordPress nutzen? Damit beschäftigte sich WPExplorer (engl.).


Haben Sie Zeit, am WP-Core zu arbeiten? Nein? Warum nicht? Das möchte Helen (WordPress 4.7 Release-Lead) gerne in einer Umfrage erfahren (engl.). Bitte teilnehmen, wenn’s geht. Danke.


Echt krasse Einsichten. WordFence zeigt in diesem Blogpost auf, wie Hacker WordPress-Seiten angreifen (engl.).

Dazu passend: Warum nicht die Hacker hacken? Sehr schöne Einblicke gibt’s bei ebenfalls bei WordFence. Es wird gezeigt wie detektivisch man dabei vorgehen muss (engl.).

Dazu passend: Das 404 to 301 Plugin kommt mit versteckten Cloaking-Funktionen. Unschön.


Sie sind ein Frontend-Entwickler und hören gerne Podcasts? Auf Medium hat Ronalds Vilcins seine Top Podcasts vorgestellt (engl.).


Sergej Müller – ein alter Hase in der WordPress Welt – hat sich seit 2015 zurückgezogen. Seine Hinterlassenschaft wurde vom Pluginkollektiv weitergeführt. Darunter namhafte Plugins wie Antispam Bee und Cachify. Das neue Team hinter den Plugins sucht nun Verstärkung. Haben Sie Zeit?


Die NASA beschreibt hier einmal genauer, warum sie eigentlich WordPress nutzen (engl.).


Die neuen .blog-Domains gehen am 21. November offiziell online. Einige der .blog-Domains sind aber schon freigeschaltet. So z.B. der design.blog der Stories rund um das Thema Design im Hause Automattic bereithält. Dazu gesellt sich jetzt auch der data.blog. Er soll Einsichten in das Daten-Team von Automattic geben (alle engl.).

That’s it!

Ihr Dipl. Ing. (FH) Florian Simeth