wordpress - 21.1.2005 - 18.6.2005

Veränderungen bei der Metaeule

Tja, die Metaeule ist ja für mehr gut als nur dazu um RSS-Feeds zu aggregieren - das wär ja langweilig, das kann ja jeder. Ok, die Verlinkungen sind sehr interessant, aber trotzdem - einfach nur einen Planet-like Aggregator zusammenzimmern wäre langweilig.

Daher habe ich jetzt das ganze ein bischen Umgestaltet bei Suchen und in den Archivsichten. Und zwar werden ab sofort neue Postings auf der Startseite nur noch als Auszüge gepostet. Im Archiv und in Suchergebnissen gibt es dann die Postings nur als Titel in der Ergebnisliste - die Suche ist dabei ein bischen nach Relevanz sortiert (jedenfalls so gut es MySQL hinkriegt). Das besondere: an jedem Artikel oder Titel steht ein Link Im Archiv dran. Mit diesem Link gehts auf die gesicherte Artikelseite. Also selbst wenn der originale Host mal nicht verfügbar ist, der Inhalt des Postings ist abrufbar (allerdings nur der Inhalt der mir auch über den RSS-Feed geliefert wurde - hat das Blog nur Auszüge im RSS-Feed, landen dort auch nur Auszüge in der Datenbank). Zusätzlich ist an den Postings selber auf der Archivseite unten eine Liste von Postings dran die unter Umständen zu diesem Posting passen könnten - auch da natürlich nur im Rahmen dessen was MySQL hinkriegt.

Insgesamt ist also die Metaeule nicht mehr nur ein einfacher Aggregator, sondern zusätzlich noch ein Archiv, eine themenspezifische Suchmaschine und eine Querverweisliste. Mal gucken wie brauchbar das ganze sich im Echteinsatz darstellt. Wenn alles mal rund ist und gut läuft werde ich zusammenschreiben welche Plugins und Änderungen ich alles dafür benutzt habe. Versprochen.

wp-cache-2 und PHP Accelerator

Wer das sehr brauchbare Caching-Plugin wp-cache-2 benutzen will, muss aufpassen: es ist nicht kompatibel mit dem PHPAccelerator. Leider kann man nicht beide zusammen einbauen, nur eines von beiden geht. Ziemlich ärgerlich, denn sie sprechen unterschiedliche Elemente an - das Plugin cached den Output, der Accelerator cached das vorkompilierte PHP. Von daher würde der Accelerator auch dem Cache-System helfen, denn das Cache-System ist ja in PHP geschrieben ...

Jedenfalls habe ich mal das Plugin auf den von mir betreuten WordPress-Blogs aktiviert. Vor allem der Metaeule könnte das auf Dauer gut tun. Das Caching ist derzeit auf 20 Minuten eingestellt, damit Änderungen in der Datenbank nicht so lange rumhängen bevor sie alle sehen können. Mal schauen was für Seltsamkeiten dabei auftreten im laufenden Betrieb.

Eine Sache von der ich erwartet habe das sie nicht mehr richtig funktioniert ist das Plugin Popularity Contest - mit dem wird ja gezählt wie oft ein Posting aufgerufen wurde. Das passiert durch das Caching natürlich wesentlich seltener und dadurch sind die Zahlen nicht mehr so aussagekräftig. Bewertungen auf Basis von Kommentaren und Trackbacks gehen natürlich noch, aber die Lesezugriffe sind unbrauchbar. Schade eigentlich, aber dafür kriege ich wesentlich niedrigere Serverload und wesentlich höhere Auslieferzahlen: mit aktiviertem wp-cache habe ich bei 20 konkurrierenden massiven Zugriffen nur eine Load von knapp 4 und schaufel knapp 50 Requests pro Sekunden raus. Ohne wp-cache habe ich eine Load von über 9 und schaffe nur knapp 5 Requests pro Sekunde.

Also mit wp-cache-2 nur die Hälfte der Load und dafür das 10fache an Performance. Da opfer ich den Popularity Contest gerne

Ein zweites Plugin das mir aufgefallen ist: Search Hilight (Standardplugin von WordPress) tuts nicht. Logisch - das färbt ja Suchbegriffe ein, die aufgrund des Referrers von einer Suchmaschine ermittelt wurden. Und Referrer gehen natürlich nicht in die Cache-Signatur ein. Schade, war eine optisch nette Spielerei. Aber andererseits auch nicht wirklich so wichtig.

Popularity Contest

Alex King hat ein schönes Plugin für WordPress: den Popularity Contest. Damit werden diverse Werte an Postings gesammelt und verrechnet und daraus ermittelt welche Postings die beliebtesten sind. Ich hab das mal in meine Sidebar eingebaut (unter den Bildern). Zusätzlich zu den Tags für die Einbindung in das Template liefert das auch noch einen Schwung von Infos auf einer Unterseite der Startseite des WordPress-Admins. Da kann man dann Beliebtheit nach Kategorie oder Art der Kennzahl angucken. Mal schauen wie sich das so entwickelt mit den Werten.

