Zum Inhalt springen

Template-Blöcke

Das Widget wird über Standard-Shopware-Twig-Includes gerendert. Wenn die Platzierungs-Drop-downs nicht in Ihr Theme passen, können Sie die Templates aus Ihrem eigenen Theme-Plugin / App erweitern.

DateiZweck
storefront/p2lab/widget/estimated-delivery.html.twigWidget-Container. Iteriert über die aktiven Komponenten (Nachricht / Uhr / Schritte) und inkludiert jede.
storefront/p2lab/widget/component/message.html.twigNachrichten-Komponente
storefront/p2lab/widget/component/clock.html.twigUhr-Komponente (Default und Compact, Default und Boxes-Varianten)
storefront/p2lab/widget/component/steps.html.twigSchritte-Komponente
storefront/p2lab/widget/media.html.twigHelper zum Rendern von Icon-Media
storefront/block/cms-block-p2lab-cms-estimated-delivery.html.twigCMS-Block-Wrapper

Das Plugin liefert Theme-Erweiterungen für diese Seiten:

DateiStorefront-Seite
storefront/page/product-detail/buy-widget.html.twigBuy-Widget der Produktseite
storefront/page/checkout/cart/index.html.twigWarenkorb
storefront/page/checkout/confirm/index.html.twigCheckout-Bestätigung
storefront/page/checkout/address/index.html.twigCheckout-Adresse (Inline-Registrierung)

Jede Seitenerweiterung respektiert das Drop-down Placement position ihrer Tab — wenn disabled gewählt ist, rendert die Erweiterung nichts.

Wenn Sie das Widget an einer Stelle benötigen, die das Plugin noch nicht abdeckt, inkludieren Sie das Widget-Template direkt aus Ihrem Theme:

{% sw_include "@P2LabEstimatedDelivery/storefront/p2lab/widget/estimated-delivery.html.twig" with {
p2labEstimatedDeliveryCmsBlock: null
} %}

Das Widget rechnet sich selbst mit der gleichen Settings-/Widget-/Translation-Konfiguration wie der Rest des Storefronts aus. Das Übergeben eines Non-Null-CMS-Blocks aktiviert den “inherit from product”-Pfad, dokumentiert unter Storefront → CMS-Block.

Jeder Twig-Block in den Widget-Templates verwendet die Konvention p2lab_estimated_delivery_…, sodass Sie sie mit dem Standard-Shopware-Override-Muster erweitern können. Beispiel zum Umschließen der Nachricht:

{# Resources/views/storefront/p2lab/widget/component/message.html.twig #}
{% sw_extends '@P2LabEstimatedDelivery/storefront/p2lab/widget/component/message.html.twig' %}
{% block p2lab_estimated_delivery_widget_message %}
<div class="my-theme__delivery-banner">
{{ parent() }}
</div>
{% endblock %}

Das hält Sie auf dem unterstützten Template-Pfad und überlebt Plugin-Updates, solange sich die Block-Namen nicht ändern.

Jedes Widget-Element hat einen stabilen BEM-Klassennamen mit dem Präfix p2lab-estimated-delivery__ — z. B. p2lab-estimated-delivery__widget-clock__compact-info oder p2lab-estimated-delivery__widget-steps__list-item. Style-Overrides in Ihrem Theme zielen direkt auf diese Klassen.