Hi all,
ich habe ein Plugin, welches mir eine Tracking ID und ein und einen Accesstoken aus der Plugin Config ausgeben soll.
Plugin Name: Zzz
ich habe folgende Struktur:
Zzz.php
plugin.xml
Zzz
Zzz
1.0.0
(c) by Zzz AG
MIT
http://Zzz.com
Zzz AG
Erstveröffentlichung
First release
Subscriber/TemplateRegistration.php
pluginDirectory = $pluginDirectory;
$this->templateManager = $templateManager;
}
/**
* {@inheritdoc}
*/
public static function getSubscribedEvents()
{
return [
'Enlight_Controller_Action_PreDispatch' => 'onPreDispatch'
];
}
public function onPreDispatch()
{
$this->templateManager->addTemplateDir($this->pluginDirectory . '/Resources/views');
}
}
Resources/services.xml
access_token
daypaio API Access Token
daypaio API Access Token
Tragen Sie hier den Access Token aus Ihrem daypaio Portal ein.
Enter the access token from your daypaio portal here.
tracking_id
daypaio Tracking ID
daypaio Tracking ID
Tragen Sie hier die Tracking ID aus Ihrem daypaio Portal ein.
Enter the tracking id from your daypaio portal here.
linktrackingActivated
Linktracking aktivieren
Activate linktracking
1
views/frontend/index/header.tpl
{extends file="parent:frontend/index/header.tpl"}
{block name="frontend_index_header_javascript_tracking" append}
{if !empty($tracking_id)}
{literal}
(function(w,d,sc,src,sy,scr,id){w['SYSObject']=sy;w[sy]=w[sy]||function(){
(w[sy].q=w[sy].q||[]).push(arguments)},w[sy].l=1*new Date();scr=d.createElement(sc),
id=d.getElementsByTagName(sc)[0];scr.async=0;scr.src=src;id.parentNode.insertBefore(scr,id)})
(window,document,'script','https://data.getsystem.de/dc.js','sys');
sys('init','{/literal}{$tracking_id}{literal}')
{/literal} {if $linktrackingActivated == 1}
{literal}sys('linktracking',true){/literal}
{/if}{literal}
{/literal}
{/if}
daniel
Variable kam an und ist: {$danieltest}
{/block}
So und nun möchte ich im Subscriber definieren das ich die Variablen aus der config an ein *.tpl übergeben kann.
Mit
$tracking_id = Shopware()->Config()->get('tracking_id');
$access_token = Shopware()->Config()->get('access_token');
bekomme ich zwar die Werte aus der Config wenn ich Sie mit echo ausgebe, aber ich kann diese keinem Template zuweisen.
Wenn ich
$this->View()->assign('dma', $tracking_id);
$this->View()->assign('danieltest', $access_token);
verwende, bekomme ich ich immer nur folgenden Fehler
Fatal error : Uncaught Error: Call to a member function get() on null
Kann mir jemand sagen wie ich im Subscriber die Variablen an ein Template übergeben kann?
Vielen Dank