Footer zu Beiträgen unter WordPress hinzufügen

Nachdem ein WordPress-Beitrag geschrieben und veröffentlicht wurde, wird er im Normalfall nicht mehr modifiziert. In meinem Fall wollte ich bestehende Beiträge um einen Footer ergänzen, konkret um auf die Möglichkeit hinzuweisen mich auf Steady zu unterstützen. Dazu existieren einige Plugins, welche allerdings in den meisten Fällen veraltet sind, wie z.B. Bottom of every post.

bottom-of-every-post
Preis: Kostenlos

Wesentlich aktueller ist das weiter gefasste Plugin Head, Footer and Post Injections, welches neben dem Beitragsfooter auch die Seitenheader und Footer anpassen kann.

Mit diesem Plugin kann für alle Beiträge ein Footer definiert werden. Dazu müssen die Einstellungen im Backend mit dem Punkt Header and Footer geöffnet werden und dort der Tab Posts ausgewählt werden. Wenn kein zusätzliches Plugin installiert werden soll, kann stattdessen das Theme angepasst werden. Dafür muss in der Theme-Datei functions.php eine Funktion angelegt werden:

function addPostFooter($content) {
  if(is_single()) {
    $content .= '<hr/>';
    $content .= 'Ich bin ein Testfooter';
  }

  return $content;
}

add_filter('the_content', 'addPostFooter');

Diese Funktion wird anschließend mittels add_filter zu den Filtern hinzugefügt und sorgt dafür dass der Footer an jedem Beitrag zu finden ist.

Datenbank und Medienoptimierung unter WordPress

Im Laufe des Lebens einer WordPress-Installation kann sich dass eine oder andere Datenfragment ansammeln. So existieren Einträge in der Datenbank welche nicht mehr benötigt werden oder es befinden sich Medien in der Mediathek, welche von keinem Eintrag mehr verwendet werden. Um dieser Probleme Herr zu werden existieren eine Reihe von Plugins zur Bereinigung der Installation.

Die Übersicht des Media Cleaners

Das erste Plugin, der Media Cleaner, ermittelt welche Medien sich in der WordPress-eigenen Mediathek befinden, aber nicht mehr genutzt werden. Nicht mehr genutzte Medien können anschließend gelöscht werden. Die Medien sollten allerdings mit Bedacht gelöscht werden; so erkennt der Media Cleaner keine URLs, welche sich normal im Text (sprich ohne a-Tag oder ähnliches) befinden. Auch kann es passieren das Bilder die laut dem Plugin nicht genutzt sind, falsch in den Beiträgen referenziert werden. So kann durch Domainumzüge und ähnliches der falsche Pfad zum Medium in den Beiträgen stehen. Hier muss der entsprechende Beitrag korrigiert werden.

Ein weiterer Punkt, auf der Liste zur Optimierung, ist die Datenbank. So speichert WordPress z.B. zu jedem Artikel die Revisionen. Pro Artikel können da schon ein halbes Dutzend und mehr Revisionen zusammenkommen. Mit dem Plugin WP-Optimize kann die Datenbank entsprechend bereinigt werden. Neben den Revision, werden die Tabellen optimiert und verwaiste Fragmente ebenfalls entfernt.

Eine weitere Sache bei der Optimierung von WordPress ist die Überprüfung der Verlinkungen. Mit dem Plugin Broken Link Checker kann dies bewerkstelligt werden. Nach der Installation überprüft das Plugin die Links innerhalb der Installation als auch externe Linkziele und stellt diese entsprechend da.

Broken Link Checker
Preis: Kostenlos

Bevor solche Optimierungen an der WordPress-Installation vorgenommen werden, sollte ein Backup der Datenbank und des Dateisystems erstellt werden. So kann die Installation, im Falle eines Fehler oder einer übereifrigen Optimierung, wieder hergestellt werden.

Plugins in der Custom Firmware der PSP installieren

Sobald auf einer Playstation Portable eine Custom Firmware installiert wurde, kann diese mit Hilfe von Plugins erweitert werden. Es existiert eine Fülle von Plugins für die Playstation Portable. Die meisten Plugins sind für die Version 6.60 der Firmware entwickelt worden. Allerdings laufen Sie meist ohne Probleme mit der letzten Version 6.61. Wenn dies nicht der Fall ist, kann man sich mit einem Plugin behelfen. Dieses sorgt dafür das für die Version 6.60 entwickelte Plugins auch unter der Version 6.61 laufen. Ich persönlich nutze zwei Plugins:

  • PRXShot
  • Game Categories Lite