RSS Language und WordPress

Wer sich so wie ich drüber ärgert das WordPress in Feeds immer behauptet die Sprache sei 'en' statt 'de', und das entsprechende Setting in den Optionen gesucht hat: vergesst es, die WordPress-Programmierer haben zwar die Option vorgesehen, nicht aber das GUI um diese Option zu setzen. Selten dämlich.

Nunja, man kann es recht einfach in einer MySQL-Shell setzen:


update wp_options
 set option_value = 'de'
 where option_name = 'rss_language'

Oder alternativ mit PHPMyAdmin oder vergleichbaren Tools einfach den entsprechenden Datensatz raussuchen und dann das Feld option_value patchen. Schöner wärs natürlich wenn WordPress das über das Admin-Interface setzbar gemacht hätte ...

Schöner WordPressen

WordPress Administration Design: Tiger ist eine sehr schöne CSS-Änderung des Wordpress-Backends. Sehr lohnend vor allem für Design-Verwöhnte Apple-User

Eine sinnvolle Erweiterung ist der folgende Teil im wp-admin.css:


body#wpbookmarklet {
 padding: 23px 0 50px 5px;
 background: #FFF;
}

Damit wird der linke Rand beim Bookmarklet ausgeblendet. Denn der verschwendet im Bookmarklet nur Platz. Zusätzlich habe ich bei mir dann noch das bg_body.gif auf 160px gekürzt und dann die Breiten vom adminmenu auf 120px respektive 110px beim LI im adminmenu gekürzt und das Padding vom normalen Body von 245px auf 175px gekürzt. Dadurch wird links etwas weniger Platz verschwendet - ich hab ja nur 1024x768 Pixel Auflösung am Bildschirm, da ist Platz kostbar.

Update: mitlerweile gibt es den Tiger Admin als Plugin - die Installation braucht damit keine Modifikation der Core-Files mehr und das Problem mit dem Bookmarklet ist auch weg - das Bookmarklet benutzt jetzt einfach den alten Style und nur der normale Admin ist umgestellt.

Upgrade auf WordPress 1.5.1.2

Da ich gerade den Upgrade gemacht habe, kann es theoretisch zu komischen Effekten kommen - wem was auffällt, bitte melden. Ich meine damit komische Effekte die vorher nicht da waren - die andren komischen Effekte die schon länger hier sind sind warscheinlich Absicht

Noch was zu Spotlight

Ich muss mich da mal dringend mit der Indizierungsgeschichte beschäftigen, ob man da auch entfernte Indizes einbinden kann oder einen Indexer der übers Internet eine Datenbank indiziert. Ich hätte nämlich gerne meine gesammelten Postings aus meinem WordPress-Blog in meinem Spotlight-Index. Das wäre viel praktischer als extra einen Browser zu öffnen und hier zu suchen. Und da ich das hier sowieso als Linkdump und Notizblog benutze, würde ich so endlich mal die Sachen wiederfinden die ich mir merken wollte

Ping TopicExchange von WordPress

Phillip Pearson hat ein WP-Plugin geschrieben das vereinfachtes einfaches Pingen von TopicExchange ermöglicht. TopicExchange ist im Prinzip einfach nur eine Liste von Trackback-Zielen mit einen eigenen Wiki pro Trackback-Ziel. Die Idee ist eine möglichst einfache Gruppenblogfunktion die von den Benutzern über ihre eigenen Blogs angesprochen werden können.

Probleme mit dem Newsfeed bei WordPress

WordPress 1.5 hat Probleme mit dem Newsfeed - das Datum wird da zersemmelt. In Peruns Blog ist da ein bischen mehr Info zu und auch gleich ne Lösung. In wp-rss.php ist das gleiche Problem mit dem mysql2date Aufruf drin, allerdings nur ein Aufruf. Naja, kann man ja gleich mitfixen.

Spielerei mit neuen Theme

Ich hab mich endlich mal dazu durchgerungen mit einem neuen Theme zu arbeiten, bzw. das bisherige Theme zu ändern. Das war ja der klassische Kubrick nur mit einem eigenen Hintergrundbild, jetzt ist es "flexible Kubrick" - im Prinzip immer noch Kubrick vom Layout her, aber ich hab die runden Ecken und Schatten entsorgt und das ganze Layout auf em umgestellt als Massgabe - nicht mehr feste Pixelbreiten, sondern statt dessen fontrelative Angaben. Mal gucken, eventuell mach ich das Theme später mal verfügbar.

Im Ergebnis müsste das Layout jetzt sich bei Basisfonteinstellungen durch den User anpassen und auch ansonsten etwas gnädiger arbeiten bei entsprechenden Veränderungen. Es ist allerdings immer noch kein liquid Layout, sondern statisch - nur eben mit flexibler Basisgrösse.

