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: Shopversion 2.0 - fullcontent auch für Startseite / Product-Listing und andere

    e-moves

    • Fördermitglied
    • Beiträge: 248
    • Geschlecht:
    Hallo,

    im tpl_modified wurde ein fullcontent-array für verschiedene Seiten definiert.
    Das ist eine schöne Sache, da man sich damit die ganzen Einzel-Abfragen sparen kann wie z.B. (if !strstr ($smarty.server.PHP_SELF, 'checkout') etc.).

    Nun wollte ich das noch für die Startseite, die Listings und andere Seiten erweitern aber es funktioniert nicht. Scheinbar sind nicht alle Seiten verfügbar.
    Für die Startseite habe ich es mit FILENAME_DEFAULT versucht. Die Startseite ist dann zwar fullcontent aber die product_listings dann auch. FILENAME_PRODUCT_LISTING geht auch nicht.

    Wie kann man auch andere Seiten als $fullcontent verfügbar machen?
    Grüße
    Dirk

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

    GTB

    • modified Team
    • Gravatar
    • Beiträge: 5.384
    • Geschlecht:
    Hallo,

    schau mal in der index.html nach. Dort gibt es einen eigenen Bereicht für die Startseite.

    Gruss Gerhard

    e-moves

    • Fördermitglied
    • Beiträge: 248
    • Geschlecht:
    Hallo Gerhard,
    für die Startseite ist mir das klar geworden.
    Aber warum lässt sich das array in der boxes.php nicht einfach erweitern?
    Wenn ich im tpl_modified noch FILENAME_PRODUCT_LISTING hinzufüge bleibt die Seite trotzdem 2-spaltig.
    Die Sitemap ist fullcontent obwohl das nicht im array steht. Da fehlt mir im Moment noch der Durchblick.
    Grüße
    Dirk

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 10.241
    • Geschlecht:
    Im Produkt-Listing ist man in einer Kategorie und die hat server-intern diese URL:
    /index.php?cPath=XX
    FILENAME_DEFAULT würde also Kategorie-Seiten mit einbeziehen.
    Das gleiche gilt bei nach Herstellern gefilterte Seiten, auch da ist man eigtl. auf der /index.php.
    Deshalb muß man für Seiten die die index.php als basename($PHP_SELF) haben größere Geschütze auffahren.
    In den HTML-Dateien des Templates kann man z.B. mittels
    Code: XML  [Auswählen]
    {if $smarty.get.cPath}
    prüfen ob man auf einer Kategorieseite ist, mittels
    Code: XML  [Auswählen]
    {$smarty.get.manufacturers_id}
    prüfen ob man auf einer Herstellerseite ist usw.

    In der boxes.php könnte man das $fullcontent-Array zwar um FILENAME_DEFAULT erweitern müsste jedoch aus dem
    Code: PHP  [Auswählen]
    if (!in_array(basename($PHP_SELF), $fullcontent)) {
        ...
    }
    so etwas in der Art machen
    Code: PHP  [Auswählen]
    if (!in_array(basename($PHP_SELF), $fullcontent) && !isset($_GET['cPath']) &&  !isset($_GET['manufacturers_id'])) {
        ...
    }
    (*EDIT* korrigiert: doppeltes && entfernt *END_EDIT*)
    wenn man die Boxen auf den Kategorie- und Herstellerseiten haben möchte und keinen fullcontent.
    Damit hättest du dann die Startseite erwischt.

    Gruß,
    noRiddle

    e-moves

    • Fördermitglied
    • Beiträge: 248
    • Geschlecht:
    Hallo noRiddle,

    danke für deine Erklärungen.
    Wenn ich es so wie von dir beschrieben mache, ist zwar die Startseite fullcontent aber auch die Kategorie-Listings. Das Scenario Startseite=fullcontent, product_listings=mit sidebar konnte ich noch nicht lösen.
    Das array lässt sich für andere Dateien wie z.B. FILENAME_PRODUCT_INFO, FILENAME_PRODUCTS_NEW problemlos erweitern, aber nicht für FILENAME_PRODUCT_LISTING.
    Wie fullcontent für die Sitemap definiert wurde ist mir immer noch schleierhaft.
    Grüße
    Dirk

    h-h-h

    • modified Team
    • Beiträge: 4.565
    Hallo Dirk,
    die Konstante FILENAME_PRODUCT_LISTING ist für die Datei product_listing.php welche über die index.php/default.php eingebunden.
    Doch die Produktlistenseiten werden über die index.php in PHP_SELF aufgerufen mit dem Parameter cPath, daher kann dies nicht funktionieren.

    [Artikellisten/Kategorie = fullcontent]
    boxes.php
    Code: PHP  [Auswählen]
    // -----------------------------------------------------------------------------------------
    //      full content
    // -----------------------------------------------------------------------------------------
      if (!in_array(basename($PHP_SELF), $fullcontent)) {
        require_once(DIR_FS_BOXES . 'categories.php');
        require_once(DIR_FS_BOXES . 'manufacturers.php');
        require_once(DIR_FS_BOXES . 'last_viewed.php');
      } else {
        // smarty full content
        $smarty->assign('fullcontent', true);  
      }
      // Produktlisten Fullcontent:
      if (basename($PHP_SELF) == FILENAME_DEFAULT && isset($_GET['cPath'])) {
        $smarty->assign('fullcontent', true);
      }

    [Startseite=fullcontent, Kategorie/Hersteller=mit Sidebar]

    A: index.html
    Code: XML  [Auswählen]
    {if $home || (isset($fullcontent) && $fullcontent)}

    B: boxes.php
    Code: PHP  [Auswählen]
    // -----------------------------------------------------------------------------------------
    //      full content
    // -----------------------------------------------------------------------------------------
      if (!in_array(basename($PHP_SELF), $fullcontent)) {
        require_once(DIR_FS_BOXES . 'categories.php');
        require_once(DIR_FS_BOXES . 'manufacturers.php');
        require_once(DIR_FS_BOXES . 'last_viewed.php');
      } else {
        // smarty full content
        $smarty->assign('fullcontent', true);  
      }
      // Startseite Fullcontent:
      if (basename($PHP_SELF) == FILENAME_DEFAULT && !isset($_GET['cPath']) && !isset($_GET['manufacturers_id'])) {
        $smarty->assign('fullcontent', true);
      }

    Viele Grüße,
    h-h-h

    e-moves

    • Fördermitglied
    • Beiträge: 248
    • Geschlecht:
    Hallo h-h-h,

    vielen Dank für deine Erläuterungen und die Lösung. Das klappt bestens.
    Ihr habt mit der 2er Version wirklich hervorragende Arbeit geleistet.

    Viele Grüße und ein sonniges Wochenende.
    Dirk

    xeron

    • Schreiberling
    • Beiträge: 496
    • Geschlecht:
    Hallo,

    habe das in der aktuellen ( Vollversion 2.0.5.0 rev 12487 ) Version versucht, aber irgendwie geht es nicht. Scheinbar peil ich es gerade net.

    Kann mir jemand einen Tip geben. Danke

    Grüße
    André
    4 Antworten
    3025 Aufrufe
    15. Januar 2012, 19:37:20 von oneQ
    2 Antworten
    1602 Aufrufe
    10. Juli 2013, 13:27:54 von Glera77
    1 Antworten
    1502 Aufrufe
    03. März 2015, 15:53:04 von liongizmo
    15 Antworten
    5953 Aufrufe
    16. Februar 2014, 11:43:19 von 61lazzo
    anything