WordPress mit Lastproblemen

In den letzten Tagen hatte ich mit einer WordPress Installation einige Probleme. Diese äußerten sich darin, das die Webseite bei jedem Aufruf hohe Last erzeugte. Im Laufe der Zeit wurde die Laste dabei immer größer. Irgendwann gab der Server nur noch einen HTTP 500 Error von sich. Im Backend äußerte sich das ganze mit einer weißen Seite, was im Normalfall auf zu wenig Speicher für PHP hinweist.

In diesem Fall lag das Problem an anderer Stelle. Beim Überprüfen der Datenbank stellte sich heraus das die Tabelle „wp_options“ enorm groß war. Im Normalfall ist diese Tabelle ein paar MiB groß. In meinem Fall war sie knapp 600 MiB groß und bestand aus über 500.000 Einträgen. Bei diesen Dimensionen wird klar, wohin die Performance verschwunden ist. Im konkreten Fall gab es viele „transient“ und „displayed_galleries“ Einträge. Letzte Einträge werden vom Plugin „NextGEN Gallery“ erzeugt. Die „transient“-Einträge enstehen durch Caches (unter anderem für den RSS-Feed). Möchte man die Datenbank bereinigen helfen folgende SQL Befehle:

DELETE FROM wp_options WHERE option_name LIKE ('_transient_%')
DELETE FROM wp_options WHERE option_name LIKE ('displayed_galleries%')

Anschließend sollte die Tabelle optimiert werden, damit der von den gelöschten Einträgen belegte Speicherplatz wieder freigegeben wird.

Update:
Mittlerweile gibt es auch einen entsprechenden Artikel im WordPress Forum.

Weitere Informationen gibt es unter:
http://www.staze.org/wordpress-_transient-buildup/

Aktuelle NextGEN Version und das „NOT Upgrade-safe“ Problem

Seit der 2.x Version des WordPress Plugins „NextGEN“ scheinen sich ja die Probleme zu häufen. Die aktuelle Version 2.0.7 begrüßt einen dabei nach der Installation mit der Meldung:

WARNING: NextGEN Gallery Stylesheet NOT Upgrade-safe

nggallery.css is currently stored in /www/htdocs/wp-content/themes/examika/nggallery.css, which isn't upgrade-safe. Please move the stylesheet to /www/htdocs/wp-content/themes/examika/nggallery.css to ensure that your customizations persist after updates.

Wie man sieht behauptet NextGEN, dass die Datei unter „/www/htdocs/wp-content/themes/examika/nggallery.css“ unter Umständen bei einem Update überschrieben wird. Die Lösung die NextGEN vorschlägt ist es die Datei an exakt den gleichen Ort zu packen. Das klingt nicht nur komisch, sondern ist auch so.

Dabei handelt es sich um ein Problem mit dem Plugin. Photocrati ist mittlerweile auch dabei das ganze zu überprüfen, so das man hier auf das nächste Update warten sollte. Möchte man das Problem trotzdem gelöst haben, so kann man die „nggallery.css“ in den Ordner:

/wp-content/ngg_styles/

packen. Damit sollte dann auch die entsprechende Meldung verschwinden.

WordPress Plugin zur Vorstellung von Apps

Manchmal möchte man eine iOS oder eine Android App vorstellen. Seit einiger Zeit gibt es dafür ein kostenloses WordPress Plugin welches auf den Namen „WP-Appbox“ hört und über das WordPress Pluginverzeichnis heruntergeladen werden kann. Damit sieht eine App dann im Blog wie folgt aus:

‎Micro Miners
Preis: 2,29 €

Alternativ ist auch die Variante mit einigen Screenshots möglich:

‎Micro Miners
‎Micro Miners
Entwickler: BonusLevel.org
Preis: 2,29 €
  • ‎Micro Miners Screenshot
  • ‎Micro Miners Screenshot
  • ‎Micro Miners Screenshot
  • ‎Micro Miners Screenshot
  • ‎Micro Miners Screenshot
  • ‎Micro Miners Screenshot
  • ‎Micro Miners Screenshot
  • ‎Micro Miners Screenshot
  • ‎Micro Miners Screenshot
  • ‎Micro Miners Screenshot

Neben dem Appstore von Apple, werden auch Google Play, Android Pit, Windows Store (auch die Windows Phone Variante), der Firefox Marketplace und der Chrome Web Store unterstützt. Die Anleitung für das Plugin ist dabei unter http://www.blogtogo.de/wp-appbox-app-badge-fuer-google-play-mac-app-store-windows-store-windows-phone-store-co/ zu finden.

WordPress ohne FTP Zugang aktualisieren

Wenn man unter WordPress ein Plugin aktualisieren oder auch WordPress selbst auf die neuste Version bringen möchte, so wird man aufgefordert Verbindungsinformationen für den entsprechenden FTP Server einzugeben.

Die Aufforderung Verbindungsinformationen einzugeben

Dankenswerter Weise geht es aber auch einfacher. So legt man im Verzeichnis „wp-content“ einfach einen Ordner „upgrade“ an. Diesem Ordner sowie den Ordnern „plugins“ und „themes“ gibt man anschließend per FTP Schreibrechte. Nun muss nur noch die „wp-config.php“ bearbeitet werden. In diese fügt man folgende Zeilen hinzu:

/* Ermöglicht das Update ohne FTP */
define('FS_METHOD', 'direct');

Damit wird es ermöglicht Updates ohne FTP durchzuführen.