Hallo, ich habe ein Frontend-Plugin gebaut und im Backend kann man das Plugin mit 2 Boolean-Felder und 1 Textfeld konfigurieren. Leider stimmt die Logik im Frontend gar nicht mit dem des Backend überein.
config.xml
Configuration
Konfiguration
active
Plugin active in this channel
Plugin in diesem Salechannel aktivieren
doremove
Complete remove
komplett entfernen
alttext
Alternative text
Alternativer Text
lorem ipsum
Mitlerweile ist der Fehler gefunden. Es wurden in der Datenbanktabelle s ystem_config die alten Plugindaten nicht gelöscht. Ob das nur eine Ausnahme war oder Regel kann ich gerade nicht sagen.
{% if shopware.config.MeinPlugin.config.active == true and shopware.config.MeinPlugin.config.doremove == false %}
bei dir in Echtzeit funktioniert? Also wenn du in deinem plugin die Einstellung änderst, dass es im Twig auch geändert wird?
Bei mir funktioniert keine der Varianten.
Hi, ich hatte das “Problem” gehabt, dass ich zu Testzwecken mehrmals das Plugin installiert und deinstalliert hatte. Bei der deinstallation wurden aber die Einträge aus der Datenbank nicht gelöscht/deinstalliert. Und so wurde bei jeder installation ein neues Feld -Eintrag hinzugefügt aber im Frontend wurde sozusagen immer nur der Ur-Feld-Eintrag genommen. Am besten Plugin deinstallieren und alle Einträge in der DB löschen.
wird bei dir also aktualisiert, wenn du es in den Einstellungen auf true oder false setzt?
Bei mir funktioniert das nicht. Steuerst du da noch irgendwas extra an?
Ja, nachdem ich in der Datenbank alle alten Einträge gelöscht habe.
Doppelte Statements habe ich mit einer Klammer umrahmt:
{% if ( shopware.config.MeinPlugin.config.active == true ) and ( shopware.config.MeinPlugin.config.doremove == false ) %}
Einfache Statements ohne Klammer:
{% if shopware.config.MeinPlugin.config.active == false %}
Am besten postest du mal dein komplettes Plugin hier, damit man ggf was helfen kann. Es wäre ja auch möglich, dass dein Problem an einer ganz anderen Stelle liegt, z.b. Subscriber, routes, services oder dem Themepfad.
Ja, das mache ich. Aber erstmal ist mir noch was anderes aufgefallen.
hier wird nur sporadisch gesagt, dass man den Cache über die CLI Befehle ausühren kann. Wie genau, nicht.
Mit bin/console cache:clear kommt console: command not found
Ich bin im Verzeichnis /bin drin. Mit lisa (ls) bekomme ich aber auch kein clear oder so angezeit und auch keine Help page.
(Welcher nicht computer affine Shopbetreiber mehrt bitte auf der Konsole rum,um den Cache zu leeren?)
jetzt bin ich zuhause. (Ich hab die Nase voll) Daheim habe ich blöderweise keine SSH Daten.
Ich mache das Montag früh gleich. Ich glaube den bash Operator habe ich auch schon davor gesetzt und es kam command not found.
Ich werde das Montag sofort nochmal testen. Ich kenne diese php CLI Befehle von früher (2010). Aber da musste man vorher immer irgendwas noch installieren, damit es in /etc/bin oder so global registriert wird. Kann man den Cache nicht auch irgendwie frontendseitig leeren über ein Menü wie in SW5? Wie machen das Otto Normalo Shopbetreiber? Die Kurven doch nicht ernsthaft im Terminal über /root /www/…/bin und ./console rum?
Kann sein, das Du evtl. mal Deinen Provider labern musst. Bei Hetzner z.B. war das auch alles ein bisschen anders. Da muss ich immer folgendes eingeben:
Leg Dir einfach mal die freie und portable MobaXterm Version zu. Die packst Du auf einen Stick und gut ist. Somit hast Du Dein SSH Client - mit allen Zugängen - immer am Start, wenn Du mal unterwegs bist…
Am besten postest du mal dein komplettes Plugin hier, damit man ggf was helfen kann. Es wäre ja auch möglich, dass dein Problem an einer ganz anderen Stelle liegt, z.b. Subscriber, routes, services oder dem Themepfad.
Dann wollen wir mal. Ich habe mal den Ableger mit den wesentlichen Funktionen programmiert, damit der Code nicht zu lang und unübersichtlich wird. Das Problem besteht auch in diesem.
basic/src/basic.php
/src/Controller/Controller.php
/src/Resources/config/config.xml
Basic Configuration
Grundeinstellungen
disabled
enable Plugin
Plugin aktivieren
true
showText
show Text
Text anzeigen
true
text
Texteingabe
Texteingabe
fill text
Text eingeben