Einzelne Merkmale ausblenden Artikelliste /gallerieliste

tewert1

Aktives Mitglied
6. Mai 2014
60
0
Würde mich freuen falls jemand eine Lösung anbieten könnte.
Ich möchte in den Listenanischt / Gallerieansichten meiner Artikel nicht alle Merkmale auflisten lassen.
 

casim

Sehr aktives Mitglied
26. Juni 2012
5.934
9
AW: Einzelne Merkmale ausblenden Artikelliste /gallerieliste

nichts per Standard vorgesehen.

Müsstest du mehr oder weniger komplex im Template abfangen
 

tewert1

Aktives Mitglied
6. Mai 2014
60
0
AW: Einzelne Merkmale ausblenden Artikelliste /gallerieliste

Kann mir jemand einen filter programmieren oder ist es geplant Merkmale temporär auszuschalten in der WAWI?
 

martinwolf

Offizieller Servicepartner
SPBanner
6. September 2012
3.385
262
AW: Einzelne Merkmale ausblenden Artikelliste /gallerieliste

Wo genau meinst du denn innerhalb der Übersichtsseiten? Bei der Auswahl innerhalb Suche verfeinern und in der Merkmalfilterbox?
 

tewert1

Aktives Mitglied
6. Mai 2014
60
0
AW: Einzelne Merkmale ausblenden Artikelliste /gallerieliste

Ich meine wenn ich über die startseite komme und dann eine Kategorie wähle. Dort sind dann meine Merkmale gelistet. Ich befinde mich also noch nicht in den Artikeldetails.
Dort würde ich gerne individuell das ein oder andere Merkmal nicht mitauflisten, bzw nicht filterbar für den Kunden machen.
Würde mich natürlich über eine Lösung freuen. Leider gibt es ja in der WAWI keinen "MUTE" Button, so das ich zur Zeit mit der Brachial-Lösung Merkmal löschen vorgegangen bin.
 

martinwolf

Offizieller Servicepartner
SPBanner
6. September 2012
3.385
262
AW: Einzelne Merkmale ausblenden Artikelliste /gallerieliste

Für die Merkmalfilterbox (box_filter_merkmale_custom.tpl):

