Wiederverwendbare Textbausteine für Produktbeschreibungen in Shopware 6.6 - 6.7 mit automatischer Platzhalter-Ersetzung, Mehrsprachigkeit und Caching.
Problem: Du hast Standard-Textblöcke (Garantiehinweise, Versandinformationen, Format-Disclaimer), die in vielen Produktbeschreibungen vorkommen. Wenn du diesen Text aktualisieren musst, musst du jedes Produkt manuell bearbeiten.
Lösung: Erstelle einen Textbaustein einmal, verwende ihn überall mit einem einfachen Platzhalter. Aktualisiere den Baustein, und alle Produkte werden automatisch aktualisiert.
| Feature | Beschreibung |
|---|---|
| Admin-UI | Bausteine direkt im Shopware Admin verwalten |
| Mehrsprachig | Vollständige Übersetzungsunterstützung |
| Platzhalter-Syntax | Einfache {{snippet:identifier}} Syntax |
| Automatische Ersetzung | Plugin-Templates übernehmen die Ersetzung |
| Caching | Optimierte Performance |
| Twig-Integration | Filter und Funktion für eigene Templates |
Die Installation über den Shopware Store wird empfohlen. Nach dem Kauf kannst du das Plugin direkt aus dem Backend installieren.
composer require mmd/product-snippets
bin/console plugin:install --activate MmdProductSnippets
bin/console cache:clear
Navigiere zu Inhalte > Textbausteine im Shopware Admin.
garantie-info)
Nutze den Sprachumschalter im Admin für Übersetzungen:
Die richtige Sprachversion wird automatisch basierend auf der Storefront-Sprache verwendet.
Füge den Platzhalter in jede Produktbeschreibung ein:
{{snippet:garantie-info}}
Oder mit deutschem Alias:
{{textbaustein:garantie-info}}
| Syntax | Beschreibung |
|---|---|
{{snippet:identifier}} |
Standard-Syntax |
{{textbaustein:identifier}} |
Deutsche Alternative |
{{ snippet:identifier }} |
Leerzeichen erlaubt |
Das Plugin ersetzt Platzhalter automatisch in:
Keine manuellen Template-Änderungen erforderlich.
garantie-info<div class="garantie-hinweis">
<strong>2 Jahre Garantie</strong>
<p>Dieses Produkt enthält eine 2-jährige Herstellergarantie für Material- und Verarbeitungsfehler.</p>
</div>
Eingabe:
<h2>Premium Widget</h2>
<p>Hochwertiges Widget für professionellen Einsatz.</p>
{{snippet:garantie-info}}
{{snippet:versand-info}}
Gerenderte Ausgabe:
<h2>Premium Widget</h2>
<p>Hochwertiges Widget für professionellen Einsatz.</p>
<div class="garantie-hinweis">
<strong>2 Jahre Garantie</strong>
<p>Dieses Produkt enthält eine 2-jährige Herstellergarantie...</p>
</div>
<p>Versand innerhalb von 1-2 Werktagen.</p>
Für eigene Template-Anforderungen nutze den Twig-Filter oder die Funktion.
|mmd_snippetsErsetzt alle Platzhalter in einem String:
{{ meinInhalt|mmd_snippets|raw }}
mmd_snippet('identifier')Gibt den Inhalt eines einzelnen Bausteins zurück:
{{ mmd_snippet('garantie-info') }}
Hinweis: Die Funktion funktioniert nur in Twig-Templates, nicht in Datenbank-Inhalten (Produktbeschreibungen). Für Produktbeschreibungen verwende die Platzhalter-Syntax.
Wenn du Bausteine auf andere Inhaltsbereiche anwenden musst:
{% sw_extends '@Storefront/storefront/component/product/description.html.twig' %}
{% block component_product_description_content_text %}
<div class="product-detail-description-text" itemprop="description">
{{ product.translated.description|mmd_snippets|raw }}
</div>
{% endblock %}
{{snippet:format-hinweis}}
{{snippet:download-info}}
{{snippet:lizenzbedingungen}}
{{snippet:versand-info}}
{{snippet:rueckgabe-info}}
{{snippet:garantie-info}}
{{snippet:weihnachts-versand}}
{{snippet:sale-hinweis}}
bin/console cache:clear ausbin/console cache:clearbin/build-administration.shDas Plugin nutzt Shopwares Caching-System:
MIT License - Frei für private und kommerzielle Nutzung.
Bei Fragen und Support:
Markus Michalski
E-Mail: support@markus-michalski.net