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: If Abfrage für category_listing

    tele

    • Fördermitglied
    • Beiträge: 126
    If Abfrage für category_listing
    am: 18. Mai 2013, 09:42:50
    Hallo Leute ich möchte eine Abfrage für die category_listing machen, d.h wenn die category_listing geladen wird (Kategorien und Unterkategorien) dann zeige keine Sidebar.

    Ich habe es schon hiermit versucht:

    Code: PHP  [Auswählen]
        {if !strstr ($smarty.server.PHP_SELF, 'categorie_listing')} ... {/if}
    Passiert aber nix...

    Gruß

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

    cYbercOsmOnauT

    • modified Team
    • Beiträge: 914
    • Geschlecht:
    Re: If Abfrage für category_listing
    Antwort #1 am: 18. Mai 2013, 11:33:57
    $_SERVER['PHP_SELF'] fängt immer mit einem / an und endet auch mit dem Suffix der angesprochenen Datei. Also wenn, dann müsste da /categorie_listing.php stehen. Ich persönlich würde mit $_SERVER['SCRIPT_NAME'] oder gar $_SERVER['REQUEST_URI'] arbeiten.

    http://php.net/manual/de/reserved.variables.server.php

    categorie_listing ist aber keine eigene Datei sondern ein Template.. demnach geht Dein Weg so gar nicht. ;) Ich wollte Dir aber mal erklären, was diese Servervariablen bedeuten.
    Viele Grüße,
    Tekin Birdüzen - Zend Certified Engineer

    tele

    • Fördermitglied
    • Beiträge: 126
    Re: If Abfrage für category_listing
    Antwort #2 am: 18. Mai 2013, 12:17:14
    Stimmt der Code stimmt so nicht da fehlt der /
    Danke für die Info
     .. okay wie kann ich nun die Templates abfragen?

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 14.006
    • Geschlecht:
    Re: If Abfrage für category_listing
    Antwort #3 am: 18. Mai 2013, 14:52:32
    Weiß ja nicht was du "Sidebar" nennst
    - nehme an, vom Standard-Template ausgehend, die id="leftcol" und id="rightcol" -
    und weiß auch nicht was statt dessen dargestellt werden soll,
    ob z.B. dann der Content-Bereich breiter sein soll.
    Und was ist mit product_listing ?, also der Fall, daß die unterste Kategorie geöffnet ist und alle Produkte gelistet werden ?

    Für alle Kategorien allgemein:
    Code: PHP  [Auswählen]
    {if !$smarty.get.cPath}
    INHALT
    {/if}

    oder
    Code: PHP  [Auswählen]
    {if $smarty.get.cPath == ''}
    INHALT
    {/if}

    Um <div id="content"> in dem Fall eine andere Klasse oder ID zu vergeben:
    (Beispiel mit ID)
    Code: PHP  [Auswählen]
    <div id="content{if !$smarty.get.cPath}-cats{/if}">

    Hier hätte content dann die ID content-cats und kann per CSS anders gestylt werden, sprich, es kann u.a. eine andere Breite vergeben werden.

    Willst du wirklich nur categorie_listing ansprechen und nicht product_listing
    - also alle Kategorien die nicht den tiefsten Level haben und man sich somit im Template product_listing befindet-
    wird's etwas komplexer, da habe ich aus dem Stegreif auch keine Idee zu.

    Gruß,
    noRiddle

    karsta.de

    • Experte
    • Beiträge: 3.159
    Re: If Abfrage für category_listing
    Antwort #4 am: 18. Mai 2013, 15:46:05
    @ tele
    vielleicht schaust du dir mal den Einbau der geteilten Navigation an:
    http://www.modified-shop.org/forum/index.php?topic=4535.0

    Da werden die Kategorien als Sidebar direkt in der product_listing.html aufgerufen und angezeigt:
    Code: PHP  [Auswählen]
    {php}
    global $smarty;
    $this->assign('subcat',$smarty->_tpl_vars['sub_CATEGORIES']);
    {/php}

    <div id="sidebar">{$subcat}</div>
     

    BG kgd

    tele

    • Fördermitglied
    • Beiträge: 126
    Re: If Abfrage für category_listing
    Antwort #5 am: 18. Mai 2013, 15:52:59
    Ja genau die leftcol meine ich.
    Diese möchte ich ausblenden wenn man sich in der Kategorieübersicht befindet. Geht man in die product_listing über sprich man ist in der Kategorie kann die leftcol wieder angezeigt werden.

    h-h-h

    • modified Team
    • Beiträge: 4.562
    Re: If Abfrage für category_listing
    Antwort #6 am: 18. Mai 2013, 22:21:13
    index.php
    Suche:
    Code: PHP  [Auswählen]
    $smarty->assign('language', $_SESSION['language']);
    Füge danach ein:
    Code: PHP  [Auswählen]
    $smarty->assign('category_depth', $category_depth);

    Und dann einfach nur in der index.html

    Code: XML  [Auswählen]
    {if $category_depth != 'nested'}

    <..left_col..>

    {/if}

    Viele Grüße

    h-h-h

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 14.006
    • Geschlecht:
    Re: If Abfrage für category_listing
    Antwort #7 am: 18. Mai 2013, 22:46:06
    Hi h-h-h, gute Idee,
    das funktioniert aber nicht zwingend, denn wenn man keine Unterkategorie hat, die Hauptkategorie also keine parents hat, ist $category_depth != 'nested'.
    Haste noch 'ne Idee ?

    *EDIT* Quatsch, nehme alles zurück und behaupte das Gegenteil :-D, sorry,
    bzw. war meine Behauptung völliges Durcheinander, funktioniert so wie du gesagt hast.

    Gruß,
    noRiddle

    tele

    • Fördermitglied
    • Beiträge: 126
    Re: If Abfrage für category_listing
    Antwort #8 am: 19. Mai 2013, 07:45:31
    Danke, Super Support hier hat alles geklappt.
    Man lernt immer wieder dazu ...das finde ich gut so....

    Gruß

    tele

    • Fördermitglied
    • Beiträge: 126
    Re: If Abfrage für category_listing
    Antwort #9 am: 26. Mai 2013, 22:25:08
    Ich muss das ganze nochmal aufrollen...

    Code: PHP  [Auswählen]
        {if !strstr ($smarty.server.PHP_SELF, 'checkout')}
          {if $category_depth != 'nested'}
          <div id="leftcol">
          {$sub_CATEGORIES}
           </div>
          {/if}    {/if}

    In den Contentseiten wie Impressum, Warenkorb usw. wird die leftcol eingeblendet ohne sub_categories das ist auch richtig so nur das leere leftcol div ist da fehl am Platz. Da dann dort ein leerer Streifen ist.

    Wie gesagt ich wollte die sub_cats nur in den categorie_listings anzeigen lassen, ansonsten auch keine leftcol.

    Gruß
    3 Antworten
    2992 Aufrufe
    03. März 2011, 11:42:08 von xtc_geek
    6 Antworten
    3750 Aufrufe
    02. September 2013, 22:27:23 von armandogarcia
    2 Antworten
    2514 Aufrufe
    27. März 2012, 23:07:18 von jannemann
    2 Antworten
    3069 Aufrufe
    21. April 2012, 12:35:30 von gar85