Plugin Einstellungen werden nicht übernommen / Fehlverhalten

Ich habe ein kurioses Problem.

Ich habe Einstellungen in einen Plugin vorgenommen. Danach habe ich das Plugin deinstalliert und wieder neu installiert.

Nun ist es so, dass egal welche Einstellungen ich im Plugin mache - Diese werden komplett ignoriert. Im Frontend werden die alten Plugin Einstellungen ausgegeben, im Plugin selber sind die aber gar nicht mehr aktiv.

Beispiel: Ich habe in den Plugin Einstellungen foo auf true gehabt. Nach Neu-Installation des Plugins ist foo in den Plugin Einstellungen auf false. Im Frontend wird foo weiterhin true ausgegeben, obwohl es in den Einstellungen auf false ist. Ebenso verhält es sich mit Text. Zuvor hinterlegter Text wird weiterhin im Frontend ausgeben, obwohl dieser in den Plugin Einstellungen nicht mehr hinterlegt ist.

Kann das jemand bestätigen / Hat jemand dasselbe Fehlverhalten?

Cache habe ich bereits gelöscht.

Hat das Plugin denn seine Settings bei der Deinstalaltion entfernt?
Ähnlich wie Paypal das macht: SwagPayPal/SwagPayPal.php at master · shopwareLabs/SwagPayPal · GitHub

Müssen denn normale Config Einstellungen nochmals gelöscht werden? Es wird kein Repo oder ähnl. verwenden. Einfach nur simple config settings.

In den docs kann ich dazu auch nichts finden bzgl. Deinstallation -> https://docs.shopware.com/en/shopware-platform-dev-en/internals/plugins/plugin-config

Ich habe das Plugin nun auch in einer production template Installation installiert. Hier ist der Fehler, dass Plugin Einstellungen überhaupt nicht im Frontend übernommen werden.

Irgendetwas scheint da von Grund auf nicht rund zu laufen bei Shopware 6.

Kommt ja auch sehr darauf an, was das Plugin macht.

In Produktivumgebungen läuft bspw. auch der HTTP-Cache, entsprechend müsstest du den erst leeren, damit was passiert. Das wäre per SSH und am besten per Konsole oder direktes löschen des Cache-Ordners möglich.

Wenn du detaillierte Hilfe willst, macht es ja ggf. Sinn dein Plugin hier zu posten.
 

Das Plugin macht eigentlich gar nicht viel. Eigentlich nur ganz normale Plugin Settings wie in den Docs beschrieben.

Bspw. kann man einen Text hinterlegen, welcher dann im FE ausgegeben wird.

            fooBar
            Foo Bar

In der DEV klappt das erst einmal auch. Im production template wird gar nichts ausgegeben. Den Cache habe ich bereits mehrfach gelöscht, ohne Erfolg.

Ich habe jetzt gerade einmal in der prod das base.html.twig gedumpt.

Selbst {{ shopware.config }} gibt einfach gar nichts aus, TEST wird auch nicht ausgegeben. Kein Dump, nichts.

{% sw_extends '@Storefront/storefront/base.html.twig' %}

{% block base_header %}
	{{ shopware.config }}
	TEST
{% endblock %}

Sobald installiert / aktiviert scheint keine Änderung mehr wirksam zu sein.

Hallo,

bitte beachte, dass sich hinter

{{ shopware.config }}

ein array verbirgt. Daher kann das so nicht direkt im Template angezeigt werden. Dafür kannst du 

{{ dump(shopware.config) }}

nutzen. ACHTUNG: das funktioniert nur, wenn du deine APP_ENV in der .env Datei auf „dev“ stellst. 

Ich hab testweise mal das Beispielplugin aus den Docs installiert. Ausgabe sieht wie folgt aus:

{{ shopware.config.PluginConfig.config.email }}

Dadurch wird mir der Wert aus der E-Mail Config ausgegeben. Wenn ich den Wert nun ändere, musste ich auch erst den Cache leeren (bin/console cache:clear)
Danach wurde mir der neue Wert korrekt angezeigt. 
Im Cache Verzeichnis gibt es zwei Ordner die hier hauptsächlich sind. Einmal „pools“ in dem Abfragen über das DAL gecached werden. Also auch das Auslesen der Config. Zweitens der Ordner „twig“ in dem die geparsten Twig HTML Dateien gecached werden.

Hilft dir das erstmal weiter?

Viele Grüße aus Schöppingen

cool Michael Telgmann

[@Michael Telgmann](http://forum.shopware.com/profile/17553/Michael Telgmann “Michael Telgmann”)‍ danke dir und sorry - Mein Fehler.

{{ dump(shopware.config) }}

Habe ich drin stehen, falsch abgeschriebe, sorry. Die .env hatte ich testweise auch auf dev gestellt statt prod und danach den Cache gelöscht. Es wird nichts ausgeeben. Es müsste ja zumindest auch TEST ausgegeben werden, was ich mit in den Block gepackt habe.

Kann ich die Cache Ordner einmal manuell komplett löschen? Oder zerschieße ich mir damit alles?

PS: Habe es jetzt gemacht. Nachdem ich die Ordner manuell gelöscht habe ( rm -rf * ) im Cache Ordner wird alles angezeigt. Es liegt also definitiv am Cache.

 

Ich hatte das ganze auf der Produkt-Detail Seite getestet. Aber jetzt noch mal in dem base Template, aber auch dort kein Fehler feststellbar. 

Auf GitHub scheint jemand ein ähnliches Problem zu haben. cache:clear not working for base.html.twig · Issue #582 · shopware/platform · GitHub
Kannst du da etwas mit anfangen?

Viele Grüße aus Schöppingen

cool Michael Telgmann

Dasselbe Problem habe ich auch - genau.

bin/console cache:clear funktioniert bzw. scheint nicht korrekt zu löschen, lösche ich aber die Ordner in /var/cache wird alles geladen.

bin/console cache:clear
// Clearing the cache for the dev environment with debug true                                                                                                                                                                                
[OK] Cache for the "dev" environment (debug=true) was successfully cleared.                                            
                                                                                  



bin/console cache:clear

 // Clearing the cache for the prod environment with debug false                                                        

                                                                                                                        
 [OK] Cache for the "prod" environment (debug=false) was successfully cleared.   

 

Hallo,

ok, also hast du erstmal einen Workaround mit dem es funktioniert? Der Issue auf GitHub wird ja auf jeden Fall von uns bearbeitet. Anschließend sollte sich das Problem dann erledigt haben.

Viele Grüße aus Schöppingen

cool Michael Telgmann

1 Like

Yes - Danke dir.

Ich werde erst einmal manuell den Cache löschen. Das sollte auch nicht zu oft passieren, da es ja eigentlich die produktiv Umgebung ist. Das passt also, Danke dir  Thumb-Up

Bei mir klappt das manuelle Löschen leider nicht. Ich kann einige Dateien unter pools nicht löschen.