Das Problem mit der Kopfgrafik hab ich übrigens ganz klassisch gelöst: der Bagger ist einfach freigestellt und vor transparenten Hintergrund gestellt und als GIF gespeichert. Kombiniert mit der passenden Farbe für den Hintergrund ist das Ergebnis meiner Meinung nach recht brauchbar. Und bei Grössenänderung der Seite (z.B. eben durch Basisfontvergrösserung) "wächst" das Bild in der Breite mit.

Wem seltsame Sachen auffallen, bitte melden. Ich weiss, ist keine layout-technische Revolution. Aber dazu bin ich eh nicht in der Lage. Ich wollte einfach nur mal probieren wie ein em-basiertes Layout ausfallen kann und brauchte dazu was zum probieren.

Streifenkalender für WordPress

Als erstes Plugin aus meinem Bilderblog (mitlerweile aus) gibts jetzt den Streifenkalender. Im Prinzip ein ganz normaler WordPress Kalender - nur eben nicht als Block für den Sidebar, sondern als Streifen um ihn über den Inhalt drüberzustellen. Da man in der Regel in der Länge einer Seite mehr Platz verschwenden kann als in der Breite und da mancher ja vielleicht mit dem doch recht ausgelutschten Format wo der Kalender in einem Sidebar steckt brechen will, kann man jetzt einfach den Streifenkalender einbauen. Der Code zum Einbau ist trivial:


