Hallo,
ich habe erst vor kurzem mit der Shopware-Entwicklung angefangen, doch habe ich es mittlerweile bereits geschafft ein eigenes Plugin zu erstellen, welches bei der Registrierung eines Users ein zusätzliches Feld in das Adress-Formular einfügt und dieses dann auch in der Datenbank als Attribut ablegt. Genau dieses Feld möchte ich nun aber auch in den PDF-Rechnungsbeleg einfügen, weshalb ich im default-Template (/documents/index.tpl) den Block „document_index_address_countryData“ erweitern wollte.
Da ich dies nicht über ein eigenes Theme machen will, sondern direkt über das Plugin selbst, gehe ich davon aus, dass ich mein Plugin für ein weiteres Event mittels getSubscripteEvents() registrieren muss, wo das Template-Verzeichnis meines Plugins berücksichtigt werden soll.
Leider ist es mir bis dato nicht gelungen das richtige Event zu finden - kann mir hier vielleicht jemand einen Tipp geben?
Hab schon folgende versucht: Shopware_Controllers_Backend_Order, Shopware_Components_Document, Enlight_Controller_Action_PostDispatchSecure_Backend
Mein Plugin-Template hab ich unter: /custom/plugins/MeinPlugin/Resources/views/documents/index.tpl
Beim Auslösen des Events rufe ich folgende Funktion auf um das Plugin-Templateverzeichnis anzufügen:
public function addTemplateDir(\Enlight_Event_EventArgs $args)
{
$controller = $args->getSubject();
$controller->View()->addTemplateDir( __DIR__. '/Resources/views/');
}
Meine Plugin-index.tpl sieht derzeit noch recht einfach aus:
{extends file="parent:documents/index.tpl"}
{block name="document_index_address_countryData" append}
Hallo Welt aus Plugin-Template
var_dump: {$User.$address|var_dump}
{/block}
Besten Dank für eure Hilfe