Code:
[B][COLOR=#ff0000]{assign var='filterMerkmale' value=','|explode:"lesestufe,altersempfehlung,größe,schuljahr"}[/COLOR][/B]

{if $BoxenEinstellungen.navigationsfilter.merkmalfilter_verwenden=="box"}
    {if $Suchergebnisse->MerkmalFilter|@count > 0}
        <div class="sidebox" id="sidebox{$oBox->kBox}">
            <div class="sidebox_content">
                <ul class="filter_state">
                    {foreach name=merkmalfilter from=$Suchergebnisse->MerkmalFilter item=Merkmal}
                        [COLOR=#ff0000][B]{if !$Merkmal->cName|strtolower|in_array:$filterMerkmale}[/B][/COLOR]
                            {assign var=kMerkmal value=$Merkmal->kMerkmal}
                            <li class="label">
                                {if $Einstellungen.navigationsfilter.merkmal_anzeigen_als != "T" && $Merkmal->cBildpfadKlein|count_characters > 0 && $Merkmal->cBildpfadKlein != "gfx/keinBild.gif"}
                                    <img src="{$Merkmal->cBildpfadKlein}" alt="" class="vmiddle" />
                                {/if}
                                {if $Einstellungen.navigationsfilter.merkmal_anzeigen_als != "B"}{$Merkmal->cName}{/if}
                            </li>
                            {if ($Merkmal->cTyp == "SELECTBOX") && $Merkmal->oMerkmalWerte_arr|@count > 1}
                                <li class="values select">
                                    <form id="filter_characteristic_{$Merkmal->kMerkmal}" class="m_form" action="navi.php" method="get">
                                        <fieldset>
                                            {if $NaviFilter->Kategorie->kKategorie > 0}<input type="hidden" name="k" value="{$NaviFilter->Kategorie->kKategorie}" />{/if}
                                            {if $NaviFilter->Hersteller->kHersteller > 0}<input type="hidden" name="h" value="{$NaviFilter->Hersteller->kHersteller}" />{/if}
                                            {if $NaviFilter->Suchanfrage->kSuchanfrage > 0}<input type="hidden" name="l" value="{$NaviFilter->Suchanfrage->kSuchanfrage}" />{/if}
                                            {if $NaviFilter->MerkmalWert->kMerkmalWert > 0}<input type="hidden" name="m" value="{$NaviFilter->MerkmalWert->kMerkmalWert}" />{/if}
                                            {if $NaviFilter->Suchspecial->kKey > 0}<input type="hidden" name="q" value="{$NaviFilter->Suchspecial->kKey}" />{/if}
                                            {if $NaviFilter->SuchspecialFilter->kKey > 0}<input type="hidden" name="qf" value="{$NaviFilter->SuchspecialFilter->kKey}" />{/if}
                                            {if $NaviFilter->Suche->cSuche|count > 0}<input type="hidden" name="suche" value="{$NaviFilter->Suche->cSuche}" />{/if}
                                            {if $NaviFilter->Tag->kTag > 0}<input type="hidden" name="t" value="{$NaviFilter->Tag->kTag}" />{/if}
                                            {if is_array($NaviFilter->MerkmalFilter) && !$NaviFilter->MerkmalWert->kMerkmalWert}
                                                {foreach name=merkmalfilter from=$NaviFilter->MerkmalFilter item=mmfilter}
                                                    <input type="hidden" name="mf{$smarty.foreach.merkmalfilter.iteration}" value="{$mmfilter->kMerkmalWert}" />
                                                {/foreach}
                                            {/if}
                                            {if is_array($NaviFilter->TagFilter)}
                                                {foreach name=tagfilter from=$NaviFilter->TagFilter item=tag}
                                                    <input type="hidden" name="tf{$smarty.foreach.tagfilter.iteration}" value="{$tag->kTag}" />
                                                {/foreach}
                                            {/if}
                                            <select id="select_filter_attribute_{$kMerkmal}" name="mf{$kMerkmal}" onchange="javascript:document.getElementById('filter_characteristic_{$Merkmal->kMerkmal}').submit();">
                                                <option value="">{lang key="pleaseChoose" section="global"}</option>
                                                {foreach name=merkmalwertfilter from=$Merkmal->oMerkmalWerte_arr item=MerkmalWert}
                                                    <option value="{$MerkmalWert->kMerkmalWert}"{if $MerkmalWert->nAktiv} selected="selected"{/if}>{$MerkmalWert->cWert} ({$MerkmalWert->nAnzahl})</option>
                                                {/foreach}
                                            </select>
                                            <noscript><input type="submit" value="{lang key="view" section="global"}" /></noscript>
                                        </fieldset>
                                    </form>
                                </li>
                            {else}
                                {foreach name=merkmalwertfilter from=$Merkmal->oMerkmalWerte_arr item=MerkmalWert}
                                    {assign var=kMerkmalWert value=$MerkmalWert->kMerkmalWert}
                                    {if $MerkmalWert->nAktiv}
                                        <li class="vmiddle">
                                            <a rel="nofollow" href="{$NaviFilter->URL->cAlleMerkmalWerte[$kMerkmalWert]}" class="active"{if $Merkmal->cTyp == "BILD"} title="{$MerkmalWert->cWert}"{/if}>
                                                {if $MerkmalWert->cBildpfadKlein != "gfx/keinBild_kl.gif" && $Merkmal->cTyp != "TEXT"}<img src="{$MerkmalWert->cBildpfadKlein}" alt="" class="vmiddle" />{/if}
                                                {if $Merkmal->cTyp != "BILD"}{$MerkmalWert->cWert}{/if}
                                                <em class="count">({$MerkmalWert->nAnzahl})</em>
                                            </a>
                                        </li>
                                    {else}
                                        <li class="vmiddle">
                                            <a rel="nofollow" href="{$MerkmalWert->cURL}"{if $Merkmal->cTyp == "BILD"} title="{$MerkmalWert->cWert}"{/if}>
                                                {if $MerkmalWert->cBildpfadKlein != "gfx/keinBild_kl.gif" && $Merkmal->cTyp != "TEXT"}<img src="{$MerkmalWert->cBildpfadKlein}" alt="" class="vmiddle" />{/if}
                                                {if $Merkmal->cTyp != "BILD"}{$MerkmalWert->cWert}{/if}
                                                <em class="count">({$MerkmalWert->nAnzahl})</em>
                                            </a>
                                        </li>
                                    {/if}
                                {/foreach}
                            {/if}
                            {if !$smarty.foreach.merkmalfilter.last}<li class="filter_spacer"></li>{/if}
                        [B][COLOR=#ff0000]{/if}[/COLOR][/B]
                    {/foreach}
                </ul>
            </div>
        </div>
    {/if}
{/if}

Wobei die oben eingetragenen Merkmalnamen natürlich nur Beispiele sind. Hier trägst du ein welche Merkmale du nicht anzeigen lassen möchtest.
 

tewert1

Aktives Mitglied
6. Mai 2014
60
0
AW: Einzelne Merkmale ausblenden Artikelliste /gallerieliste

supi, vielen Dank und schönes Wochenende!
 

tewert1

Aktives Mitglied
6. Mai 2014
60
0
AW: Einzelne Merkmale ausblenden Artikelliste /gallerieliste

Hallo Martinwolf,

<code>
{assign var='filterMerkmale' value=','|explode:"lesestufe,altersempfehlung,größe,schuljahr"}
</code>

ich verstehe den ersten Part von dem Codestück nicht so richtig. Wo genau fängt der Eintrag der Merkmale an. Sieht fast so aus als wenn du ein PIPEzeichen an value hängst.
"value=','|"

MFG

 

martinwolf

Offizieller Servicepartner
SPBanner
6. September 2012
3.385
262
AW: Einzelne Merkmale ausblenden Artikelliste /gallerieliste

Hallo Martinwolf,

<code>
{assign var='filterMerkmale' value=','|explode:"lesestufe,altersempfehlung,größe,schuljahr"}
</code>

ich verstehe den ersten Part von dem Codestück nicht so richtig. Wo genau fängt der Eintrag der Merkmale an. Sieht fast so aus als wenn du ein PIPEzeichen an value hängst.
"value=','|"

MFG


Die Zeile macht übersetzt nichts weiter als aus dem String "lesestufe,altersempfehlung,größe,schuljahr" ein Array mit dem Namen "filterMerkmale" und trennt dabei nach jedem Komma. Das Ergebnis ist dann folgendes:

Code:
Array (
  [0] => lesestufe
  [1] => altersempfehlung
  [2] => größe
  [3] => schuljahr
)

Expode ist hier nur die Funktion die das Array baut. Die Schreibweise ist hier in der Reihenfolge anders als man es aus PHP her kennt. In smarty wird der Delimiter zu Beginn und vor dem Funktionsaufruf gesetzt. So sieht das beispielsweise in PHP aus:

$filterMerkmale = explode(',', 'lesestufe,altersempfehlung,größe,schuljahr');
 

tewert1

Aktives Mitglied
6. Mai 2014
60
0
AW: Einzelne Merkmale ausblenden Artikelliste /gallerieliste

Hallo Martinwolf,
habe versucht dies so umzusetzen, leider wird dann die komplette Merkmalfilter Leiste deaktiviert, ich arbeite ja mit dem Tiny Template auf 3.19 und in den Template Einstellungen ist "Benutzerdefinierte Template-Dateien verwenden?" auf JA gesetzt.
muß ich noch zusätzlich in der Boxenverwaltung die Box hineinziehen?
LG
 

tewert1

Aktives Mitglied
6. Mai 2014
60
0
AW: Einzelne Merkmale ausblenden Artikelliste /gallerieliste

Hallo Martinwolf,
filtert dein Code, die in deinem Codestück vorhandenen Merkmale weg, oder filtert er nur nach den erwähnten und läßt keine anderen durch?
 

martinwolf

Offizieller Servicepartner
SPBanner
6. September 2012
3.385
262
AW: Einzelne Merkmale ausblenden Artikelliste /gallerieliste

Die Definition in der ersten Zeile setzt die Merkmale die nicht angezeigt werden sollen.
 

seven39

Gut bekanntes Mitglied
17. Oktober 2009
690
12
AW: Einzelne Merkmale ausblenden Artikelliste /gallerieliste

Hallo Martinwolf,

werden die Merkmale im ganzen Shop nicht angezeit oder nur auf bestimmten Seiten?

Markus
 

martinwolf

Offizieller Servicepartner
SPBanner
6. September 2012
3.385
262
AW: Einzelne Merkmale ausblenden Artikelliste /gallerieliste

Hallo Martinwolf,

werden die Merkmale im ganzen Shop nicht angezeit oder nur auf bestimmten Seiten?

Markus

Da sich die Codeanpassung auf die box_filter_merkmale bezieht, entsprechend nur dort. Das Prinzip kann man aber auch übertragen, überall dort wo Merkmale angezeigt werden. Der Code wäre im Grunde auch derselbe. Musst den nur in die entsprechenden Templatedateien einbinden.
 

seven39

Gut bekanntes Mitglied
17. Oktober 2009
690
12
AW: Einzelne Merkmale ausblenden Artikelliste /gallerieliste

Da sich die Codeanpassung auf die box_filter_merkmale bezieht, entsprechend nur dort. Das Prinzip kann man aber auch übertragen, überall dort wo Merkmale angezeigt werden. Der Code wäre im Grunde auch derselbe. Musst den nur in die entsprechenden Templatedateien einbinden.

Hallo,

ok vielen Dank für die Info! Gibt es einen Weg das man bestimmte Merkmale aus der Wawi im Shop nirgends findet ohne den Code an jeder einzelnen Stelle einzufügen und ohne das Merkmal aus der Wawi zu löschen?

Markus
 

martinwolf

Offizieller Servicepartner
SPBanner
6. September 2012
3.385
262
AW: Einzelne Merkmale ausblenden Artikelliste /gallerieliste

Hallo,

ok vielen Dank für die Info! Gibt es einen Weg das man bestimmte Merkmale aus der Wawi im Shop nirgends findet ohne den Code an jeder einzelnen Stelle einzufügen und ohne das Merkmal aus der Wawi zu löschen?

Markus

Nein, wenn die Merkmale in der WAWI hinterlegt sind und Merkmale allgemein im Shop angezeigt werden sollen, dann werden folglich auch alle Merkmale angezeigt. Einen Filter gibt es standard nicht.
 

tewert1

Aktives Mitglied
6. Mai 2014
60
0
AW: Einzelne Merkmale ausblenden Artikelliste /gallerieliste

Hallo Martin,

meine 3.19 box_filter_merkmale.tpl sieht vom Inhalt anders aus als deine gepostete und wenn ich die Änderungen vorneheme wird der Merklam Filter rechts auf der Seite gar nicht mehr angezeigt. Vielleicht ein gutes Zeichen, das er die Custom Datei erkennt, nur ausführen tut er nichts.

Code:
{if $BoxenEinstellungen.navigationsfilter.merkmalfilter_verwenden=="box"}
   {if $Suchergebnisse->MerkmalFilter|@count > 0}
   <div class="sidebox" id="sidebox{$oBox->kBox}">
      <div class="sidebox_content">
         <ul class="filter_state">
            {foreach name=merkmalfilter from=$Suchergebnisse->MerkmalFilter item=Merkmal}
            {assign var=kMerkmal value=$Merkmal->kMerkmal}
               <li class="label">
                       {if $Einstellungen.navigationsfilter.merkmal_anzeigen_als != "T" && $Merkmal->cBildpfadKlein|count_characters > 0 && $Merkmal->cBildpfadKlein != "gfx/keinBild.gif"}
                        <img src="{$Merkmal->cBildpfadKlein}" alt="" class="vmiddle" />
                    {/if}
                    {if $Einstellungen.navigationsfilter.merkmal_anzeigen_als != "B"}
                        {$Merkmal->cName}
                    {/if}
               </li>
               {if ($Merkmal->cTyp == "SELECTBOX") && $Merkmal->oMerkmalWerte_arr|@count > 1}
                <li class="values select">
                    <form id="filter_characteristic_{$Merkmal->kMerkmal}" class="m_form" action="navi.php" method="get">
                        <fieldset>
                            {if $NaviFilter->Kategorie->kKategorie > 0}<input type="hidden" name="k" value="{$NaviFilter->Kategorie->kKategorie}" />{/if}
                            {if $NaviFilter->Hersteller->kHersteller > 0}<input type="hidden" name="h" value="{$NaviFilter->Hersteller->kHersteller}" />{/if}
                            {if $NaviFilter->Suchanfrage->kSuchanfrage > 0}<input type="hidden" name="l" value="{$NaviFilter->Suchanfrage->kSuchanfrage}" />{/if}
                            {if $NaviFilter->MerkmalWert->kMerkmalWert > 0}<input type="hidden" name="m" value="{$NaviFilter->MerkmalWert->kMerkmalWert}" />{/if}
                            {if $NaviFilter->Suchspecial->kKey > 0}<input type="hidden" name="q" value="{$NaviFilter->Suchspecial->kKey}" />{/if}
                            {if $NaviFilter->SuchspecialFilter->kKey > 0}<input type="hidden" name="qf" value="{$NaviFilter->SuchspecialFilter->kKey}" />{/if}
                            {if $NaviFilter->Suche->cSuche|count > 0}<input type="hidden" name="suche" value="{$NaviFilter->Suche->cSuche}" />{/if}
                            {if $NaviFilter->Tag->kTag > 0}<input type="hidden" name="t" value="{$NaviFilter->Tag->kTag}" />{/if}
                            {if is_array($NaviFilter->MerkmalFilter) && !$NaviFilter->MerkmalWert->kMerkmalWert}
                                {foreach name=merkmalfilter from=$NaviFilter->MerkmalFilter item=mmfilter}
                                    <input type="hidden" name="mf{$smarty.foreach.merkmalfilter.iteration}" value="{$mmfilter->kMerkmalWert}" />
                                {/foreach}
                            {/if}
                            {if is_array($NaviFilter->TagFilter)}
                                {foreach name=tagfilter from=$NaviFilter->TagFilter item=tag}
                                    <input type="hidden" name="tf{$smarty.foreach.tagfilter.iteration}" value="{$tag->kTag}" />
                                {/foreach}
                            {/if}
                            <select id="select_filter_attribute_{$kMerkmal}" name="mf{$kMerkmal}" onchange="javascript:document.getElementById('filter_characteristic_{$Merkmal->kMerkmal}').submit();">
                                <option value="">{lang key="pleaseChoose" section="global"}</option>
                                {foreach name=merkmalwertfilter from=$Merkmal->oMerkmalWerte_arr item=MerkmalWert}
                                    <option value="{$MerkmalWert->kMerkmalWert}"{if $MerkmalWert->nAktiv} selected="selected"{/if}>{$MerkmalWert->cWert} ({$MerkmalWert->nAnzahl})</option>
                                {/foreach}
                            </select>
                            <noscript><input type="submit" value="{lang key="view" section="global"}" /></noscript>
                        </fieldset>
                    </form>
                </li>
               {else}
                   {foreach name=merkmalwertfilter from=$Merkmal->oMerkmalWerte_arr item=MerkmalWert}
                      {assign var=kMerkmalWert value=$MerkmalWert->kMerkmalWert}
                      {if $MerkmalWert->nAktiv}
                         <li class="vmiddle">
                            <a rel="nofollow" href="{$NaviFilter->URL->cAlleMerkmalWerte[$kMerkmalWert]}" class="active"{if $Merkmal->cTyp == "BILD"} title="{$MerkmalWert->cWert}"{/if}>
                               {if $MerkmalWert->cBildpfadKlein != "gfx/keinBild_kl.gif" && $Merkmal->cTyp != "TEXT"}
                                  <img src="{$MerkmalWert->cBildpfadKlein}" alt="" class="vmiddle" />
                               {/if}
                               {if $Merkmal->cTyp != "BILD"}
                                   {$MerkmalWert->cWert}
                               {/if}
                               <em class="count">({$MerkmalWert->nAnzahl})</em>
                            </a>
                         </li>
                      {else}
                         <li class="vmiddle">
                            <a rel="nofollow" href="{$MerkmalWert->cURL}"{if $Merkmal->cTyp == "BILD"} title="{$MerkmalWert->cWert}"{/if}>
                               {if $MerkmalWert->cBildpfadKlein != "gfx/keinBild_kl.gif" && $Merkmal->cTyp != "TEXT"}
                                  <img src="{$MerkmalWert->cBildpfadKlein}" alt="" class="vmiddle" />
                               {/if}
                               {if $Merkmal->cTyp != "BILD"}
                                   {$MerkmalWert->cWert}
                               {/if}
                               <em class="count">({$MerkmalWert->nAnzahl})</em>
                            </a>
                         </li>
                      {/if}
                   {/foreach}
               {/if}
               {if !$smarty.foreach.merkmalfilter.last}<li class="filter_spacer"></li>{/if}
            {/foreach}
         </ul>
      </div>
   </div>
   {/if}
{/if}