Archiv der Kategorie: Programmieren

Lokale HTTPS-Zertifikate mit mkcert

Bernhard hatte unsere Kollegen bei VCAT vor gut 2 Wochen auf einen Artikel bei Golem.de hingewiesen. Hier ging es darum, dass Filippo Valsorda – ein Verschlüsselungsexperte aus dem Google Go Team – ein kleines Werkzeug entwickelt hat, mit dem man eigene Zertifikate erstellen kann, um sichere HTTPS-Verbindungen in einer lokalen Entwicklungsumgebung zu nutzen.

Lokale HTTPS-Zertifikate mit mkcert weiterlesen

WP Wiki Tooltip – neue Version 1.9.0 verfügbar

Im vergangenen Jahr blieb leider nicht viel Zeit, an meinem WP Wiki Tooltip Plugin zu arbeiten. Nun konnte ich in der Weihnachtszeit ein paar Stunden abknapsen und schließlich in dieser Woche eine neue Version zur Verfügung stellen.

Ausschlag gebend für die neue Version waren drei Wünsche von verschiedenen Benutzern:

  1. Der älteste Wunsch wurde bereits vor über 10 Monaten geäußert: Ein Anwender wollten den Inhalt der Tooltips nicht direkt vom Anfang einer Wiki-Seite auslesen, sondern von einem der dort definierten Kapitel.
  2. Vor gut einem Monat meldete ein anderer Benutzer, dass die Tooltips nach dem Laden ihrer Inhalte irgendwie wackeln. Dem war tatsächlich überall so. Ich empfand es nicht als störend, wollte dem Thema aber auf den Grund gehen.
  3. Last but not least steht seit Dezember mit WordPress 5 und dem neuen Editor „Gutenberg“ ein neues maßgebliches Element zur Verfügung, dem sich auch mein Plugin annehmen muss.

Inhalt von Kapiteln

Die Anfrage von Thomas Bellis fand ich von Anfang an sehr reizvoll: Er wollte den Inhalt der Tooltips nicht nur vom Anfang einer Wiki-Seite auslesen lassen, sondern wahlweise auch ein bestimmtes Kapitel als Inhaltsquelle verwenden. Die Umsetzung war allerdings nicht so einfach. Glücklicher Weise bietet die Wiki-API die Möglichkeit, alle Kapitel einer Seite auszulesen und anschließend auch den Inhalt eines bestimmten Kapitels abzufragen. Lediglich die Fehlerbehandlung brauchte etwas mehr Aufwand und war Grund für einige neue Optionen in den Einstellungen des Plugins.

Wackeln nach dem Laden

Das komische Wackeln nach dem Laden der Inhalte in einem Tooltip entpuppte sich nicht als Fehler, sondern als Feature. Das Tooltipster-Plugin liefert zwei Eigenschaften, mit denen man die Animationen steuern kann,

  1. wenn ein Tooltip erscheint und wieder ausgeblendet wird, und
  2. wenn sich die Inhalte in einem Tooltip aktualisieren.

Die Animation nach dem Update der Inhalte hielt ich für wenig sinnvoll und habe sie standardmäßig deaktiviert. Die Animation beim Erscheinen und Ausblenden finde ich allerdings recht spannend, so dass diese nun in den Einstellungen gezielt festgelegt werden können – inkl. einer Preview für alle verfügbaren Effekte!

WP Wiki Tooltip und Gutenberg

Auch wenn die Einführung des neuen Editors schon lange angekündigt war, konnte ich mich noch nicht näher mit den Konsequenzen für mein Plugin auseinandersetzen. Mir war klar, dass der Shortcode mit seinen Attributen weiterhin funktionieren würde. Was aber mit dem Plugin für den Tiny MCE geschehen würde, blieb offen. Mittlerweile ist Gutenberg als Standardeditor eingeführt und wie zu erwarten war, steht das Plugin nicht mehr in den Standardelementen zur Verfügung.

Allerdings gibt es nun einen Block „Classic“, der alle bekannten Icons und Funktionen des ehemaligen Editors bereit hält. Und siehe da: Auch mein Plugin wird hier geladen und das gewohnt grüne Icon angezeigt! Aber ganz so einfach ist es natürlich nicht. Die Übersetzung aller Texte im Plugin wurde nicht mehr wie gewohnt unterstützt.

Neuer I18N Support für JavaScript

Nach einigen Stunden der Recherche fand ich heraus, dass mit Gutenberg auch eine neue Art der Internationalisierung und Lokalisierung für JavaScript veröffentlicht wurde. Diese habe ich nun auch implementiert. Es funktioniert auch fehlerfrei! Allerdings wird die Übersetzung noch nicht durchgereicht. Daher sind aktuell noch alle Texte im Plugin in English. Ich hoffe, hier kann ich bald mit einer Lösung aufwarten…

