Spätestens bei einem WordPress-Update kommt der Zeitpunkt wo man die Plugins deaktivieren sollte – um eine evtl. Fehlerquelle auzuschließen. Blöd ist dann nur wenn die Plugins in das Layout greifen oder eine Ausgabe im Frontend abliefern. Dann hagelt es Fehlermeldungen oder die Website baut sich nicht vollständig auf. Um das Problem zu umgehen, habe ich bei den letzten Updates einfach vorher ein Theme geladen wo keine Plugins integriert sind … ja, ich weiß, ich bin ein fauler Sack :-).
Wem das zu uncool ist, der kann den Plugin so einbauen, das vorher abfragt wird ob dieser überhaupt aktiv bzw. vorhanden ist. Wenn ja, dann soll die besagte Erweiterung ausgeführt werden:
<?php
if (function_exists('name_der_funktion')) {
name_der_funktion();
}
?>
Ein konkretes Beispiel mit dem Jerome’s Keywords-Plugin:
<?php
if (function_exists('the_post_keytags')) {
the_post_keytags();
}
else {
echo 'Plugin deaktiviert';
}
?>
Wir arbeiten seit 20 Jahren mit WordPress und bieten diverse Dienstleistungen rund um das System an. Kontaktiere uns für weitere Informationen oder für ein Angebot.
Hach… gut, dass man andere Leute hat, die für einen denken. 🙂
Genau das wollte ich mit allen Pugins machen, nachdem ich mal wieder Ärger mit nicht funktionierenden Trackbacks habe. Dann könnte ich mal testen, ob ein Plugin schuld ist. Und dann hatte ich das glatt wieder vergessen… 😳
[…] Vladimir “Perun” Simovic erklärt, wie man beim WordPress-Update oder Template-Arbeiten Fehler umgeht, indem man eine Pluginfunktion nur ausührt, wenn das Plugin aktiviert ist: Abfragen ob Plugin aktiv ist […]
[…] Die allgemeine Form einer solchen Existenzabfrage beschreibt Vladimir Simovic (aka ›Perun‹) – ich habe diese Abfrage soeben für alle meine Plugins eingebaut und gebe einmal zur Übersicht in nachfolgender Liste die jeweiligen Orte der Funktionsaufrufe und die zugehörigen Funktionsnamen zum leichteren Aufinden an: […]
[…] Das ist der Standardcode zum einbinden. Ich habe aber letztens darüber breichtet, dass es auch Sinn macht abzufragen ob Plugin aktiv ist: […]