Das erste Plugin dient dazu Screenshots auf der Playstation Portable zu machen, während das zweite Plugin eine Möglichkeit bietet die installierten Anwendungen zu kategorisieren. Nachdem man ein solches Plugin heruntergeladen hat, stellt sich allerdings die Frage wie dieses installiert wird. Die Plugins selber bestehen meist aus einer PRX-Datei oder einem Ordner mit einer solchen Datei und zusätzlichen Daten. Diese Datei bzw. der Ordner muss in das Verzeichnis SEPLUGINS auf der PSP bzw. dem Memory Stick kopiert werden. Anschließend muss festgelegt werden in welche Kontext das Plugins aktiv sein soll. Die Playstation Portable kennt dabei folgende Kontexte:

  • GAME
  • GAME150
  • POPS
  • VSH

Bei GAME wird das Plugin aktiviert, sobald ein PSP-Spiel gestartet wurde. GAME150 ist der Kontext für Homebrew-Software. Der POPS-Kontext kommt zum tragen wenn ein Playstation 1 gestartet wird. Der letzte Kontext mit dem Namen VSH dürften den meisten Leuten unter dem Namen XMB bekannt sein. Es handelt sich um das Menü der Playstation Portable. Um zu definieren in welchem Kontext das Plugin laufen soll, müssen im SEPLUGINS-Verzeichnis eine Reihe von Dateien angelegt werden:

GAME.TXT
GAME150.TXT
POPS.TXT
VSH.TXT

Soll nun ein Plugin in entsprechenden Kontext aktiv sein, so muss dieses in der dazugehörigen Datei aktiviert werden. Für das Plugin PRXShot würde dies z.B. so aussehen:

ms0:/seplugins/prxshot/prxshot.prx 1

Jedes Plugin kann in mehreren Kontexten aktiviert werden, allerdings ist darauf zu achten, das nicht jedes Plugin in jedem Kontext läuft. Meist ist dies aber in der Dokumentation des entsprechenden Plugins beschrieben. Sobald das Plugin aktiviert ist, kann es in allen Kontexten, für die es aktiviert wurde, genutzt werden.

Workaround für Episoden Seiten im Podlove Publisher

Im Podlove Publisher gibt es in den Experteneinstellungen die Möglichkeit Episoden Seiten zu aktivieren. Gemeint ist damit nicht anders als alle Podcastbeiträge auf einer zusätzlichen Seite anzeigen zu lassen. Seit der Version 2.7.0 des Podlove Publisher funktionierte dieses Feature bei mir nicht mehr.

Die Episoden Seite für alle veröffentlichenden Podcasts

Hintergrund war der Commit b4d9f14; hier gab es unter anderem eine Änderung in der Datei permalinks.php. Wenn nun die URL für die Episoden Seiten eingestellt wurde funktionierte diese nicht mehr. Stattdessen gab es nur die Meldung das die Seite nicht existiert. Als Workaround habe ich die permalinks.php-Datei wieder um folgenden Quellcode aus dem Commit erweitert:

// Add archive pages
if ( 'on' == \Podlove\get_setting( 'website', 'episode_archive' ) ) {
	$archive_slug = trim( \Podlove\get_setting( 'website', 'episode_archive_slug' ), '/' );

	$blog_prefix = \Podlove\get_blog_prefix();
	$blog_prefix = $blog_prefix ? trim( $blog_prefix, '/' ) . '/' : '';

	$wp_rewrite->add_rule( "{$blog_prefix}{$archive_slug}/?$", "index.php?post_type=podcast", 'top' );
	$wp_rewrite->add_rule( "{$blog_prefix}{$archive_slug}/{$wp_rewrite->pagination_base}/([0-9]{1,})/?$", 'index.php?post_type=podcast&paged=$matches[1]', 'top' );
}

Der Quellcode muss an das Ende der Funktion podlove_add_podcast_rewrite_rules angetragen werden. Damit funktioniert das Episoden Seiten-Feature bei mir wieder ohne Probleme. Natürlich muss dieses Prozess bei jedem Update des Podlove Publisher wiederholt werden.

Rollback-Plugin für WordPress

Neben meinen eigentlichen WordPress-Instanzen betreibe ich einige Entwickler-Instanzen. Dort habe ich ab und an das Problem, das ich bestimmte Plugins in einer älteren Version nutzen möchte. Natürlich kann man nun für jeden Fall die gewünschte Version herunterladen und manuell installieren.

Über WP Rollback können Plugins auf beliebige Versionen zurückgerollt werden

Einfacher geht dies mit dem WordPress-Plugin WP Rollback. Das Plugin ermöglicht es über die administrative Oberfläche von WordPress beliebige Plugins auf beliebige Versionen zurückzusetzen. Dazu muss nur das passende Plugin und die gewünschte Version ausgewählt werden und anschließend wird der Rollback durchgeführt.

Der Quelltext des Plugins ist auf GitHub zu finden. Lizenziert ist das Plugin unter der GPL in Version 2 und damit freie Software.