Wie im vorherigen Post erläutert gab es letzte Woche ein neues JSXGraph Release und somit musste das WordPress Plugin dazu auch aktualisiert werden.
Die Gelegenheit habe ich genutzt um folgende Änderungen einzubauen:
1.) Jetzt werden die vorhandenen Bibliotheksdateien im Pluginverzeichnis überprüft. Vorher wurde von dem Skript aus der Pfad überprüft, was zwangsläufig zu einem Fehler führt.
Dazu als Tipp an alle: bei einem WordPress Plugin immer die Pfade aus dem “root-Verzeichnis” aus überprüfen, zum Beispiel: if(file_exists(‘wp-content/plugins/jsxgraph/jsxgraph.css’))
2.) In Abhängigkeit bereits geladener Javascript-Bibliotheken wie prototype oder jquery wird jetzt keine Bibliothek geladen oder prototype.
Der Code dazu sieht folgendermaßen aus:
if(
!(typeof Prototype != 'undefined' && Prototype.Version)
&&
!(typeof jQuery != 'undefined' && jQuery.fn.jquery)
) {
var scr = document.createElement('script');
scr.src = '". get_bloginfo("wpurl") ."/wp-includes/js/prototype.js';
document.getElementsByTagName('head')[0].appendChild(scr);
}
D.h. falls weder prototype noch jquery bekannt sind, wird das mit dem Blog ausgelieferte prototype dynamisch nachgeladen.
Gibt es dazu evtl. eine elegantere Möglichkeit?