Tools für OXID Entwickler

Tools für OXID Entwickler 2016-10-16T18:07:24+00:00

Für meine täglichen Arbeiten an OXID Shops habe ich ein Modul entwickelt, das einige hilfreiche Funktionen für Entwickler bringt.
Es fing mit einem einfachen Cache-Cleaner an und mittlerweile ist es eine kleine Sammlung aus mehreren Modulen, die da wären:

dev-core – Cache leeren oder ganz deaktivieren

Das ist das Haupt-Modul, es beinhaltet gemeinsame Templates und JavaScripts für andere Module, aber auch folgende Funktionen:

  1. Moduleinstellung: Language Cache deaktivieren (Übersetzungen werden immer wieder neu eingelesen)
  2. Moduleinstellung: Smarty Cache deaktivieren (Alle Templates und Blocks aus Modulen werden immer neu kompiliert)
  3. Cache leeren
tmp/ leeren und views aktualisieren

Dieses Modul muss aktiviert werden, damit andere Module funktionieren!


dev-console– einfach und schnell auf Framework Funktionen zugreifen

OXID Framework bringt sehr viele Funktionen mit, die sogar einen erfahrenen Entwickler durcheinander bringen können.

Dieses Modul ermöglicht einen einfachen Zugriff auf die meisten PHP Funktionen des Frameworks, wie z.B.:

  • Shop-Konfigurationsparameter aus der Datenbank abfragen und dekodieren
  • Objekte aus beliebige Models erstellen und laden
  • deren Funktionen prüfen
  • Code schnell und einfach testen, ohne ihn erst im Modul einbauen zu müssen

Über die Console können alle Models geladen und Funktionen von oxAdminView bzw. oxAdminDetails ausgeführt werden.
Zugriff auf Frontend und Backend Controllern und deren Funktionen ist nicht möglich.

Screenshots mit weiteren Beispielen:


dev-editor– Dateien online bearbeiten

Diese Modul integriert einen vollwertigen webbasierten online Editor „Codiad“ (http://codiad.com/) ins Shop Backend, mit dem man alle möglichen Dateien direkt online bearbeiten kann.

Einrichtung: Wichtig! Bitte aufmerksam lesen!

Aus Sicherheitsgründen erhält nicht jeder Shop-Admin standardmäßig einen Zugang zum Editor.
Es werden gesonderte Zugangsdaten für den ersten Benutzer, der das Modul aktiviert und aufruft, erstellt und gespeichert. Der Benutzername entspricht der Email-Adresse des Benutzers im Shop und das Benutzer-Passwort ist das Passwort für die OXID Datenbank aus config.inc.php.
So ist es halbwegs sichergestellt, dass nur die Person drankommt, die auch so drankommen darf.
Sollten weitere Zugänge für anderen Shop-Admins erstellt werden, kann dies über die eigene Benutzerverwaltung des Editors erreicht werden.

Der Editor benötigt Schreibrechte für Ordner unterhalb von modules/vt-devutils/dev-editor/codiad/data/.
Sofern irgendwelche Schreibrechte fehlen, wird beim Aufruf des Editor ein entsprechender Hinweis angezeigt.


dev-logs– Fehler-Logs im Backend einsehen

Es gibt zwei wichtige Logs für den Shop:
– log/EXCEPTION_LOG.txt
– Webserver Error Log
Dieses Modul kann beide Logs erfassen und in einer gut lesbaren Forum im Backend anzeigen.

Damit der Webserver Fehler Log erfasst wird, muss dieser unbter log/error.log Verzeichnis abgelegt werden. Hierzu muss der folgende Code in der config.php.inc hinterlegt werden:

Screenshots der Funktionen:

Geplante Features:

andere wichtige Logs einbinden, z.B. paypal, paypal plus oder von anderen Modulen


dev-mails– Vorschau für E-Mail Templates

Mit diesem Modul erhält man eine Vorschau für die wichtigsten Shop E-Mails direkt im Admin Bereich.

Diese Vorschau dient nur zur groben Orientierung. Alle E-Mails müssen vor der Live-Schaltung auf jeden Fall in einem echten E-Mail Client getestet werden.

Wichtige Hinweise:

  • Bestelleingang-Bestätigung generiert eine E-Mail aus dem gespeicherten Warenkorb im Frontend. D.h.: die Funktion „Warenkörbe für angemeldete Benutzer speichern“ muss aktiv sein und der Administrator Benutzer muss ein paar Sachen im Warenkorb haben.
  • Bestellung wurde versandt Email erforder eine getätigte Bestellung bei dem Administrator Benutzer

E-Mail Quellcode

wird im Ordner logs/ als HTML Datei abgelegt. So kann man den Code für externe Dienste wie CSS Inliner oder Test-Tools benutzen.

Mögliches Workflow für die Entwicklung von E-Mail Templates:

  1. Template gestalten und die Vorschau Funktion nutzen
  2. Wenn die E-Mail gut aussieht, den Code der E-Mail durch CSS-Inliner laufen lassen
  3. den fertigen Code testen (z.B. mit Litmus PutsMail oder mit diesem Tool: http://ctrlq.org/html-mail/)
  4. Templates nachbessern und nochmal testen


dev-modules– Modul-Einträge in der Datenbank prüfen

„dev-modules“ – Modul-Einträge in der Datenbank prüfen

Wenn irgendein Modul einfach nicht funktionieren will, landet man zwangläufig in der Datenbank und muss die gespeicherten Metadaten prüfen.
Dieses Modul ruft alle modulbezogenen Daten aus der Datenbank ab und zeigt die Ergebnisse in einer leicht lesbaren Form an.
Zusätzlich dazu werden die Pfade der Dateien geprüft, so kann man viel leichter die Fehler finden und beseitigen.

Screenshots:


Download + Installation

vt-DevUtils kann direkt von github heruntergeladen werden:
https://github.com/vanilla-thunder/vt-devutils
Danach das Archiv entpacken, „vt-devutils-master“ in „vt-devutils“ umbenennen und in den Ordner modules/ im Shop hochladen.

Eine Installation per git ist ebenfalls möglich: