Neu Eigene Felder in Vergleichsliste

holzpuppe

Sehr aktives Mitglied
14. Oktober 2011
1.683
242
Leipzig
Moin,
mir ist leidlich aufgefallen, dass eigene Felder nicht von Haus aus in der Vergleichsliste mit ausgegeben werden.
OK, in den Artikeldetails ist das ja auch nicht der Fall. Dachte, das mit Eintragen in die Attributes, die Vergleichsliste sich die Daten da holt, aber nja...falsch gedacht. xD
Hat das schon jemand für sich um setzen können? Ich weiß zwar wie ich eigene Felder in den Produkten ausgeben kann, aber der Code-Aufbau ist in der Vergleichsliste sehr anders.
 

M.Stickel

Moderator
Mitarbeiter
9. Februar 2016
298
38
Hi,
da eigene Felder als Funktionsattribute behandelt werde sind diese in der Ausgabe nicht behandelt. Du kannst aber mit ein paar Templateanpassungen deine Felder abfragen.
Dazu legst du in der "comparelist/index.tpl" oben eine neue Variable an:
Code:
{assign var='feld_arr' value=[]}

Dann fügst du in dem Teil des Templates wo die Artikelbilder und Preisinformationen geholt werden dein Feld in die neue Variable ein:

Code:
{if !empty($oArtikel->FunktionsAttribute)}
                                {foreach from=$oArtikel->FunktionsAttribute key=eFeldName item=eFeldWert}
                                    {if $eFeldName === 'deinFeldName'}
                                       {$feld_arr[$oArtikel->kArtikel] = $eFeldWert}
                                    {/if}
                                {/foreach}
                            {/if}

Damit solltest du die eigenen Felder in dem Array haben und kannst sie ausgeben.
 
  • Gefällt mir
Reaktionen: holzpuppe

holzpuppe

Sehr aktives Mitglied
14. Oktober 2011
1.683
242
Leipzig
Oha. Danke dir. :) Werde ich später testen. Ich nehme an, da ich mit EVO arbeite ist die "details.tpl" für den 2. Code korrekt?
Ich nehme auch an, dass ich für jedes Funktionsattribut, was ich in der Vergleichsliste haben möchte, einen solchen Codeschnipsel einfügen muss?
 

M.Stickel

Moderator
Mitarbeiter
9. Februar 2016
298
38
Wenn du die Eigenen Felder nur in der Vergleichsliste ausgeben möchtest dann kommt alles in die "comparelist/index.tpl" (der 2. Codeschnipsel in die foreach name=vergleich).
Du kannst natürlich die Bedingungen zu den Funktionsattributen anpassen und das Array weiter füllen.
Es sollte auch so funktionieren:
Code:
{if !empty($oArtikel->FunktionsAttribute)}
   {foreach from=$oArtikel->FunktionsAttribute key=eFeldName item=eFeldWert}
      {if $eFeldName === 'deinFeldName1' || $eFeldName === 'deinFeldName2' ... }
         {$feld_arr[$oArtikel->kArtikel][$eFeldName]  = $eFeldWert}
      {/if}
   {/foreach}
{/if}
(ungetestet)
 

holzpuppe

Sehr aktives Mitglied
14. Oktober 2011
1.683
242
Leipzig
Hallo. Ich hab eine Weile gebraucht um mich mal wieder hinzusetzen und es zu testen. Irgendwie bekomme ich das nicht hin. Ich hab die 2 Codes an unterschiedlichen Stellen eingebunden und es spuckt mir einfach nichts aus.
Wenn ich dich richtig verstanden habe, dann müsste es ja so aussehen:
{assign var='feld_arr' value=[]}
{block name="header"}
{include file='layout/header.tpl'}
{/block}
{block name="content"}
<h1>{lang key="compare" section="global"}</h1>

{if !empty($cHinweis)}
<p class="alert alert-success">{$cHinweis}</p>
{/if}

