Script-Auslagerungsverzeichnis

  • Hallo,


    ist es seit dem Update korrekt, das z.Bsp. externe Javascriptdateien in ein Verzeichnis namens js kopiert werden, was ich zunächst selbst erstellen muss?


    Bei einem ersten Test ist mir aufgefallen, dass externe Ressources nun über ../assets/js/Dateien oder Unterordner aufgerufen werden.
    Bislang war es ja so, dass der Zugriff direkt über ../assets/Dateien oder Unterordner erfolgte.

  • Ich kann mich an keine diesbezgl. Änderung erinnern. Eventuell ist das spezifisch im von Ihnen verwendeten Layout?


    Um welches Layout und welche .js Datei (beispielhaft) handelt es sich denn?

  • Hallo,


    das verwendete Layout ist Smart Responsive.
    Meine Verzeichnisstruktur für das Widget siehe Screenshot - Struktur_1(mit dieser Verzeichnisstruktur funktioniert es nicht!):
    Meine Widget.json ist im Bereich assets folgendermaßen aufgebaut:


    Rufe ich das Widget in dieser Form auf, gibt es einen Scriptfehler. Wie auf dem Screenshot erkennbar, wird auch auf ein Verzeichnis js verwiesen, dass es ja aber gar nicht gibt.
    Lege ich also das js Verzeichnis an und verschiebe die fancyBox Verzeichnisse dorthin, dann funktioniert es. Siehe Screenshot Struktur.


    Ich bin da nun etwas verunsichert, da im assets Bereich der widget.json der Dateipfad so ja gar nicht angegeben ist.

  • Ok, könnte es sein, dass das Widget hier versucht auf den ZP integrierten Fancybox Dateipfad zuzugreifen?



    C:\.....\.....\AppData\Local\Zeta Producer 12.5\Packaging\Widgets\_Shared\js\fancybox

  • Hallo,


    ich denke das Problem könnte daran liegen, dass Sie im widget.json generell Dateien bundeln. Nur JavaScript oder CSS-Dateien können in sogenannten Bundles (Bündeln) zusammengefasst werden. Sonstige Dateien können nicht über den Bundle-Befehl eingebunden werden, sondern müssen per "copy" eingebunden werden.


    Versuchen Sie mal folgendes:


  • PS: fancybox 1.3.4 wird standardmäßig immer bereits geladen. Das könnten Sie ganz in ihrer widget.json auslassen.


    Wir laden fancybox über das widget _shared. Wenn Sie sich im Widget _Shared die assets.json ansehen, sehen Sie was geladen wird. Sie können das auch in jedem Projekt sehen, wenn Sie im Projekt den Ordner "preview" (das sind Dateien generell nicht gebundelt und so sieht man die Einzelteile besser) öffnen, dann liegen viele unserer mitgelieferten JavaScript Dateien ja in assets/js…


    Fancybox ist also in jedem Projekt bereits im JavaScript-Bundle enthalten. Ebenso die entsprechenden CSS-Dateien im css-Bundle.