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?
Gestern wurde das neue JSXGraph Release 0.71 (vgl. freshmeat und sourceforge) angekündigt.
Damit gibt es auch eine neue Version des MediaWiki-Plugins direkt auf der zugehörigen Seite und das WordPress-Plugin ist auch in aktueller Version zu haben.
Beim MediaWiki-Plugin gab es noch einen kleinen Securityfix: es darf die codebase nun nicht mehr als Parameter übergeben werden, da sonst beliebiger Code nachgeladen werden könnte, wie PD Dr. Alfred Wassermann bemerkt hat.
Schaut euch das Release auf jeden Fall mal an, es haben sich einige tolle Sachen geändert bzw. wurden hinzugefügt.
Soeben habe ich eine neue Version von JSXGraph hochgeladen (lokale Kopie, MediaWiki) und das Package für das JSXGraph WordPress Plugin fertiggestellt.
Mein Developeraccount bei WordPress ist angemeldet und wartet noch auf Freischaltung.
Mehr zu dem Plugin gibts dann direkt auf der WordPress JSXGraph Plugin Seite.
Bis dahin kann ich euch folgenden Artikel empfehlen, den ich im yuiblog gefunden habe:
Wie überschreibe ich alert() mit YUI Dialog?
Hier ist der erste funktionstüchtige Beiträg mit JSXGraph-Konstruktionen.
Einmal über JavaScript-Code:
und einmal mit der Übergabe eines Filestrings:
Damit zählt es als funktionstüchtig, auch wenn momentan noch pre-Tags um die JavaScript-Konstruktionen angegeben werden müssen. Hat dazu vielleicht jemand eine Idee?