< ?php get_strip_calendar(); ?> ```

Einfach das in das header.php oder wo auch immer man den Kalender haben will einbauen. Fertig (natürlich vorher das Plugin nach wp-content/plugins/ auspacken und in der Administration auspacken!).

virtuelle Hosts mit WordPress

Das Vhost Plugin ist mein momentaner Favorit der Beiträge zum Plugin-Wettbewerb für WordPress. Mit diesem Plugin kann man Kategorien an virtuelle Hosts binden - wenn dieser Host angesprochen wird, wird automatisch die passende Kategorie angezeigt und zusätzlich dieser Kombination noch (optional) ein anderes Template verpasst.

Mir fallen spontan eine ganze Reihe von Ideen an - z.B. könnte ich meine Bananenrepublik da drunterpacken und damit mein Geschimpfe als eigenständigeren Inhalt präsentieren. Oder meine fotografischen Einträge endlich wieder unter einer meiner Foto-Domains laufen lassen. Ich glaub mit dem Plugin spiele ich demnächst mal ein wenig herum.

Eine weitere witzige Funktion - für mich aber eher uninteressant - ist die Möglichkeit einen Benutzer auf einen VHost einzuschränken (und damit auf eine Kategorie) und damit eine Multi-Blog-Plattform auf einer WordPress-Installation aufzusetzen. Könnte z.B. für Familienblogs ganz witzig sein.

Installation ist leider etwas hakelig - man muss ein paar Funktionen patchen, da dort in der Standardinstallation Bugs drin sind. Mit WP 1.5.1 sollte das dann aber hoffentlich besser sein.

Das WordPress Versioning Plugin erlaubt die Versionierung von Einträgen - also Artikeln und Seiten. Damit man im Falle des Falles auf eine alte Version zurückgehen kann.

Tags aus Terms

Jonathan Luster hat sein Y! Terms Extraction Plugin für WordPress veröffentlicht. Es benutzt die Yahoo-Services um aus einem Postingtext relevante Schlüsselwörter herauszuholen und präsentiert diese dann als Technorati-Tags im Posting. Wenn jemand das mal ausprobiert: mich würd interessieren wie gut das mit deutschen Texten klarkommt.

Ausserdem würde mich natürlich auch mal interessieren wann blogg.de ein API anbietet, ich mein, wird doch langsam mal Zeit mit den Features von Technorati und Yahoo aufzuholen, oder?

FeedWordPress ist ein Plugin das mit einer WordPress-Installation eine Planet-Site erzeugt: im Prinzip ein öffentlicher Aggregator, nur das halt die Einträge in eine WordPress-Datenbank laufen.

A Response to the Noise

A Response to the Noise ist photomatts Antwort auf die Geschichte mit dem Suchmaschinenspamming. Wenn ich es mir so durchlese fällt mir mal wieder auf wie saublöd sich passable Programmierer ausserhalb ihrer schön geordneten Computerwelt verhalten ...

Nunja, er hat alles demontiert was dazu gehörte und irgendwann gibt ihm Google vielleicht seinen Pagerank zurück (update: hat zurückgegeben) und das Leben geht weiter. Seine Erklärung klingt jedenfalls blöd genug um glaubhaft zu sein.

Wordpress Website's Search Engine Spam

Beim Netzbuch gesehen: Wordpress Website's Search Engine Spam - photomatt finanziert WordPress Server und den ersten WordPress Mitarbeiter über Suchmaschinenspam. Gemacht wird das über Artikel und versteckte Links auf diverse High-Cost Suchbegriffe die dann auf Suchmaschinenspamseiten zeigen, die von einem Dienstleister angeliefert werden. photomatt ist also nur der Mittelsmann - der Spambot, nur das er halt nicht Kommentare sondern Suchmaschinenergebnisse bespammed.

Auf deutsch: das ist oberste Scheisse. So ein Verhalten ist - gerade für jemanden der mit seiner Software massiv unter Spammern zu leiden hat - absolut inaktzeptables Verhalten. Das Gerede von "wenn die Community das nicht gut findet hör ich damit auf" ist Bullshit - warum hat er überhaupt so einen Scheiss angefangen? Ganz besonders weil Blogsoftware immer wieder als Suchmaschinenbeschmutzer beschimpft wird sollte man in dem Bereich sehr vorsichtig mit dummen Ideen sein und nicht noch extra Öl ins Feuer giessen ...

Gleichzeitig ist das für mich ein weiterer guter Grund auf GPL-Software zu setzen: wäre es eine Firma, deren Handeln ich nicht akzeptieren kann, würde ich auf den Einsatz der Software verzichten müssen. So kann ich die Software weiter benutzen - denn der eigentliche Programmierer ist relativ wurscht, ich kann jederzeit einen Fork machen und meinen eigenen Weg mit der Software gehen. Die Trennung zwischen dem Lieferanten der Software und der Software selber ist eben sehr viel offener.

Mal sehen was in der Community-Diskussion über das Thema rund kommt, notfalls wirds halt Zeit für einen Fork ...

Erster Fallout: wordpress.org ist aus dem Google-Index rausgeflogen.

Und da immer wieder die Diskussion um die Finanzierung von Projekten kommt und das als Entschuldigung für das Verhalten herangezogen wird: sorry, aber das ist Bullshit. Man kann nicht mit dem Zweck die Mittel heiligen - wer selber massiv unter Spammern leidet und sich durchaus gegen diese wehrt kann nicht zu ähnlichen Mitteln greifen. Und ja, es ist und bleibt Spam: wer Suchmaschinen - und damit die Suchenden! - missbraucht um sein Ranking hochzupushen ist ein Suchmaschinenspammer. Basta. Auch die Kommentarspammer reden sich gerne damit raus das sie ja nur offene Resourcen benutzen und garnicht wirklich spammen würden - Bullshit, alles beides.

Preserve Code Formatting sichert PRE und CODE Blöcke gegen wptexturize ab.

Cat2Tag Plugin

Das Cat2Tag Plugin ist etwas das mir noch für mein Fotoblog fehlte: eine Möglichkeit mit den WordPress Kategorien wie mit Flickr-Tags zu arbeiten.

Es werden die häufigsten Tags (20 Stück, kann auf alle umgestellt werden) angeboten in einer kleinen JavaScript Leiste und zusätzlich gibts ein Eingabefeld für Tags in die man einfach manuell weitere eingeben kann (oder eben aus der Liste der häufigsten welche reinklicken kann). Die Default-Kategorie wird einfach als Wort in der Tagliste aufgeführt. Neue Tags können einfach durch Verwendung derselben angelegt werden. Sehr praktisch.

Einzig die Hierarchie der Kategorien wird natürlich nicht abgebildet - die ist aber bei Tags eh nicht so wirklich interessant, die Hierarchie spielt bei Tags ja keine echte Rolle. Genauso wird die Tagbeschreibung (Kategorienbeschreibung) nicht gepflegt, die muss man dann nachträglich von Hand überarbeiten wenn man da was sinnvolles stehen haben will (z.B. für die Feeds).

Ein Problem hat das Plugin noch: es setzt das scharfe s "ß" nicht korrekt um bei der Kürzung von Umlauten aus Tagnamen. Scheint aber ein Problem zu sein das WordPress auch hat - auch bei manueller Kategorienanlage wird das "ß" nicht korrekt aufgelöst. Mit denen sollte man also vorsichtig sein. Und natürlich werden Umlaute nicht auf ihre Langform gewandelt sondern auf ihre Grundform - aus "ä" wird "a". Was die Tag-URLs dementsprechend etwas problematisch macht, da User wissen müssen wie der Tagname sich auf die URL umsetzt, wenn sie die URL selber hacken wollen. Das ist aber ebenfalls ein generelles Problem der Internationalization.

Eine Idee der Verbesserung wäre noch eine zusätzliche Querystring-Regel mit der man URLs mit Tag-Kombinationen (Natur+Tiere) realisieren könnte.

Ansonsten aber ein wirklich nettes Plugin mit einer für mich sehr praktischen Funktionalität.

Das Time Zone (WP Plugin) ist ein praktisches kleines Plugin das die Zeitzone bei WordPress benutzt so das die etwas alberne Umstellerei der Zeitdifferenz in den Optionen entfallen kann. Gefunden bei Perun in den Kommentaren.

Mein neues Fotoblog - und der erste Marienkäfer

Mein neues Fotoblog - und der erste Marienkäfer

Mein neues Fotoblog - und der erste Marienkäfer

Den ersten Marienkäfer dieses Jahr. Ein paar weitere Bilder gibts in meinem neuen Fotoblog (seit 2007 nicht mehr). Das übrigens auch mit WordPress arbeitet, aber mit ein paar selbstgestrickten Plugins für die Fotoverwaltung und den Streifenkalender (irgendwann pack ich das mal zusammen und machs downloadbar). Ich bin schon ganz zufrieden mit dem Stand da drüben. Auf Dauer werde ich wohl einen Mechanismus basteln mit dem die Fotos als Thumbs in diese Site hier reinwandern und hier dann eher selten Bilder posten (allenfalls die üblichen Snapshots).

Warum ich mir überhaupt was eigenes gebastelt habe? Naja, ich finde zwar eine Reihe von Features von Flickr sehr nett, aber ich habe eine massive Abneigung dagegen meine Inhalte fremden Servern anzuvertrauen bei denen ich weder über den Betrieb noch bei der Softwaregestaltung mitreden kann. Von daher habe ich mir einige der Ideen von Flickr geklaut und auch mich fleissig bei anderen Projekten bedient (die Idee für den Streifenkalender hab ich mir bei PixelPost abgeguckt zum Beispiel) und das ganze in WordPress integriert. Das Layout war mal früher Kubrick, aber ich hoffe es ist auch für die Kubrick-Allergiker genügend abweichend davon geworden

Ich hatte mir vorher auch eine ganze Reihe von Content-Management-Systemen angeguckt daraufhin wie geeignet die für sowas gewesen wären (den FallOut dazu konnte man ja teilweise hier lesen). Und sogar eine Weile mit der Idee gespielt das ganze mit PixelPost direkt zu machen. Aber die deutlich überlegenen Kommentarfeatures bei WordPress (speziell die ganzen Anti-Spam-Techniken) haben mich dann dazu gebracht bei WordPress zu bleiben.

Ein paar Sachen stehen noch auf der ToDo, aber im Prinzip ist es schon so ganz brauchbar und wird daher hiermit offiziös angeläutet.

Mein neues Fotoblog - und der erste Marienkäfer

Mein neues Fotoblog - und der erste Marienkäfer

Mein neues Fotoblog - und der erste Marienkäfer

WP: Gravatar Signup [ Tempus Fugit | TxFx.net ] ist ein kleines Plugin das die Anmeldung für einen Gravatar direkt aus dem Kommentarformular heraus erlaubt, um Leuten ohne Gravatar den Einstieg so einfach wie möglich zu machen (und damit Gravatare zu verbreiten). Witzige Idee.

Borderline Chaos ist ein recht nettes WordPress Theme - ich mag die kräftigen Farben und das ziemlich simple Layout. Wäre eventuell auch eine Idee um drauf aufzubauen ... (jaja, irgendwann mach ich auch mal mehr als nur über Layouts zu reden )

Wer sein Wordpress gegen externe Benutzerdatenbanken authentifizieren will: der Authentication Plugins Patch erweitert WordPress um die nötigen Hooks um es zum Beispiel über die Apache Authentifizierung zu sichern.

WordPress Theme: Gila - sieht ganz nett aus, ist dreispaltig und hat eine flexible mittlere Spalte.

speed up WordPress l10n

New php-gettext, speed up WordPress l10n beschreibt zwei recht einfache Massnahmen um WordPress ein bischen Beine zu machen. Und zwar ist die gettext-Unterstützung suboptimal - was jeden Benutzer einer nicht-englischen WordPress-Installation betrifft. Mit gettext werden nämlich die Übersetzungen geladen. Mit den genannten Patches werden diese Bereiche deutlich beschleunigt, besonders gut natürlich auf Einzelseiten (wo die Anzahl der Datenbankzugriffe kleiner ist) zu sehen, aber auch z.B. bei meiner Homepage hat das ganze durchaus eine messbare Beschleunigung ergeben.

Trackbacks generell moderieren

Für WordPress gibts ja ein Plugin das Trackbacks automatisch auf moderiert setzt. Das arbeitet aber mit zusätzlichen Datenbankzugriffen (setzt nach der Erstellung des Trackbacks das Moderationsflag), was bei Trackback-Spammern eher doof ist - jeder zusätzliche Datenbankzugriff treibt die Systemlast in die Höhe. Daher hab ich mal meine eigene Version davon geschrieben, die ganz ohne zusätzliche Datenbankzugriffe auskommt. Source gibts hier.

Das LetterHead Theme für WordPress 1.5 ist ein extrem minimalistisches Theme - einfach nur zwei Spalten und Text. Keine Images. Könnte ideal sein für Leute die eine "blank Canvas"-Erfahrung brauchen um ihre eigenen Designideen umzusetzen - an Letterhead ist wirklich nix dran das einen gross ablenken könnte.

Das WordPress IP to Country Plugin setzt eine IP in ein Land um und liefert den Ländercode dazu. Zum Beispiel könnte man (nein, ich hab das nicht eingebaut hier, Testkommentare bringen also nix) über die Commenter-IP damit anzeigen aus welchem Land ein Kommentator möglicherweise kommt (bei tor-Usern würde das begreiflicherweise in die Irre geführt). Interessant auch der Hinweis auf die IP-To-Country-Datenbank, die scheinbar frei verfügbar ist. Interessant für eigene Projekte, z.B. Statistikauswertungen von Logfiles.

Plugin API for WordPress listet Actions und Filter auf, die WordPress definiert. Wird gerade mit Inhalt gefüllt.

Batch Categories 0.9 kann einen ganzen Schwung von Postings in neue Kategorien aufnehmen. Eigentlich eher ein Hack als ein Plugin, aber trotzdem unter Umständen ganz praktisch.

Image Headlines Plugin for WordPress 1.5 erstellt automatisch Image-Replacements für Header. Allerdings wohl nur einfache Images, man müsste also noch in den H-Tag darunter einen unsichtbaren Text stellen, damit Suchmaschinen nicht nur das ALT-Attribut des Bildes für den Header nehmen können. Und natürlich haben Image-Replacements ein gravierendes Manko: sie wachsen nicht mit wenn der User die Basefont-Grösse wechselt.

OpenPGPComment für WordPress

OpenPGPComment ist ein Plugin für WordPress mit dem man signierte Kommentare vernünftig anzeigen kann. Benutzer können ihren Kommentar mit gpg signieren und der Server zeigt in den Kommentaren zu einem Beitrag dann diese Kommentare ohne Signatur an, bietet aber ein Popup-Fenster mit dem gpg-Output als Link. nette Idee.

Digital signierte Kommentare sind nicht nur für die Zuordnung von Kommentaren zu Benutzern sinnvoll - sie bieten auch für den Benutzer selber Vorteile. Und zwar ist sichergestellt das signierte Kommentare vom Serverbetreiber nicht nachträglich geändert wurden. Ein nicht unwesentlicher Vorteil gerade bei Weblogs, da dort in der Regel dem Serverbesitzer deutlich mehr Möglichkeiten offenstehen.

Ich hätte es ja gerne bei mir ausprobiert, aber es braucht proc open - und proc open gibts erst ab PHP 4.3. Und in der Debian Woody ist nunmal noch immer ein PHP 4.1.2 drin ...

Red Alt - Kubrickr

Red Alt - Kubrickr generiert ein Kopfbild für das Kubrick Layout aus einer Selektion von Bildern auf flickr die mit einer CC-Lizenz versehen sind. Sollte für alle Kubrick-Designs nutzbar sein bei denen die Bilder die gleichen Maße haben.

Ich hab selber schon mit dem Gedanken gespielt sowas zu bauen - mal gucken, vielleicht baue ich ja sowas in mein Fotoplugin ein. Denn wechselnde Kopfgrafiken hatte ich ja vorher auch schon, fand ich eigentlich ganz nett.

Alternative Rewrite Rules ergeben eine wesentlich einfachere .htaccess, vor allem eine die nicht ständig von WordPress aktualisiert werden muss. Gerade wenn man selber die .htaccess für andere Sachen noch mitbenutzt ist das praktisch. Ausserdem wird der Apache durch die komplizierten Rewrite-Rules von WordPress auch nicht unbedingt schneller. Ich hab die bei mir mal aktiviert, mal schauen wie sich WordPress 1.5 mit diesen Eintragungen macht. Wenns keine Probleme gibt, bleiben die so drin, denn sie gefallen mir wesentlich besser als die andere Variante. Und sie haben nicht die Probleme die die anderen haben - alte mod_rewrite können nur greedy matching, was die Erstellung von komplizierten Listen von Rewrites ziemlich haarig macht ...

Die Technorati Plugin Beta stellt eine ähnliche Liste wie die normalen Kommentare zur Verfügung - nur stammen die Links und Textauszüge aus dem Technorati Link-Kosmos zu einem Artikel. Ich überlege gerade ob man sowas nicht sinnvollerweise auch mit blogger.de machen könnte - damit könnte man auch die erwischen, die nicht über Trackback oder Pingback automatisch verlinkt sind. Man müsste natürlich Duplikate gegen die normalen Trackbacks und Pingbacks testen. Hmm.

BAStats Pre-Release für WordPress 1.5

BAStats Pre-Release - sehr nett gemacht. Es liefert einen direkte Sicht in die Referrer, Zugriffe etc. auf einen Webserver. Einfache zeitliche Abgrenzung und recht simple Filter. Ich hab keine Ahnung wie es mit den Daten selber arbeitet - ob also entsprechende Bereinigungsläufe drin sind, es ist ja noch ein Prerelease. Aber schon ganz nett so vor der Website zu sitzen und Life-Sichten zu kriegen. Und wesentlich übersichtlicher als ein tail -f auf das Access-log

Ein Effekt von BAStats ist, dass Besucher einen Cookie verpasst bekommen. Wer den ablehnt, kein Problem, es funktioniert alles wie bisher, der Cookie dient einfach nur der Erkennung eines Visits.

phpOpenTracker ist ein Live-Access-Auswerter für Webseiten. Er kann direkt in PHP-Anwendungen integriert werden oder über Webbugs (kleine unsichtbare Grafiken) aus statischen Webseiten gesammelt werden. Man kann damit ziemlich viel über das Benutzerverhalten in den Webseiten erkennen. Und bei Asymptomatic wird gerade an einem WP-Plugin dafür gestrickt, mit dem man die entsprechenden Auswertungen im WP-Backend zu sehen bekommt ...

WordPress 1.5 ist raus

und ich hab mal upgedated (ich hatte eine relativ aktuelle CVS-Version laufen). Ein ziemlicher Berg an Änderungen in den letzten 5 Tagen, aber scheinbar funktioniert alles weitestgehend. Bisher nur einen Bug gefunden und reported, aber auch noch nicht so viel hier getestet. Wem was komisches auffällt (ich mein damit komischer als es sonst hier ist), hier als Kommentar abladen oder über das Feedback-Formular melden.

WordPress Localization beschreibt wie man eigene Übersetzungen für WordPress erstellt.

Wordpress Dateien und Ladereihenfolge

Wordpress file loading beschreibt in welcher Reihenfolge welche PHP-Files von WordPress geladen werden um eine Blogseite zu produzieren. Ganz interessant wenn man plant was zu verändern an Dateien - es gibt eine erste Orientierung wo man was finden könnte. Was allerdings auch auffällt: dafür das WordPress eigentlich recht schlanke Seiten produziert hat WordPress selber schon ganz schön Speck auf den Hüften

Wordpress to Drupal Migration Script

Wordpress to Drupal Migration Script - kann aber im Moment wohl nur von Karteikasten nach Karteikasten migrieren - eine richtige Datenbank als Ziel muss man ihm unter Umständen erst beipulen.

Update: naja, das Script macht wirklich nur die Übertragung der Postings. Keine Post-Slugs (also kein Erhalt der URLs), keine Kategorien, nix. Kann man vielleicht benutzen wenn man nur ein sehr einfaches WP-Blog hatte, aber ansonsten ist es doch arg mager. Und bei grossen Blogs fliegt es einem nach einer Weile mit einem Fehler um die Ohren - der erlaubte Speicher ist erschöpft. Denn PHP benutzt von der Kommandozeile die Einstellungen für das CGI - und auch da ist der Speicherbedarf begrenzt. Dazu kommt dann noch, das es keinerlei Duplikateerkennung hat und deshalb lustig beim zweiten Lauf alles nochmal importiert.

Klingt so als ob ich mir da wohl doch was eigenes schreiben müsste, wenn ich das ganze mal ernsthaft ausprobieren wollte.

wp-style-switcher ist ein simpler CSS-Switcher für WordPress der ohne JavaScript oder ähnliches auskommt.

WordPress Related Entries plugin

わさび » Archives » WordPress Related Entries plugin - ein sehr nettes kleines Plugin das mittels des Volltextindex von MySQL verwandte Artikel sucht. Klar, das ist nur ein ziemlich einfacher Algorithmus und die Trefferqualität ist noch lange nicht so wie bei Google, aber ich habs trotzdem mal eingebaut. Wenn man auf die Detailseite eines Beitrags geht (z.B. durch Klick auf den Titel) wird eine Liste von bis zu 5 passenden anderen Artikeln angezeigt.

Ausserdem verspreche ich mir davon auch eine etwas bessere Positionierung von diversen älteren Beiträgen - ohne das ich immer dran denken muss da einen Link hin zu setzen (hey, meistens hab ich selber die schon wieder vergessen!). Und vielleicht hilft es auch den Leuten die über Suchmaschinen kommen etwas weiter.

Ausserdem ist es cool, und cool ist gut

It's cool, man!

Tempus Fugit TxFx.net WordPress Hack: Notify Users of Moderation - Besucher über erfolgte Moderation eines Kommentars informieren in Wordpress.

WP-Questionnaire Plugin

Ok, ich hab das Plugin für Wordpress 1.5 fertig. Simple Sache - ein Plugin und eine kleine Managementseite mit der man die diversen Fragen anlegen kann. Zur Installation lädt man das Plugin herunter und kopiert einfach die Files an die im readme.txt angegebenen Stellen und aktiviert das Plugin. Dann fügt man im Management bei Questionnaire einfach ein paar Fragen ein und fertig. Bei Kommentaren wird dann eine mehr oder minder blöde Frage gestellt, die mit einer möglichst kurzen Antwort befriedigt werden sollte (wir wollen die Kommentatoren ja nicht zu sehr nerven). Wenn die Antwort stimmt, wird der Kommentar - sofern nicht andere Anti-Spam-Methoden vorher zuschlagen - sofort freigegeben. Stimmt die Antwort nicht, wandert der Kommentar in die Moderation und muss vom Admin freigegeben werden.

Man kann natürlich auch einen heimlichen IQ-Test für seine Kommentatoren damit bauen und statt einfacher Fragen da kleine Rätsel reinpacken - nur wer diese löst darf sofort kommentieren

Ich hab das Plugin mal bei mir aktiviert, mal gucken ob es Auswirkungen auf das Kommentierverhalten der Leute hier hat. Ihr könnt ja mal eure Meinungen hier ablassen was ihr von so einer Anti-Spam-Methodik haltet.

Eine recht interessante mögliche Attacke auf jede Captcha-Lösung ist übrigens in den Kommentaren zu Eric Meyers WP-Gatekeeper zu finden: man kann einfach die Kommentarformulare sammeln und wegspeichern. Zusätzlich braucht man eine Site, auf der man diese verwenden kann - z.B. eine Site für freie Pornofilmchen. Dort präsentiert man die Captchas den Benutzern dieser Sites und nimmt deren Antwort an. Diese Antwort schickt man dann an das gespeicherte Formular und fertig ist der Kommentar. Natürlich kann man dagegen auch Massnahmen ergreifen - am besten warscheinlich ein codierter Timecode im Formular und eine Abweisung eines zu alten Timecodes, denn die Antworten durch die Pornogucker kommen ja vermutlich nicht sofort. Interessanter Ansatz, das ganze.

Update: das Plugin hat noch zwei Bugs. Zum Einen erwischt es auch Trackbacks (die natürlich die nötigen Variablen nie haben) und es kann im Moment noch recht einfach umgangen werden wenn man weiss wonach man im Formular gucken muss - man braucht nur ein Captcha zu lösen und kann damit dann andere Kommentare bespammen, in dem man die Kommentar-ID ändert. Das letztere ist übrigens bei sehr vielen Captcha-Lösungen ein Bug - man fällt einfach zu leicht drauf rein zu vergessen die Captchas an irgendeine Form von Seriennummer oder ähnliches zu binden so das ein Formular so in der Form nur einmal benutzt werden kann ...

Ich werd also in der nächsten Zeit da noch einen Update zu machen zu den Plugin.

Update 2: das Problem mit den Trackbacks und Pingbacks sollte jetzt gelöst sein. Das Problem mit dem Replay ist noch drin. Über das muss ich noch ein bischen grübeln. Meine bisherigen Lösungsansätze gefallen mir nicht so richtig dafür.

Update 3: ich habs jetzt erstmal hier wieder abgeschaltet. Ich krieg ja bisher keinen Kommentarspam und ohne zwingenden Grund ist selbst eine einfach zu beantwortende Frage ziemlich blöd ...

Eric's Archived Thoughts: WP-Gatekeeper

Eric's Archived Thoughts: WP-Gatekeeper ist ein sehr interessanter Ansatz gegen Kommentarspam: es wird einfach eine von vielen vorkonfigurierten Fragen gestellt, auf die ein Mensch sehr einfach eine Antwort geben kann, ein Spambot aber nicht. Wird in ähnlicher Form ja schon in diversen Blogs benutzt, aber hier ist es schön ausgearbeitet (allerdings könnte es meines Erachtens auch komplett als Plugin realisiert werden). Die Grundidee ist im Prinzip die eines Captchas - aber eben ein textuelles Captcha. Ein Mensch kann die Frage was ist 1+1 gut beantworten - ein Spambot wird da nicht weiter kommen. Klar, Spammer können Datenbanken von Fragen und Antworten anlegen. Aber wenn jeder seine eigene Sammlung von Fragen einrichtet, wird es sie nicht weit bringen. Für Kommentarspam sollte es eine sehr brauchbare Lösung darstellen.

Leider gibts für Trackbacks nicht so eine einfache Lösung ...

Update: da ich die Idee irgendwie witzig finde, schreibe ich gerade ein entsprechendes Plugin. Kann also sein das meine Kommentare heute nacht etwas seltsam sich verhalten

WordPress und rel="nofollow"

Auf der WordPress hackers list läuft - erwarteterweise - eine heftige Diskussion über rel="nofollow". Der Auslöser: Matt hat rel="nofollow" in WordPress eingebaut. Ein Teil als Filter, den könnte man leicht ausschalten. Aber ein anderer Teil ist direkt in den Code eingebaut (zum Beispiel wird jeder Autorenlink in den Kommentaren fest mit rel="nofollow" versehen). Und Matt will dafür keine Option einbauen, sondern sozusagen jeden dazu zwingen dieses Feature zu implementieren.

Was mich an der ganzen Geschichte besonders ärgert ist die absurde Argumentation. Sorry, aber was in meinem System mit Links passiert ist eine wesentliche Sache für mich als Sitebetreiber - da redet mir keiner rein. Ok, gut, ich kann meine Software patchen - trotzdem ist die Haltung den Anwendern gegenüber in diesem Punkt ziemlich arschig.

Der Red Alt - WordPress Index Builder ist ein praktisches Tool um sich online mit ein paar Klicks ein WordPress 1.5 Theme generieren zu lassen. Also nicht das ganze Theme, sondern die Templates und das CSS. Das eigentliche Design muss man natürlich selber machen, aber der Grundcode ist schonmal generiert.