Footer selber bearbeiten

Hallo,
wir nutzen die Community Edition von Shopware. In der Shopware Administration finde ich keine Möglichkeit den Footer mit „Realisiert mit Shopware“ und dem Hinweis auf MwSt zu bearbeiten. Allerdings finde ich auf Dateiebene des Servers folgende Dateien:

vendor/shopware/storefront/Resources/snippet/de_DE/storefront.de-DE.json
// (deutsche) Texte in Variablen, die von Shopware auf den Seiten angezeigt werden.
Kann ich in der Shopware Adminstration diese Texte überarbeiten?

vendor/shopware/storefront/Resources/views/storefront/layout/footer/footer.html.twig
// Das HTML-Template für den Footer.
Lässt sich das in der Shopware-Administration bearbeiten?

vendor/shopware/storefront/Resources/app/storefront/src/scss/layout/_footer.scss
// Das (S)CSS-Template für den Footer.
// Wobei ich mir da nicht sicher bin.

Wenn ich diese (eher ersten beiden) Dateien bearbeite, machen mir Änderungen über die Shopware Administration dies wieder kaputt?
Was passiert bei Updates von Shopware an dieser Stelle?

Viele Grüße,
Peter

Ahoi,

such mal unter Administration > Shop > Textbausteine nach „footer.copyrightInfo“

dann kannste den Text anpassen oder ganz entfernen.

Die Dateie vendor/shopware/storefront/Resources/views/storefront/layout/footer/footer.html.twig bitte nicht berarbeiten, denn beim nächsten Update wären deine Änderungen wieder weg.

D.h. besser wäre es ein eigenes Theme zu erstellen und vom Haupttheme zu erben und dann den Block einfach zu überschreiben.

Recht hat Tobi :slight_smile:
Auch hier zu finden.

1 „Gefällt mir“

Regel #1
Tobi hat immer recht.

Viele Grüße

1 „Gefällt mir“

such mal unter Administration > Shop > Textbausteine nach „footer.copyrightInfo“

Danke, das habe ich mir auch gedacht, dass die Inhalte der storefront.de-DE.json über die Shopware Administration angepasst werden.

Shopware 5 - Tutorials & FAQs - Änderungen am Template vornehmen

Das werde ich mir jetzt in aller Ruhe anschauen.

D.h. besser wäre es ein eigenes Theme zu erstellen und vom Haupttheme zu erben und dann den Block einfach zu überschreiben.

Das wird dann wohl die bessere Lösung sein.

Ich habe mich an das FAQ Entfernen des Logos gehalten, aber das Logo ist immer noch zu sehen.

  1. Zuerst habe ich mit theme:create ein eigenes Theme erstellt und unter Meine Erweiterungen installiert.

  2. Um die Vererbung zu gewährleisten, habe ich die Datei theme.json von dem neuen Theme bearbeitet und am Ende folgendes ergänzt:

  "configInheritance": [
    "@Storefront",
    "@MyMainThema"
  ]

Ich vermute, dass das überflüssig ist, da in der Developer-Dokumentation Set up the inheritance steht, dass das default Shopware Theme standardmäßig vererbt wird.

  1. Um den Footer zu bearbeiten habe ich folgende Datei
custom/plugins/MyMainThema/src/Resources/views/storefront/layout/footer/footer.html.twig

mit diesem Inhalt erstellt:

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

  {% block layout_footer_copyright %}
    <div class="footer-copyright">
      {{ "footer.copyrightInfo"|trans|sw_sanitize }}
    </div>
  {% endblock %}

Den Cache habe ich gecleart und die Indizes neu aufbauen lassen.
Die zusätzlichen Code-Zeilen configInheritance habe ich auch wieder gelöscht, Cache gecleart und neue Indizes.

Aber es wird immer noch das Shopware Logo angezeigt.

Was mache ich falsch?

