Twig und Smarty

Hey :slight_smile:

Ich bin neu hier und befasse mich erstmalig mit OXID. Ich möchte gerne ein neues Module erstellen und dort JS Dateien einbinden.
Erstellt habe ich das Module mit “composer require oxid-esales/module-template”. Wie ich die JS Dateien einbinde bin ich bereits fündig geworden. Eine Frage dazu ist bei mir noch offen: im Ordner views gibt es jeweil smarty und twigs Unterordner. Soweit ich das verstanden habe sind beide PHP template engines. Aber welche templates werden eigentlich gezogen dann? Twig oder Smarty? Kann ich das beeinflussen?

LG

Hi Falix,

OXID 6 läuft standardmäßig mit Smarty, OXID 7 im Standard mit Twig.

Für beide gibt es entsprechende Pakete, um zur jeweils anderen Templateengine zu wechseln. Ein Wechsel ist jedoch durchaus tricky und meist nicht sinnvoll, weil es dafür dann kaum Support durch Module etc. gibt. Wenn es geht, bleibe bei der Standardengine.

Im views Ordner sollte es eigentlich entweder nur Twig oder nur Smarty geben:

https://docs.oxid-esales.com/developer/en/latest/update/eshop_from_65_to_7/install_smarty_engine.html

Wie hast du das geschafft? :thinking:

Ich habe composer require oxid-esales/module-template genutzt. Aber ich sehe gerade, dass das lediglich für Testzwecke bzw. zum ausprobieren genutzt werden soll und nicht um eigene Module zu erstellen. Deswegen ist beides auch noch drin. Ich dachte damit könnte ich einfach alle files etc. laden, um ein eigenes Module zu erstellen.

https://docs.oxid-esales.com/developer/en/latest/development/modules_components_themes/module/installation_setup/installation.html

Gibt es eine andere Möglichkeit alle files für die Module Erstellung mit einem composer befehl zu kreieren?

Für den Start würde ich mich an das hier halten:

https://docs.oxid-esales.com/developer/en/latest/development/modules_components_themes/module/skeleton/index.html

und