{include file="snippets/extension.tpl"}
{if $oVergleichsliste->oArtikel_arr|@count >1}
<div class="comparelist table-responsive">
<table class="table table-striped table-bordered table-condensed table">
<tr>
<td>&nbsp;</td>
{foreach name=vergleich from=$oVergleichsliste->oArtikel_arr item=oArtikel}
<td style="width:{$Einstellungen_Vergleichsliste.vergleichsliste.vergleichsliste_spaltengroesse}px;" class="text-center">
<div class="thumbnail">
<a href="{$oArtikel->cURL}">
{image src=$oArtikel->cVorschaubild alt=$oArtikel->cName class="image"}
</a>
</div>
<p>
<a href="{$oArtikel->cURL}">{$oArtikel->cName}</a>
</p>

{if $oArtikel->Preise->fVKNetto == 0 && $Einstellungen.global.global_preis0 === 'N'}
<p>{lang key="priceOnApplication" section="global"}</p>
{else}
<p>
{if isset($oArtikel->Preise->strPreisGrafik_Detail)}
{assign var=priceImage value=$oArtikel->Preise->strPreisGrafik_Detail}
{else}
{assign var=priceImage value=null}
{/if}
{include file="productdetails/price.tpl" Artikel=$oArtikel price_image=$priceImage tplscope="detail"}
</p>
{/if}
<p>
<a href="{$oArtikel->cURLDEL}" data-id="{$oArtikel->kArtikel}" class="remove"><span class="fa fa-trash-o"></span></a>
</p>
</td>
{if !empty($oArtikel->FunktionsAttribute)}
{foreach from=$oArtikel->FunktionsAttribute key=eFeldName item=eFeldWert}
{if $eFeldName === 'Alkoholgehalt' || $eFeldName === 'Farbe' }
{$feld_arr[$oArtikel->kArtikel][$eFeldName] = $eFeldWert}
{/if}
{/foreach}
{/if}

{/foreach}
</tr>
{foreach name=priospalten from=$cPrioSpalten_arr item=cPrioSpalten}
{if $cPrioSpalten !== 'Merkmale' && $cPrioSpalten !== 'Variationen'}
{if $smarty.foreach.priospalten.iteration % 2 == 0}
<tr class="first">
{else}
<tr class="last">
{/if}
{/if}

