Jump to content
eronweb

Artikel-Nr. bei Varianten

Recommended Posts

Hallo,

ich habe eben ein Produkt mit Varianten angelegt (PrestaShop 1.7). Dazu habe ich u.a im Reiter "Varianten" für jedes Produkt mit Klick auf Bearbeiten eine eigene Artikel-Nr. hinterlegt.

Im Shop wird jedoch für alle Varianten IMMER die erste Artikel-Nr. angezeigt - Cache etc. geleert.

Wie kann ich für jede Variante auch die entsprechende Artikel-Nr. anzeigen lassen?


Gruß Chris

Share this post


Link to post
Share on other sites

Habe es gerade im Classic Theme ausprobiert, da funktioniert das. Evtl. sieht dein Theme das nicht vor bzw. nutzt nur die Artikelnummer des Hauptartikels:

image.thumb.png.bcbe993a93740ad355925844832f037a.png

image.png.f0bcfb2ebc66ea5b2cd42afd1a2430c6.png

Das Classic Theme nutzt folgenden Code in /templates/catalog/_partials/product-details.tpl:

    {if isset($product.reference_to_display) && $product.reference_to_display neq ''}
      <div class="product-reference">
        <label class="label">{l s='Reference' d='Shop.Theme.Catalog'} </label>
        <span itemprop="sku">{$product.reference_to_display}</span>
      </div>
    {/if}

 

Share this post


Link to post
Share on other sites
Posted (edited)

Guten Morgen,

On 6/14/2019 at 2:54 PM, JBW said:

Habe es gerade im Classic Theme ausprobiert, da funktioniert das. Evtl. sieht dein Theme das nicht vor bzw. nutzt nur die Artikelnummer des Hauptartikels:

image.thumb.png.bcbe993a93740ad355925844832f037a.png

image.png.f0bcfb2ebc66ea5b2cd42afd1a2430c6.png

Das Classic Theme nutzt folgenden Code in /templates/catalog/_partials/product-details.tpl:


    {if isset($product.reference_to_display) && $product.reference_to_display neq ''}
      <div class="product-reference">
        <label class="label">{l s='Reference' d='Shop.Theme.Catalog'} </label>
        <span itemprop="sku">{$product.reference_to_display}</span>
      </div>
    {/if}

 

Guten Morgen,

ich verwende das Theme "RoyalFood" in PrestaShop 1.7 und habe den Code von dir in folgender Datei gefunden: "/themes/RoyalFood/templates/catalog/product.tpl". Im angegebenen Pfad von dir befindet sich auch nocheinmal der Code, dieser ist jedoch auskommentiert - er wird nicht verwendet.

Nun sieht er ersteinmal korrekt aus, leider ändert sich die Artikelnummer immernochnicht, wenn ich eine andere Variante wähle ... Der Shop zeigt immer die Artikel-Nr. des vorausgewählten Artikels an. Wie kann ich nun am Besten den Fehler finden?
Habe die Artikelnummer nur in den Varianten hinterlegt - ohne Erfolg.

Gruß Chris

 

Edited by eronweb (see edit history)

Share this post


Link to post
Share on other sites
Posted (edited)

Hast du den Code denn wieder aktiviert und den Cache gelöscht/Template recompliliert?

Edited by JBW (see edit history)

Share this post


Link to post
Share on other sites
1 hour ago, JBW said:

Hast du den Code denn wieder aktiviert und den Cache gelöscht/Template recompliliert?

Ja, ich bin wie folgt vorgegangen:

  • Code aktiviert in der Datei, die du vorgeschlagen hast
  • Cache geleert & Template recompiliert
  • Browsercache geleert und getestet
    => keine Änderung
  • Anschließend Code in der gefundenen Datei auskommentiert (inkl. Cache leeren etc.)
    => Artikel-Nr. wird nicht mehr angezeigt

Wie kann ich nun herausfinden, woher er die Artikelnummer bezieht bzw. wie ich das behebe? Der Code in der Datei, die ich gefunden habe, ist der gleiche ...

Gruß Chris

Share this post


Link to post
Share on other sites

Eigentlich sollte dir da der Ersteller des Templates helfen.

Share this post


Link to post
Share on other sites
6 hours ago, rictools said:

Eigentlich sollte dir da der Ersteller des Templates helfen.

Ja, dieser benötigt aber sehr viel Zeit für eine Antwort, die meist unzureichend ist.

Ich habe nun genauer nachgeschaut. Es gibt aktuell kein JavaScript-Event in der core.js, die die Artikel-Nr. aktualisiert. Wenn ich die Product-Details Datei einbinde, dann wird diese angezeigt und aktualisiert. Ich habe daher versucht folgendes durchzuführen:

  • Hinzufügen eines Parameters zur Funktion "displayAjaxRefresh" in der ProductController.php
    ('product_details' => $this->render('catalog/_partials/product-sku'))
  • Hinzufügen eines EventListeners in der core.js
    ((0,_jquery2['default'])('#product-details').replaceWith(resp.product_sku);)
  • Anlegen der entsprechenden Datei "product-sku.tpl"

Erhofft habe ich mir dadurch, dass er die SKU aufruft, sobald ich eine andere Variante auswähle. Leider macht er dann nur die Artikel-Nr. leer.... Komischerweise funktioniert der Wechsel in der product-details.tpl. Diese kann ich aber nicht includen, da er sonst ALLES aus der Datei oben anzeigt...

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More