Code Snippets für Produktvergleiche

Für die Code-Abschnitte wird die PHP Template Engine TWIG verwendet. Eine Übersicht zu den wichtigsten Befehlen findest Du hier: TWIG Übersicht.

Die in diesem Abschnitt verwendeten Variablen können in allen Templates Produktvergleich oder Social Shopping eingesetzt werden, jedoch hängt es vom Empfänger ab, ob die Daten dort verarbeitet werden können.

Code-Snippets um das Template zu erweitern

Preise

In der gerade erzeugten Vorlage des Produktvergleichs wird für die Preisübermittlung ein festgelegter Preis verwendet. Das ist dieser Teil:

    {% set price = product.calculatedPrice %}
    {%- if product.calculatedPrices.count > 0 -%}
        {% set price = product.calculatedPrices.last %}
    {%- endif -%}

Wenn Du diesen Code mit dem nachfolgenden ersetzt, kannst Du auch zum Beispiel die Listenpreise exportieren. Ist kein Listenpreis vorhanden, wird wie vorher ausschließlich Dein Artikelpreis exportiert.

{%- if product.calculatedPrice.listPrice -%}
        <g:sale_price>
            {%- if product.calculatedPrices is not empty -%}
                {{ product.calculatedPrices.first.unitPrice|number_format(2, '.', '') }}
            {%- else -%}
                {{ product.calculatedPrice.unitPrice|number_format(2, '.', '') }}
            {%- endif -%}
            {{- context.currency.isoCode -}}
        </g:sale_price>
        <g:price>
            {{- product.calculatedPrice.listPrice.price|number_format(2, '.', '') -}}
            {{- context.currency.isoCode -}}
        </g:price>
    {%- else -%}
        <g:price>
            {%- if product.calculatedPrices is not empty -%}
                {{ product.calculatedPrices.first.unitPrice|number_format(2, '.', '') }}
            {%- else -%}
                {{ product.calculatedPrice.unitPrice|number_format(2, '.', '') }}
            {%- endif -%}
            {{- context.currency.isoCode -}}
        </g:price>
    {%- endif -%}

Falls Du mehr als einen Bildlink benötigst, kannst Du in Deinen Produktzeilen diesen Code ergänzen:

    {%- if product.media|length > 1 -%}
        {%- for media in product.media -%}
            <additional_image_link>
                {{- media.media.url -}}
            </additional_image_link>
        {%- endfor -%}
    {%- endif -%}

Damit werden in der Datei für alle zusätzlichen Bilder die Links mit dem Tag additional_image_link exportiert.

Versandkosten

Dieser Teil im Template des Produktvergleichs übermittelt Informationen zu Versandkosten. Nicht in allen Dateien für Google Shopping wird das benötigt, bei Bedarf kannst Du diese Zeilen entfernen.

    <g:shipping>
        <g:country>DE</g:country>
        <g:service>Standard</g:service>
        {% if product.shippingFree  %}
           <g:price>0.00 {{ context.currency.isoCode }}</g:price>
        {% else %}
           <g:price>4.95 {{ context.currency.isoCode }}{# change your default delivery costs #}</g:price>
        {% endif %}
    </g:shipping>

Grundeinheit und Verkaufseinheit des Produkts ergänzen

Wenn Google die Daten für die Grundpreisberechnung haben möchte, benötigst Du in Deinem Feed die Inhalte der Verkaufseinheit und Grundeinheit des Produkts. Mit diesen Code-Snippets kannst Du die gewünschten Informationen ergänzen:
Verkaufseinheit

<g:unit_pricing_measure>
 {% if product.unit.shortCode is defined and product.unit.shortCode is not null %}
   {{ product.purchaseUnit }} {{ product.unit.shortCode }}
 {% endif %}
</g:unit_pricing_measure>

Die Variable purchaseUnit steht dabei für den Wert des Feldes Verkaufseinheit, unit.shortcode ist die Kurzform der hinterlegten Maßeinheit z.B. "KG".
Grundeinheit

<g:unit_pricing_base_measure>
 {% if product.unit.shortCode is defined and product.unit.shortCode is not null %}
   {{ product.referenceUnit }} {{ product.unit.shortCode }}
 {% endif %}
</g:unit_pricing_base_measure>


Falls dies für Dich nicht funktionieren sollte, teste es gerne mit product.unit.translated.shortCode statt product.unit.shortCode aus.

Hier sind beide Code-Snippets erneut, damit Du diese direkt kopieren und einfügen kannst:

Verkaufseinheit
<g:unit_pricing_measure>
 {% if product.unit.translated.shortCode is defined and product.unit.translated.shortCode is not null %}
   {{ product.purchaseUnit }} {{ product.unit.translated.shortCode }}
 {% endif %}
</g:unit_pricing_base_measure>
Grundeinheit
<g:unit_pricing_base_measure>
 {% if product.unit.shortCode is defined and product.unit.shortCode is not null %}
   {{ product.referenceUnit }} {{ product.unit.shortCode }}
 {% endif %}
</g:unit_pricing_base_measure>

Varianteneigenschaften ergänzen

Beim Export von Variantenprodukten möchtest Du die Eigenschaften der Varianten ebenfalls in der Datei abzustellen. Dafür müssen die Eigenschaften des Produkts in einer Schleife durchlaufen werden. Der Basisansatz dafür sieht so aus:

{% for option in product.options %}
    {{ option.name }}
{% endfor %}

Natürlich kannst Du den Code jederzeit über TWIG erweitern. 

War dieser Artikel hilfreich?