Donnerstag, 29. Januar 2009
Hin und wieder kann es vorkommen, dass man in Code-Zitaten zwei aneinandergereihte Minuse (--) verwendet.
Aufgrund einer WordPress-internen Funktion werden solche Vorkommnisse als Gedankenstriche interpretiert, und durch ein Sonderzeichen (ein etwas längerer, einfacher Strich) ersetzt.
Dummerweise führt dies zu Fehlern, da man dann nicht mehr erkennen kann, dass es sich um 2 Striche handelt. Auch beim Kopieren und Einfügen des Code kommt es natürlich zu Fehlern.
Da es anscheinend noch kein Plugin für diese doch recht wichtige Sache gibt, hilft nur ein Eingreifen in eine WordPress Kern-Datei.
Ab Zeile 47 der Datei formatting.php findet man folgenden Code:
$static_characters = array_merge(array('---', ' -- ', '--', 'xn–', '...', '``', '\'s', '\'\'', ' (tm)'), $cockney);
$static_replacements = array_merge(array('—', ' — ', '–', 'xn--', '…', '“', '’s', '”', ' ™'), $cockneyreplace);
Um die doppelten Bindestriche von der Umwandlung auszunehmen, die beiden Zeilen folgendermaßen anpassen:
$static_characters = array_merge(array('---', ' -- ', 'xn–', '...', '``', '\'s', '\'\'', ' (tm)'), $cockney);
$static_replacements = array_merge(array('—', ' — ', 'xn--', '…', '“', '’s', '”', ' ™'), $cockneyreplace);
Vor dem Speichern sollte natürlich ein Backup der Datei formatting.php erstellt werden.
Und: nach jedem WordPress Update muss die Änderung erneut durchgeführt werden!
Übrigens recht witzig: ‘’formatting.php’ - der versteckte Hinweis auf den WP Hauptentwickler
Donnerstag, 17. April 2008
Seit dem Update von WP 2.1 auf WP 2.3.3 bekam ich keine Benachrichtigungen mehr bei neuen Kommentaren.
Zuerst dachte ich mir, es liegt an der Mail-Konfiguration. Aber nachdem ich das überprüft hatte, kam es mir schon seltsam vor.
Eine Google-Suche ergab folgenden aufschlussreichen Treffer:
“Is Your WordPress Blog Not Notifying You Of Comments?”
Ich frage mich nun, was die beschriebene Codezeile eigentlich macht, und warum die Benachrichtigungen wieder funktionieren nachdem man sie auskommentiert hat.
Die betreffende Codezeile lautet:
$phpmailer->From = apply_filters( 'wp_mail_from', $from_email );
Unmittelbar danach folgt dieser Code:
$phpmailer->FromName = apply_filters( 'wp_mail_from_name', $from_name );
Was also ist an der ersten Zeile fehlerhaft?
Nichts. Der Punkt ist nur der, dass der Filter eine Empfänger-Adresse im Stile von ‘wordpress@meinedomain.de’ generiert, und diese halt nicht existiert.
Eine weitere Google-Suche hat dann ergeben, dass es für dieses Problem auch eine ‘saubere’ Lösung gibt, bei der man nicht die Datei pluggable.php editieren muss, und zwar im WordPress Deutschland Forum.
Das dort beschriebene Plugin löst das Problem, indem die Empfänger-Adresse auf die des Blog-Admins gesetzt wird.
Ein weiteres Plugin, das sogar ein Admin-Interface zum Einstellen verschiedener Mailserver-Parameter beeinhaltet, gibt es hier: WP Mail SMTP
Dienstag, 11. März 2008
So, nun bin ich mit meinem Blog nicht nur auf einen neuen Server umgezogen, sondern hab auch gleich WordPress von der Version 2.1.3 auf die 2.3.3 aktualisiert.
Eigentlich hätte es dabei keine sonderlichen Komplikationen geben dürfen.
Ich hatte nur zwei Kern-Dateien verändert und die Änderungen noch im Überblick. Sicherungen waren natürlich auch vorhanden. Weitere Ergänzungen meinerseits (wie z.B. die Gallery) sind mittlerweile als Plugins realisiert.
Somit ersetzte ich also alle Dateien mit den entsprechenden Dateien der neuesten WordPress Release.
Leider wurden beim Kopieren die Rechte der Dateien teilweise verstümmelt. Bis ich darauf kam, ging einige Zeit ins Land. Mit sowas rechnete ich eigentlich nicht, da ich die Dateien von einem Linux-System aus auf den Server kopiert hatte.
Normalerweise treten solche Probleme nicht auf, es sei denn man arbeitet unter einer gemischten Umgebung, wo man z.B. unter Linux auf Windows-Laufwerken arbeitet. Hierbei kann schon mal die Berechtigungs-Struktur unkontrolliert verändert werden.
Wie auch immer, nachdem alle Dateirechte korrigiert waren, konnte das Upgrade starten.
Es gab dabei auch keinerlei Probleme. Ich hatte zuvor alle Plugins deaktiert.
In WordPress 2.3 wurden ein paar interne Funktionen geändert, die über lange Zeit in den verschiedenen Versionen unverändert benutzbar waren.
Zum einen wurden ein paar Strukturen in der Datenbank geändert, was vor allem die Kategorien betrifft.
Die Folge davon war, dass ein Plugin nicht mehr funktionierte: WP-dTree
Das Original-Plugin wird zwar nicht mehr weiterentwickelt, jedoch gibt es eine neue Version des Plugins von einem anderen Autor. Diese Version läuft nun auch mit WP2.3
Die Vereinigung von Beitrags- und Link-Kategorien wurde gegenüber dem Upgrade von WP1.5 auf 2.1 nochmal etwas verändert. So gibt es nun auch sogenannte ‘Tags’, also Begriffe, die automatisch in Beiträgen als Links hervorgehoben werden. Diese können nun auch auf die eigentlichen Kategorien zurückgreifen.
Mein eigenes Plugin ‘archivespage’ habe ich bei der Gelegenheit auch noch überarbeitet, da die Funktion unter WP2.x etwas eingeschränkt war.
Einen seltsamen Effekt gab es nach dem Upgrade noch, nämlich dass Kategorien die Unterkategorien enthalten, nicht mehr angezeigt wurden. Die darin enthaltenen Posts konnte man über die Such-Funktion noch erreichen, aber sie waren in keiner Kategorie mehr gelistet. Nachdem ich eine der Kategorien erneut erstellt hatte, tauchten auch plötzlich auch die anderen wieder auf.
Bis auf den Fehler mit den Dateirechten also eine relativ unspektakuläre Updateprozedur.
Die WordPress Versionen 2.3.1 bis 2.3.3 enthalten diverse Bugfixes und Sicherheitsupdates.
Wen die Neuerungen der Version 2.3 interessieren, der kann hier nachschauen.
Mittwoch, 16. Mai 2007
Für WordPress (mittlerweile bei der Version 2.1 angelangt) gibt es ja einige Themes.
Siehe:
http://themes.wordpress.net/
http://themes.wordpress-deutschland.org/
http://alexking.org/projects/wordpress/theme_browser.php
Zum Ausprobieren einiges dieser Themes habe ich auf blog.netandif.de das Plugin ‘Theme-Switcher‘ installiert.
Damit ist es nun möglich, schnell die diversen Themes zu testen.

