Neu Plugin-Entwicklung

Wie mach ich plugin-variablen im Template verfügbar ?

  • Test

    Votes: 0 0,0%
  • Test2

    Votes: 0 0,0%

  • Gesamtzahl der Stimmen
    0

IMGSaibh

Aktives Mitglied
9. Juni 2020
43
1
Liebe Community,
ich programmiere gerade ein Plugin uns stehe vor Problem:
Wie mache ich einen bool flag im .tpl-file verfügbar, deren Wert je nachdem was im Consent-Manager gesetzt ist, zugewiesen wird.
Ich habe mir das "jtl-test" Plugin als Beispiel genommen und diese Code-Stelle gefunden. Leider kann ich keine Variable in die Klasse schreiben die dann im Template verwendet werden kann.

if ($state === true) {
// plugin has consent - do something
}

meine aktuelle Implementierung sieht so aus:
Code:
        $dispatcher->listen('shop.hook.' . \HOOK_LETZTERINCLUDE_INC, function () use ($plugin) {
            if ($plugin->getConfig()->getValue('supreme_webgains_add_consent_item') === 'Y') {
                $state = Shop::Container()->getConsentManager()->hasConsent(self::CONSENT_ITEM_ID);
                if ($state === true) {
                    // plugin has consent - do something
                    // $this->webgainshelper->setWebgainsFlag(true);
                    Shop::Smarty()->assign('varName', true);
                }
                else
                {
                    // $this->webgainshelper->setWebgainsFlag(false);
                    Shop::Smarty()->assign('varName', false);
                }
            }
        }, 10);

Auch die Funktion Shop::Smarty()->assign('variableName', false); funktionierte nicht.

Vielen lieben Dank für euere Unterstützung.
 

krahni

Mitglied
7. Juli 2022
44
6
Also bei mir geht das mit:
...
use JTL\Events\Dispatcher;
use JTL\Events\Event;
use JTL\Plugin\Bootstrapper;
use JTL\ Shop;
use JTL\Smarty\JTLSmarty;
...
$smarty->assign('output', $output);


im Template dann irgendwo:
...
{if !empty($output)}
{$output}
{/if}
...


als Beispiel, das if muss nicht
 

IMGSaibh

Aktives Mitglied
9. Juni 2020
43
1
Bei mir geht es leider nicht. Meinst du ich kann die Implementierung die ich oben geteilt habe so lassen? Wenn ich im Template

PHP:
    {if $isWebgainsSet == true}
        {'webgains active'}
    {/if}

    {if $isWebgainsSet == false}
        {'webgains not active'}
    {/if}

mache geht er kommen ich nur in den else Zweig. Ich nehme an das entweder assign falsch verwendet wird oder der state des ConsentManager wird nie true.
Kann ich das irgendwie überprüfen ?
Auch der Debugger sagt folgendes:
Undefined index: isWebgainsSet
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu Plugin Allgemeine Fragen zu JTL-POS 1
Neu Betatester gesucht - Plugin: Geizhals Basket Tracking inkl. EMID Übermittlung Plugins für JTL-Shop 0
Neu JTL-Shop "Plugin-Vorlage" gesucht User helfen Usern 3
Neu Cross Selling Plugin Plugins für JTL-Shop 1
Neu Installation von Plugin PayPal Check-Out fehlgeschlagen, keine Verbindung zum Webshop Plugins für JTL-Shop 6
Neu Beim Versuch Paypal-Plugin mit Paypal-Konto zu verbinden Shop nicht mehr erreichbar Plugins für JTL-Shop 2
Neu Neues Plugin: Produktbundles mit Rabatten Plugins für JTL-Shop 0
Neu Widerrufsformular als kostenloses Plugin für Shops ab 5.1.5 Plugins für JTL-Shop 9
Neu Neues Plugin: Kaufimpuls Paket Plugins für JTL-Shop 0
Neu Paypal Checkout Plugin - Ist vorhanden aber nichts funktioniert Plugins für JTL-Shop 9
Neu Neues Plugin: Sauberes Meta-Tracking für JTL-Shop 5 (Pixel + CAPI + Consent) Plugins für JTL-Shop 0
Neu 📢 Plugin "Kreditlimit Plugin für JTL-Shop 5 " von CIN GmbH Plugins für JTL-Shop 0
Neu Händlerbund-Plugin lädt Texte herunter, ersetzt sie aber nicht im Frontend Technische Fragen zu Plugins und Templates 1
Neu JTL-WaWi + ESL Connector — Entwicklung mit Kostenaufteilung gesucht Business Jungle 0
Neu Hilfe bei der Entwicklung gesucht: Werde Tester für meine JTL-Shop Plugins Plugins für JTL-Shop 0

Ähnliche Themen