{if $cPrioSpalten === 'cArtNr' && $Einstellungen_Vergleichsliste.vergleichsliste.vergleichsliste_artikelnummer != 0}
<!-- Artikelnummer-->
<td valign="top">
<b>{lang key="productNumber" section="comparelist"}</b>
</td>
{/if}
{if $cPrioSpalten === 'cHersteller' && $Einstellungen_Vergleichsliste.vergleichsliste.vergleichsliste_hersteller != 0}
<!-- Hersteller -->
<td valign="top">
<b>{lang key="manufacturer" section="comparelist"}</b>
</td>
{/if}
{if $cPrioSpalten === 'cBeschreibung' && $Einstellungen_Vergleichsliste.vergleichsliste.vergleichsliste_beschreibung != 0}
<!-- Beschreibung -->
<td valign="top">
<div class="custom_content">
<b>{lang key="description" section="comparelist"}</b>
</div>
</td>
{/if}
{if $cPrioSpalten === 'cKurzBeschreibung' && $Einstellungen_Vergleichsliste.vergleichsliste.vergleichsliste_kurzbeschreibung != 0}
<!-- Kurzbeschreibung -->
<td valign="top">
<b>{lang key="shortDescription" section="comparelist"}</b>
</td>
{/if}
{if $cPrioSpalten === 'fArtikelgewicht' && $Einstellungen_Vergleichsliste.vergleichsliste.vergleichsliste_artikelgewicht != 0}
<!-- Artikelgewicht -->
<td valign="top">
<b>{lang key="productWeight" section="comparelist"}</b>
</td>
{/if}
{if $cPrioSpalten === 'fGewicht' && $Einstellungen_Vergleichsliste.vergleichsliste.vergleichsliste_versandgewicht != 0}
<!-- Versandgewicht -->
<td valign="top">
<b>{lang key="shippingWeight" section="comparelist"}</b>
</td>
{/if}
{if $cPrioSpalten !== 'Merkmale' && $cPrioSpalten !== 'Variationen'}
{foreach name=vergleich from=$oVergleichsliste->oArtikel_arr item=oArtikel}
{if $oArtikel->$cPrioSpalten !== ''}
<td valign="top" style="min-width: {$Einstellungen_Vergleichsliste.vergleichsliste.vergleichsliste_spaltengroesse}px">
{if $cPrioSpalten === 'fArtikelgewicht' || $cPrioSpalten === 'fGewicht'}
{$oArtikel->$cPrioSpalten} {lang key="weightUnit" section="comparelist"}
{else}
{$oArtikel->$cPrioSpalten}
{/if}
</td>
{else}
<td>--</td>
{/if}
{/foreach}
</tr>
{/if}
....
Fehlt mir da jetzt noch was im unteren Bereich? ( {foreach name=priospalten )
:confused:
Musste Code kürzen.
Ps.: Es gibt 6 Stellen mit {foreach Name=vergleich in dieser Datei. xD
 

css-umsetzung

Offizieller Servicepartner
SPBanner
6. Juli 2011
6.639
1.583
Berlin
Lustig,
Das habe ich gestern für jemanden angeschaut und gebaut, zwar nur um ein bestimmtes Feld im Vergleich zu haben aber am Ende ist es fast die gleiche Vorgehensweise, nur das man ein weiteres foreach einbinden muss
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu Eigene Felder Checkbox Inhalt bzw. Text bei Mouseover anzeigen JTL-Wawi - Ideen, Lob und Kritik 0
Neu Eigene Felder Lieferschein User helfen Usern - Fragen zu JTL-Wawi 0
Neu Eigene Felder (Kunde) in csv-Datei per Ausgabe (Auftrag oder Lieferschein) Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Neu Eigene Felder des Auftrages in der Druckvorlage Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 2
Eigene Felder für Ebay-Listings verwenden JTL-Wawi 1.8 0
Neu Eigene Felder im Verkauf als Spalten anzeigen User helfen Usern - Fragen zu JTL-Wawi 4
Eigene Felder in alte Vorlagen JTL-Wawi 1.8 5
Neu Barcode Anpassung in Artikeletikett anhand Eigene Felder Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 2
Neu Sind eigene Felder im Artikel in einer neueren Wawi-Version von Anfang an sichtbar? User helfen Usern - Fragen zu JTL-Wawi 8
Neu Eigene Seiten mit Plugin erstellen Technische Fragen zu Plugins und Templates 0
In Diskussion eigene CustomWorkflows anlegen JTL-Workflows - Ideen, Lob und Kritik 1
Neu Artikel - Sprachen - Alle eigene SEO URL? Smalltalk 1
Neu Eigene Übersicht Artikel - Zulaufsübersicht - Stückliste Eigene Übersichten in der JTL-Wawi 0
Neu Eigene Übersichten, Artikelhistorie Eigene Übersichten in der JTL-Wawi 1
Eigene Auswertung JTL-Wawi 1.8 1
Neu Eigene Seiten Priority in der Sitemap ändern Allgemeine Fragen zu JTL-Shop 5
Neu Eigene Seite sichern Allgemeine Fragen zu JTL-Shop 1
Neu Wie importiere ich die Zahlungs-ID für meine eigene benutzerdefinierte Zahlung, wie es andere Anbieter wie Paypal und Molli Payments in Shopware 6? Onlineshop-Anbindung 0
Neu Eigene Übersicht im Verkauf zu einem ausgewähltem Auftrag: Kundenattribut Anmerkungen Eigene Übersichten in der JTL-Wawi 4
dynamische Titel und Felder für B2C Plattformen JTL-Wawi 1.7 0
Neu JTL WooCommerce-Connector leert bei Artikelupdate Inhalte der Felder WooCommerce-Connector 3
Neu jtl datenbank warnung - ein formular hat mehr als 1000 felder in tkunde des Shops Allgemeine Fragen zu JTL-Shop 0

Ähnliche Themen