Ausgehend von 5 Ways to Debug WordPress, und dort vor allem den Punkten 1. und 3., habe ich mir jetzt ein Instrumentarium geschaffen, um WordPress-Plugins aufzuspüren, die zu lange brauchen/zu viele Ressourcen schlucken und diese auszusortieren bzw. auszubessern.
Folgende Plugins scheinen mir geeignet: Debug Bar und Debug Bar Extender erweitern den Admin-Bar, der mit WP 3.1 seinen Einstand feierte. Der Extender macht u. U. folgende händische Pimperei in der wp-config
überflüssig, auf die ebenfalls Andrew Nacin aufmerksam macht:
Many even run
WP_DEBUG
on their production websites. Generally, they log it (using eitherWP_DEBUG_LOG
or a server PHP error log) and force the hiding of errors, using:
define( 'WP_DEBUG', true ); // turn on debug mode
define( 'WP_DEBUG_LOG', false ); // dont log to wp-content/debug.log
define( 'WP_DEBUG_DISPLAY', false ); // don't force display_errors to on
ini_set( 'display_errors', 0 ); // hide errors
define( 'SAVEQUERIES', true ); // mysql queries are tracked and displayed
Temporär zuschalten lässt sich dann auch noch Debug Queries von Bültge: Das Plugin häng einen Ausdruck aller Queries an jede aufgerufene Seite an (nur sichtbar für Admins), so dass sich seitenspezifisch nach Bremsern suchen läßt.
Log Deprecated Notices, ebenfalls von Andrew Nacin, fügt dem Backend eine Liste abgeschriebener Aufrufe mit Tipps für Alternativen hinzu. Mal sehen, ob ich damit meine Blogs demnächst etwas geschmeidiger hingefummelt kriege, den Erfolg wird das TPC! Memory Usage Plugin messen, Probleme verspricht das Plugin Strictly System Check zu melden.
was zwar zunächst verheißungsvoll rüberkam – kosmetisch das laden von bildern, die im nicht sichtbaren bereich liegen, per lazy load plugin nach zeitlich hinten zu verschieben – führte bei mir zu regelmäßig verweigertem seitenneuaufbau nach dem abspeichern neuer beiträge: also nicht schön. Und mit Head Cleaner CSS und JS im Header aufräumen killt das header-bild – aber da bin ich durch die dutzenden einstell-möglichkeiten noch nicht durchgestiegen.
und einen einstieg in die wordpress-orientierte optimierung von datenbank und webserver liefert, für diejenigen mit dem nötigen know-how und den nötigen rechten, Elliot Back. Hilfreich in diesem Zusammenhang auch das Plugin Clean Options, das verwaiste Einträge aus der wp_options-Tabelle zu entfernen hilft. Gehts dabei um tausende
*_transient_*
-Einträge, dann hilft der sql-BefehlDELETE FROM wp_options WHERE option_name LIKE ('_transient%_rss_%')