Gelöst Megamenu --> Kategoriebeschreibung --> truncate?

_simone_

Sehr aktives Mitglied
17. Februar 2013
3.240
452
Emsland
Firma
Notun Delend
Hat jemand eine Idee, wie man die Kategoriebeschreibung im Megamenü kürzen kann?
Hintergrund:
Wir würden gerne eine längere Kategoriebeschreibung verwenden, aber dadurch "bläht" sich das MM in der Größe ganz schön auf.

<div class="description text-muted small">{$category->cBeschreibung|truncate:100}</div>

Diese Änderung in der /categories_mega.tpl kürzt zwar auf 100 Zeichen, aber gleichzeitig wird auch die Anzahl der Kategorien gekürzt und das Hintergrundbild ist mit der Header-Farbe überschrieben. :eek:

Das ist also definitiv nicht der richtige Ansatz. ;)

Per css geht es, aber nur als Einzeiler. Wir hätten aber schon gerne 3-4 Zeilen.

Jemand eine Idee?
 

_simone_

Sehr aktives Mitglied
17. Februar 2013
3.240
452
Emsland
Firma
Notun Delend
*push*
Für den shop4-Start in in 6 Tagen würden wir das brauchen, da wir andererseits alle relevanten Kategoriebescheibungen drastisch zusammenkürzen müssten. :(

Bin für jeden Tipp dankbar...
 

FPrüfer

Moderator
Mitarbeiter
19. Februar 2016
1.878
518
Halle
Hallo,
das truncate kürzt den Text hart - unabhängig jeglicher formatierung. Wenn ihr also in einer Kategoriebeschreibung HTML-formatierten Text habt, dann "zerschießt" das truncate ggfs. diese Formatierung und damit das komplette Markup.
Legt hierfür besser ein Kategorieattribut (z.B. short_desc) an und pflegt die Texte darüber. An der o.g. Stelle im Template gibst du dann den Attributwert statt cBeschreibung aus.
PHP:
<div class="description text-muted small">{$category->categoryAttributes.short_desc->cWert}</div>

P.S.: Bitte beachten, dass Attributnamen immer klein geschrieben werden müssen, auch wenn Sie anders angelegt wurden!
 
  • Gefällt mir
Reaktionen: _simone_

_simone_

Sehr aktives Mitglied
17. Februar 2013
3.240
452
Emsland
Firma
Notun Delend
Achso, wenn es mal jemand braucht, hier meine Umsetzung:

<deinTemplate>/snippets/categories_mega.tpl
Zeile ~60:
PHP:
<div class="description text-muted small">{$category->cBeschreibung}</div>
ersetzen durch:
PHP:
{if !empty($category->categoryAttributes.short_desc->cWert)}
        <div class="description text-muted small">{$category->categoryAttributes.short_desc->cWert}</div>
    {else}
        <div class="description text-muted small">{$category->cBeschreibung}</div>
    {/if}