Cornblogs kann ja nicht direkt mit den php-Dateien ‘gefüttert’ werden.
Falls jedoch ein paar von den Designs gut gefallen, werde ich mir die Mühe machen, sie nach Smarty zu konvertieren...
Mittwoch, 30. November 2005
Zwei der mächtigsten Funktionen von WordPress sind sicherlich Filter, und sogenannte ‘Hooks’.
Was kann man also mit diesen Funktionen anstellen? Ganz einfach: zum Einen kann man mit Filtern den Content bearbeiten. Ja, man ‘schickt’ den Inhalt (also z.B. Posts) durch eine Funktion, welche den Inhalt verändert. Wie auch immer. Das Ergebniss ist der neue Content, welcher dann wiederum ganz normal zur Verfügung steht.
Zum Anderen kann man bestimmten Vorgängen wie z.B.: Login, Post, Comment usw. Aktionen zuordnen. Als ein Beispiel wäre zu nennen, dass beim Schreiben von Posts sogenannte ‘Ping-Services’ benachrichtigt werden. Dies geschieht über Ereignisse und Re-Aktionen : Hooks und Actions.
Einige dieser ‘Hooks’ sind bei WordPress bereits vordefiniert. Jedoch kann man auch eigene schreiben.
Hier nun noch kurz die Funktionen, die WordPress zur Verfügung stellt:
- do_action() Definiere die angegebene Funktion als ‘Hook’
- add_action() Füge dem Ereigniss die angegebene Re-Aktion hinzu
- add_filter() Füge der angegeben Funktion einen Filter hinzu
- remove_filter() Entferne einen Filter von der angegebenen Funktion
Links hierzu:
WordPress Plugin API
do_action Funktion
Mittwoch, 26. Oktober 2005
Ich habe mal den Versuch unternommen, Themes aus Alex King’s Theme Browser in WPMU Smarty Templates zu konvertieren.
Es geht einfacher als ich dachte. Für folgendes Theme benötigte ich grad mal 10 Min.:
Testinger: WP Rampart Theme
Sonntag, 11. September 2005
Standardmässig werden Umlaute in Post-Titeln zwar korrekt angezeigt, aber an der Titelform beim Bearbeiten des Posts sieht man, dass Umlaute einfach entfernt werden. Ob und inwieweit dieses Problem sich auswirkt, weiss ich momentan noch nicht.
Das Plugin o42-clean-umlauts scheint das Problem zu beheben.
Möglichweise kann die Schlagworte Funktion dann auch mit Umlauten umgehen. Mal testen...