Aktuelle Shop-Kategorie hervorheben
Sebastian Feindt:
Aktuelle Shop-Kategorie hervorheben
23.07.2008, 8:21
Nachfolgend soll erläutert werden, wie das Template angepasst werden kann, um die aktive Kategorie, in der sich der User befindet, hervorgehoben werden kann.
Anleitung für Nutzer des FWP shops mit einer Version < 3.3.1
1. Kategorielogik erweitern
2. Smarty-Plugin anlegen
Es ist folgende Datei anzulegen:
_system/3.0/_classesphp/_ext_smarty/fwpPlugins/function.fwpHighlightCurrentCat.php
3. Template anpassen
Beim orangen Template liegt die Logik für die Kategoriedarstellung in folgender Datei:
_templates/orange/_front/_elements/categorie.tpl
Folgender Code wurde neu eingefügt:
{fwpHighlightCurrentCat iCat=$aCategory.iCategoryId}
An der Stelle wird, sofern die Kategorie aktiv ist, eine neue CSS-Klasse verwendet. Es wird der Code class="active" eingefügt.
Ab Version 3.3.1 sind alle Änderungen bereits enthalten. Für eigene Templates ist nur der dritte Schritt erforderlich.
_________________
Viele Grüße,
Sebastian
FWP Systems GmbH
Anleitung für Nutzer des FWP shops mit einer Version < 3.3.1
1. Kategorielogik erweitern
Zunächst müssen die Navigationsinformationen ergänzt werden.
Diese sind in der Datei _system/3.0/_inc/base_front.inc.php zu finden.
In der aktuellen Version 3.3 ist nach der Zeile 395 eine neue Zeile einzufügen. Bitte füge dort folgenden Code ein:
| Code: |
| $aArray['iCategoryId'] = $oCategory->get_iCategoryId(); |
Der gesamte Block sollte jetzt so aussehen:
| Code: |
| if ($b==1)
{ $aArray = array(); $aArray['iCategoryId'] = $oCategory->get_iCategoryId(); $aArray['sLink'] = repLink(LINK_CATEGORY,$aReplaceLink); $aArray['sNotation'] = $aNotation[$_SESSION['sLanguageId']]; $aArray['sSpace'] = $sSpace; $aNavi[] = $aArray; } |
2. Smarty-Plugin anlegen
Es ist folgende Datei anzulegen:
_system/3.0/_classesphp/_ext_smarty/fwpPlugins/function.fwpHighlightCurrentCat.php
| Code: |
| function smarty_function_fwpHighlightCurrentCat($params, &$smarty)
{ if (!array_key_exists('iCat', $params)) { return ''; } if (array_key_exists('sPage', $_GET) && ($_GET['sPage'] == 'category' || $_GET['sPage'] == 'product')) { if (array_key_exists('iCat', $_SESSION) && $_SESSION['iCat'] == $params['iCat']) { if (array_key_exists('inclass', $params)) { return (array_key_exists('class', $params)) ? $params['class'] : 'active'; } else { return (array_key_exists('class', $params)) ? 'class="' . $params['class'] . '"' : 'class="active"'; } } } } |
3. Template anpassen
Beim orangen Template liegt die Logik für die Kategoriedarstellung in folgender Datei:
_templates/orange/_front/_elements/categorie.tpl
| Code: |
| <ul>
{foreach item=aCategory from=$aOutput.aNavi} <li>{if $aCategory.sSpace != ""} {/if}<a href="{$aCategory.sLink}" {fwpHighlightCurrentCat iCat=$aCategory.iCategoryId}>{if $aCategory.sSpace != ""}» {/if}{$aCategory.sNotation}</a></li> {/foreach} <li><a href="{$aLink.offerList}">{$aOutput.linkOffer}</a></li> </ul> |
Folgender Code wurde neu eingefügt:
{fwpHighlightCurrentCat iCat=$aCategory.iCategoryId}
An der Stelle wird, sofern die Kategorie aktiv ist, eine neue CSS-Klasse verwendet. Es wird der Code class="active" eingefügt.
Ab Version 3.3.1 sind alle Änderungen bereits enthalten. Für eigene Templates ist nur der dritte Schritt erforderlich.
_________________
Viele Grüße,
Sebastian
FWP Systems GmbH
Seite 1 von 1
Ähnliche Beiträge zu Aktuelle Shop-Kategorie hervorheben
![]() |
Beitrag | Forum | Antworten | ![]() |
| Vorschaubilder in der Kategorie
(Erstellt von Adrian am 19.11.2008, 12:47) |
Anleitungen und Workshops | 0 | ||
| *gelöst* Fehler nach Installation, Shop wird noch
(Erstellt von philiph am 13.11.2008, 15:50) |
Installation und Einrichtung | 1 | ||
| News im Shop anzeigen
(Erstellt von Sebastian Feindt am 07.11.2008, 12:32) |
Anleitungen und Workshops | 11 | ||
| Shop Wiederherstellung
(Erstellt von boupda am 03.11.2008, 20:34) |
Installation und Einrichtung | 1 | ||