Fazit

Die neue Version steht seit dem 1. Januar 2019 im Repository und bei Github zur freien Verwendung zur Verfügung. Ich hoffe, dass ich für Gutenberg bald weitere Funktionen nachschieben kann und das nächste Update nicht wieder 10 Monate braucht 😉

Projekt Euler: 60 Probleme gelöst

Nun sind schon wieder über 20 Monate vergangen, dass ich wieder einmal über meinen Fortschritt beim Projekt Euler schreiben kann. Tatsächlich habe ich das letzte Problem bereits im Dezember 2016 gelöst. Es war die Nummer 59 und so habe ich insgesamt schon 60 der aktuell 625 verfügbaren Probleme bewältigt. Mittlerweile zeigt sich aber, dass das Lösen der Probleme gar nicht so sehr die Herausforderung ist. Vielmehr ist mein Anspruch, meine Lösungen auch hier im Blog zu dokumentieren, das wahre Problem 🙂

Nun habe ich es aber wieder einmal geschafft. Alle Probleme von 1 bis 59 sowie die 67 habe ich hier mit je einer Seite erklärt. Alles zusammen kann auch in meinen Projekt bei GitHub eingesehen und heruntergeladen werden!

Nun freue ich mich wieder auf die nächsten 10 Probleme und hoffe, dass ich

  1. den einen oder anderen Badge dafür erhalte und
  2. nicht wieder 20 Monate brauche, um hier davon zu berichten!

WP Wiki Tooltip – neue Version 1.8.0 verfügbar

Die letzten Hauptversion meines WP Wiki Tooltip Plugins hatte ich vor knapp 1,5 Jahren veröffentlicht. Zwischenzeitlich gab es zwar vier kleinere Updates, aber im Support-Forum des Plugins wurden verschiedene Wünsche nach neuen Features geäußert:

WP Wiki Tooltip – neue Version 1.8.0 verfügbar weiterlesen

WordPress Convert Events – mein Umstieg von „Event Calendar 3“ zu „Calendar“

Das Berichten über und die Empfehlung von  aus meiner Sicht interessanten Veranstaltungen war seit je her eines der wichtigsten Inhaltselemente meines WordPress Blogs. Damit stand die Wahl eines geeignetes Plugin für die Verwaltung von Veranstaltungen bzw. Terminen bereit mit dem Setup Ende 2008 in meinem Fokus. Ich entschied mich seiner Zeit für den Einsatz des Plugins „Event Calendar 3“ von Alex Tingle, weil man damit recht einfach (mehrere) Datums- und Zeitangaben an einen Beitrag hängen konnte. Die Datumsangabe wurde dann als kleines Feld im Beitrag angezeigt und man konnte ein Widget mit einem kleinen Kalender für die Sidebar aktivieren.

WordPress Convert Events – mein Umstieg von „Event Calendar 3“ zu „Calendar“ weiterlesen

WP Wiki Tooltip – neue Version 1.7.0 verfügbar

Während sich am Wochenende die WordPress-Gemeinde beim WordCamp in Mailand traf, nutzte ich eine schlaflose Nacht, um an der neuen Version meines WP Wiki Tooltip Plugins zu basteln. Dank des Feedbacks der Nutzer gibt es zwei neue Funktionen:

  1. Man kann zwischen zwei verschiedenen Triggern für die Tooltips wählen. Wahlweise öffnen sich die Tooltips nun beim Klick auf einen Link oder bereits beim Überfahren mit der Maus.
    Bernhard gab mir den Tipp, dass Benutzer im WWW recht selten auf den Hover-Effekt bei einem gekennzeichneten Link warten, sondern sofort klicken. Da dies dann sofort die gewünschte Seite öffnet, macht dann der Tooltip recht wenig Sinn. Nun kann man den Trigger in seiner WordPress Instanz selbst wählen.
  2. Einige Benutzer fragten im Support-Forum des Plugins nach, ob man die Tooltips bei mobilen Aufrufen nicht ausblenden könnte, da man z.B. auf dem Handy nicht all zu viel von diesen Tipps hätte. Nun kann man eine Mindestbreite definieren, die das aktuell genutzte Display haben muss, damit überhaupt Tooltips angezeigt werden. Ist das Display zu klein, reagiert der entsprechende Link, wie gewohnt.

