rechtstexte für onlineshop
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: Leftcol auf Indexseite ausblenden

    j0k3r87

    • Neu im Forum
    • Beiträge: 17
    Leftcol auf Indexseite ausblenden
    am: 23. Mai 2015, 12:04:44
    Habe mich daran versucht das Leftcol auf der Indexseite auszublenden, bisher leider nur teilweise mit Erfolg.

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

    So klappt es aber nicht, versuche ich es aber so:
    Code: PHP  [Auswählen]
    {if !strstr($smarty.server.PHP_SELF, 'index')}
            <div id="leftcol">
                {$sub_CATEGORIES}
                {$box_ADMIN}         
            </div>
    {/if}

    klappt es... :-? Bin nicht so bewand in php, aber normalerweise müsste der Operator doch richtig sein oder nicht?

    MfG

    Linkback: https://www.modified-shop.org/forum/index.php?topic=33035.0
    Modulshop - Eine große Auswahl an neuen und hilfreichen Modulen für die modified eCommerce Shopsoftware

    hpzeller

    • Experte
    • Beiträge: 4.129
    • Geschlecht:
    Re: Leftcol auf Indexseite ausblenden
    Antwort #1 am: 23. Mai 2015, 12:42:26
    Code: PHP  [Auswählen]
       
    {if !strstr($smarty.server.PHP_SELF, 'checkout') && !strstr($smarty.server.PHP_SELF, 'index')}
              <div id="leftcol">
                  {$sub_CATEGORIES}
                  {$box_ADMIN}        
              </div>
    {/if}
     

    http://de.wikipedia.org/w/index.php?title=Boolesche_Algebra -> De Morgansche Gesetze (Beispiel 8 und 8'), es gelten folgende Beziehungen in PHP: '! = NICHT', '|| = ODER', '&& = UND'.

    Gruss
    Hanspeter

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 14.028
    • Geschlecht:
    Re: Leftcol auf Indexseite ausblenden
    Antwort #2 am: 23. Mai 2015, 17:46:31
    Das zur Logik.

    Wenn ich recht in der Annahme gehe, daß der OP mit "Indexseite" die Startseite meint reicht das allerdings nicht. Im übrigen ist strpos() schneller als strstr().
    Da intern "index" auch auf Kategorieseiten und auf Herstellerseiten vorkommt müsste der Code folgendermassen aussehen:

    Wenn du die aktuelle Shopversion hast
    bzw. in /templates/YOUR_TEMPLATE/source/boxes.php das hier definiert ist:
    Code: PHP  [Auswählen]
    $smarty->assign('home', strpos($PHP_SELF, 'index')!==false && !isset($_GET['cPath']) && !isset($_GET['manufacturers_id']) ? 1 : 0);
    einfach so:
    Code: PHP  [Auswählen]
    {if !$home}
        <div id="leftcol">
            {$sub_CATEGORIES}
            {$box_ADMIN}        
        </div>
    {/if}

    ansonsten baue dir den erstgenannten Code in die boxes.php ein.
    Alles andere wäre eine lange Kette an Bedingungen die irgendwie so aussehen müsste:
    Code: PHP  [Auswählen]
    {if (strpos($smarty.server.PHP_SELF, 'index') && ($smarty.get.cPath || $smarty.get.manufacturers_id)) || !strpos($smarty.server.PHP_SELF, 'index')}

    Das liegt an bereits oben genannter Tatsache, daß auch auf Kategorie- und Herstellerseiten in der internen (nicht SEO-) URL "index" vorkommt. Eine einfache Negierung des Vorkommens von "index" würde also diese Kategorie- und Herstellerseiten auch ausschließen.

    Gruß,
    noRiddle

    j0k3r87

    • Neu im Forum
    • Beiträge: 17
    Re: Leftcol auf Indexseite ausblenden
    Antwort #3 am: 24. Mai 2015, 11:58:23
    Vielen Dank für eure Hilfe, hat wunderbar geklappt mit dem Code von noRiddle :)
    Modulshop - Eine große Auswahl an neuen und hilfreichen Modulen für die modified eCommerce Shopsoftware
    2 Antworten
    2500 Aufrufe
    29. März 2011, 11:57:17 von hwk
    7 Antworten
    4092 Aufrufe
    30. August 2010, 17:03:43 von Tomcraft
    7 Antworten
    3949 Aufrufe
    11. Dezember 2012, 18:01:11 von d2m
    6 Antworten
    3066 Aufrufe
    09. Juli 2013, 17:57:53 von noRiddle (revilonetz)
               
    anything