Also, ich hab das gerade mal nachgestellt. Bei mir klappt das ohne Probleme. Biste sicher, dass du den Cache gelöscht hast?

In der Theme.json würde ich zusätzlich zu

"configInheritance": [
    "@Storefront",
    "@MyMainThema"
  ]

noch

    "views": [
        "@Storefront",
        "@Plugins",
        "@MyMainThema"
    ],

ergänzen, falls es nicht da ist - so klappts bei mir jedenfalls :slight_smile:

Ne, leider wird die Änderung nicht angezeigt. Und ja, den Cache habe ich gelöscht, was mir auch mit entsprechenden Meldungen angezeigt wird.

Ich habe das „configInheritance“ auch wieder ergänzt, was ich am Schluss des letzten Beitrags doch noch entfernt hatte. „views“, wie von dir geschrieben, waren bereits enthalten.

So sieht meine custom footer.html.twig aus - testweise habe ich den MwSt-Block auch bearbeitet:

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

  {% block layout_footer_vat %}
    HIER IST DER Text zur MwSt
  {% endblock %}

  {% block layout_footer_copyright %}
    <div class="footer-copyright">
      {{ "footer.copyrightInfo"|trans|sw_sanitize }}
    </div>
    Und am Ende noch eine schöne Textzeile
  {% endblock %}

Aber trotz erneutem Clearen des Caches wird der Footer noch in alter Form angezeigt.

Dass mein custom MyMainThema tatsächlich in Verwendung ist, hat Shopware anfangs beim ersten Bearbeiten der custom theme.json gezeigt. Dort ist mir Schreibfehler unterlaufen, so dass die Webseite überhaupt nicht mehr dargestellt wurde.

Wie kann ich aber feststellen, ob Shopware wirklich meine custom footer.html.twig verwendet? Gibt es einen Debug-Modus, der mir das anzeigt?

Dazu habe ich festgestellt, dass im vendor Verzeichnis zwei unterschiedliche footer-Dateien liegen:

# ll vendor/shopware/storefront/Resources/views/storefront/layout/footer/
total 28
drwxr-xr-x 2 www-data www-data  4096 Dec  3 10:52 .
drwxr-xr-x 8 www-data www-data  4096 Dec  3 10:52 ..
-rw-r--r-- 1 www-data www-data 14096 Dec  3 10:52 footer.html.twig
-rw-r--r-- 1 www-data www-data   272 Dec  3 10:52 footer-minimal.html.twig

Wann wird die minimal-Datei verwendet?

Ich habe mir den Thread nicht durchgelesen, aber einzelne Sätze in deinem letzen Post führen zu dem Hinweis:

Je nachdem was für eine Änderung durchgeführt wurde, muss das Plugin sogar deinstalliert und alle Settings entfernt werden und wieder installiert werden. Dies betrifft Änderungen in den configs, etc. Cache leeren reicht da nicht aus.

Um sicher zu gehen, ob das wirklich nötig ist, schreibe ich kurz was ich gemacht habe.

Ich habe ein neues Theme erstellt, dass vom default Storefront-Theme vererbt wird. In der custom theme.json habe ich den „configInheritance“ Block eingetragen. Die Änderungen in der custom footer.html.twig habe ich erst vorgenommen, nachdem das Theme installiert war.

Sind das die Config-Änderungen, die das Deinstallieren des Themes nötig machen?
Und was ist mit „alle Settings entfernen“ gemeint?

Hast du nach den Änderungen ein

php bin/console theme:compile

gemacht?

Ich sehe gerade, dass das Theme noch nicht (oder nicht mehr) dem Verkaufskanal zugewiesen ist.

Kann ich das Theme einfach so im Verkaufskanal wechseln, auch wenn bereits User die Webseite aufrufen und oder in der Shopware Administration arbeiten?

Nein, das habe ich nicht ausgeführt.

Das wars. Das Theme ist wohl zwischenzeitlich am Verkaufskanal zu Default zurückgeändert worden.