Nebenbei habe ich dann auch noch die Übersetzung des Plugins für Deutsch in den Version formal und informell in die neue Verwaltung von WordPress übertragen. Damit kann man nun auch eine vollständig deutschsprachige Seite des Plugins im Repository finden! Das Plugin gibt es wie immer natürlich auch bei GitHub

Projekt Euler: Level 2 erreicht – 50 Probleme gelöst

Neben dem Wandern und den Arbeiten an meinem Wiki-Tooltip-Plugin blieb in den letzten Monaten noch etwas Zeit, um das eine oder andere Problem vom Projekt Euler zu lösen. Oft waren dabei die eigentlichen Lösungen der Probleme einfacher zu finden, als die Dokumentation hier in meinem Blog zu erstellen 😉

Nun ist aber Level 2 erreicht und es gab einen Award für das Lösen von 50 aufeinander folgenden Problemen! Seit dem Erreichen von Level 1, gab es die gewohnte, bunte Mischung aus Primzahlen, pandigitalen Zahlen, Fakultäten, Potenzen und sehr großen Zahlen. Eben allem, was dem Mathe-Knobler eine Freude bereitet 🙂

Alle Lösungen habe ich mit meinem kleinen Framework in Java programmiert und auf GitHub zum freien Verfügung gestellt! Auf geht’s zu den nächsten 25 Problemen bis Level 3…

HeadSpace2 SEO blockiert WordPress-Backend nach Update auf 4.5

Nachdem ich vor einigen Tagen mein WordPress-System zu erst auf die Version 4.5 und kurz danach auf 4.5.1 aktualisiert habe, konnte ich weder Artikel noch Seiten anlegen bzw. bearbeiten. Es schien so, als wären alle Javascript-Funktionen deaktiviert: es konnten keine Links angelegt werden, Schlagwörter waren nicht auswählbar und einzelne Optionen konnten nicht aktiviert / deaktiviert werden…

Ein Blick in die Konsole der Entwickler-Tools des Chrome zeigte einen Javascript-Fehler, der auf ein Problem bei der Anwendung eines CSS-Selectors schließen ließ. Die Suche in den Dateien der in meinem System verwendeten Plugins führte mich zum HeadSpace2 SEO und dort in die

wp-content/plugins/headspace2/js/headspace.js

Dort musste ich den Quellcode

$( 'a[href=#toggle]' ).click( function(){

in den Zeilen 26 und 61 wie folgt anpassen:

$( 'a[href*="#toggle"]' ).click( function(){

Damit war das Problem gelöst und alles funktioniert wieder einwandfrei!

Heute hat Bernhard in seinem Block einen Artikel veröffentlicht, der das Problem im Allgemeinen behandelt. Denn der Fehler kann bei unterschiedlichen Plugins und Themes auftreten, da es sich im Kern um ein Kompatibilitätsproblem mit der neuesten Version von jQuery handelt…

#wpdm – WordPress Meetup Potsdam 03/16

Nach mehr als einem halben Jahr komme ich heute endlich einmal wieder dazu, den monatlichen WordPress-Stammtisch in Potsdam anzukündigen! Leider war unser Meetup in den letzten beiden Monaten nicht sehr gut besucht, so dass ich meinen Vortrag zum Thema „Plugin-Entwicklung für den Tiny-MCE“ nicht gehalten habe.

Umso mehr freue ich mich, morgen wieder einmal viele von uns WordPress-Enthusiasten zu sehen, auch wenn ihr vielleicht nicht so sehr an der Programmierung interessiert seid 😉 Ausreichend Zeit zum allgemeinen Netzwerken wird es ja trotzdem geben!

Wir sehen uns also morgen ab 19 Uhr im Daily Coffee am Nauener Tor! Meldet euch bitte per Kommentar auf der Meetup-Webseite oder über Meetup.com an…

WP Wiki Tooltip – neue Version 1.6.0 verfügbar

Genau einen Monat nach dem letzten Update habe ich heute eine neue Version meines WP Wiki Tooltip Plugins zur Verfügung gestellt. Dieses Mal habe ich als neue Funktion ein Plugin für den TinyMCE, dem Standard-Editor im WordPress, eingebaut. Damit kann man nun noch leichter einen Shortcode erzeugen und die verschiedenen Attribute auswählen.

Außerdem habe ich noch ein paar neue Assets bereitgestellt. Damit werden nun Retina-Displays und Sprachen mit Leserichtung von rechts nach links unterstützt. Vielen Dank an Bernhard für den Hinweis auf dieses Thema und meinen Schatz für den Bau der Bilder!

Die neue Version steht wie immer im WordPress-Plugin-Repository und bei GitHub zum Download bereit! Viel Spaß damit 🙂