Ich habe eine funktionierende Extbase-Erweiterung, die ein Formular für das Frontend anzeigt, abhängig davon, welche Optionen im Backend ausgewählt werden, während es auf eine Seite gesetzt wird.Die Konstanten einer Extension im konstanten Manager verfügbar machen
Ich verwende eine Flexform für diese Optionen (hauptsächlich die Formularaktion, aber auch einige Felder).
Alles funktioniert gut, außer für die Konstanten. Da diese Formularvorlage möglicherweise für verschiedene Websites geändert wird, auf denen sie verwendet wird, möchte ich den Vorlagenstammpfad ändern können, damit ich benutzerdefinierte Vorlagen definieren kann.
Ich habe einen constants.txt und setup.txt in form_plugin/Konfiguration/TypoScript
Die Konstanten wie folgt aussehen:
plugin.tx_nlmymail_newsletter {
view {
# cat=plugin.tx_nlmymail_newsletter/file; type=string; label=Path to template root (FE)
templateRootPath = EXT:nl_mymail/Resources/Private/Templates/
# cat=plugin.tx_nlmymail_newsletter/file; type=string; label=Path to template partials (FE)
partialRootPath = EXT:nl_mymail/Resources/Private/Partials/
# cat=plugin.tx_nlmymail_newsletter/file; type=string; label=Path to template layouts (FE)
layoutRootPath = EXT:nl_mymail/Resources/Private/Layouts/
}
persistence {
# cat=plugin.tx_nlmymail_newsletter//a; type=string; label=Default storage PID
storagePid =
}
}
Meine setup.txt wie folgt aussieht:
plugin.tx_nlmymail_newsletter {
view {
templateRootPaths.0 = {$plugin.tx_nlmymail_newsletter.view.templateRootPath}
partialRootPaths.0 = {$plugin.tx_nlmymail_newsletter.view.partialRootPath}
layoutRootPaths.0 = {$plugin.tx_nlmymail_newsletter.view.layoutRootPath}
}
persistence {
storagePid = {$plugin.tx_nlmymail_newsletter.persistence.storagePid}
}
}
Also nach this sollte dies ausreichend sein. Vielleicht vermisse ich hier ein Stück.
In meinem ext_tables.php ich benutze
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile($_EXTKEY, 'Configuration/TypoScript', 'mail connection');
Um die TypoScript zu umfassen.
Muss ich eine benutzerdefinierte Kategorie für meine Konstanten erstellen?
Ich habe mit dem bootstrap_package Plugin verglichen, aber ich kann nicht den entscheidenden Unterschied finden.
Wenn mir jemand in die richtige Richtung zeigen könnte, vielleicht ein Teil der Dokumentation, die ich vermisse, wäre ich sehr dankbar.
Haben Sie Ihre statische Datei nach der Vorlage eingefügt? Wenn ja, dann eine interessante Sache, die ich sehe: Warum hast du das einmal in deinem Beispiel: form_plugin/Configuration/TypoScript und einmal plugin.tx_nlmymail_newsletter? Sind sie gleich? Der Code selbst sieht gut aus. –
Ja, das war ein Schreibfehler. Was genau meinst du mit "deine statische Datei mit der Vorlage einbinden"? – Eupides
Er meint, du solltest statische Vorlage aus deiner Root-Vorlage http://screencast.com/t/kBRp8Y5G1 hinzufügen. Außerdem kannst du die Variable "settings" einstellen, damit du sie von deinem Controller bekommen kannst wie $ this-> settings –