Werbung / Banner buchen
Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Smarty: IF-Abfrage in der Template-Datei

    Traumkunst

    • Fördermitglied
    • Beiträge: 42
    • Geschlecht:
    Smarty: IF-Abfrage in der Template-Datei
    am: 25. Juni 2012, 18:38:44
    Smarty-Anfänger-Frage...  :-?

    Ich möchte gerne im Template ein Bildchen einbinden, das entweder einen leeren oder einen gefüllten Warenkorb anzeigt, je nachdem ob was drin ist oder nicht.

    Ich nutze schon eine kleine Modifikation, um eine Smarty-Variable über den Inhalt (Stückzahl) des Warenkorbs zur Verfügung zu haben. In die includes/header.php habe ich folgenden Code eingebunden:

    Code: PHP  [Auswählen]
    if (isset($_SESSION['cart'])) {
            if (count($_SESSION['cart']->contents) > 0)
            {
            $smarty->assign('cart_item_count', $_SESSION['cart']->count_contents());
            }
    }

    Funktioniert auch: mittels {$cart_item_count} kann ich mir im Template die Anzahl Items im Warenkorb anzeigen lassen.

    Jetzt möchte ich dem Link zum Warenkorb eine Klasse verpassen, die eben davon abhängt, ob was im Warenkorb ist oder nicht.  Mein Ausgangs-Code (ohne Abfrage) lautet:

    Code: PHP  [Auswählen]
    <a href="{$cart}" class="INcart">{#link_cart#}</a>

    Jetzt bin ich da mal ganz naiv so rangegangen:

    Code: PHP  [Auswählen]
    <a href="{$cart}" class="
       {if($cart_item_count>0)}INcartFull{/if}
       {if($cart_item_count==0)}INcartEmpty{/if}
    "
    >{#link_cart#}</a>

    (Keine Ahnung, ob im Smarty-Slang eine IF/ELSE-Abfrage möglich wäre; daher zweimal IF)

    Das funktioniert aber leider nicht: Smarty bricht das Rendern der Seite immer komplett ab. Hab die IF-Statements auch schon unterschiedlich formatiert, geklammert, Gleich-/Größer-Zeichen anders gesetzt usw., haut aber leider alles nicht hin.

    Weiß jemand, wie diese Abfrage richtig zu formulieren wäre? Geht das so überhaupt?

    Vielen Dank,
    Frank



    Linkback: https://www.modified-shop.org/forum/index.php?topic=20781.0

    Modulfux

    • Experte
    • Beiträge: 3.590
    • Geschlecht:
    Re: Smarty: IF-Abfrage in der Template-Datei
    Antwort #1 am: 25. Juni 2012, 18:55:44
    Funktioniert das vielleicht?

    Code: PHP  [Auswählen]
    <a href="{$cart}" class="{if $cart_item_count>0}INcartFull{else}INcartEmpty{/if}">{#link_cart#}</a>

    Gruß
    Ronny

    Traumkunst

    • Fördermitglied
    • Beiträge: 42
    • Geschlecht:
    Re: Smarty: IF-Abfrage in der Template-Datei
    Antwort #2 am: 25. Juni 2012, 19:03:39
    Ha! Das funktioniert!  :-) Vielen vielen vielen Dank. :thx:

    ... und wieder was dazugelernt.
    4 Antworten
    3179 Aufrufe
    23. Juli 2011, 13:00:25 von koshiro
    3 Antworten
    1761 Aufrufe
    26. Januar 2017, 17:25:29 von awids
    3 Antworten
    1764 Aufrufe
    19. August 2016, 12:47:16 von Teratek
    6 Antworten
    2688 Aufrufe
    21. Juni 2018, 18:26:36 von Jürgen
               
    anything