Templateshop - Eine große Auswahl an neuen und modernen Templates für die modified eCommerce Shopsoftware
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: Überflüssiger Code in /includes/modules/product_listing.php ?

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.988
    • Geschlecht:
    Vielleicht habe ich Zusammenhänge nicht verstanden und bitte deshalb, daß sich das noch weitere Community-Mitglieder anschauen:

    Die /includes/modules/product_listing.php  wird lediglich in der /includes/modules/default.php  im
    Code: PHP  [Auswählen]
    case 'products':
    eingebunden.

    Ich habe den Eindruck, daß die Code-Sequenz in /includes/modules/product_listing.php  die mit diesem beginnt
    Code: PHP  [Auswählen]
    } elseif (isset($current_category_id) && $current_category_id > 0) {

    überflüssig ist.
    Sie greift nach meiner Analyse nur dann wenn es sich um eine Kategorie handelt die keine Produkte aber auch keine Unterkategorien hat.

    Begründung:
    Das else  aus dem zitierten Code greift wenn es keine Produkte in der Kategorie gibt, denn es ist das else  zu
    Code: PHP  [Auswählen]
    if ($listing_split->number_of_rows > 0) {

    womit das else  gleich ist mit "es gibt keine Produkte in der Kategorie".

    Wenn es keine Produkte, wohl jedoch Unterkategorien gibt, greift der
    Code: PHP  [Auswählen]
    case 'nested':

    aus der /includes/modules/default.php, wo die /includes/modules/categories_listing.php  includiert wird.

    Soll eine Kategorie die keine Produkte und auch keine Unterkategorien hat trotzdem angezeigt werden ?
    - womit meine Aussage "überflüssig" nicht greifen würde -
    und wenn ja, warum ?

    Gruß,
    noRiddle

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

    Karl1

    • Experte
    • Beiträge: 1.879
    Hallo noRiddle,
    habe mir den von dir beschriebenen Code angesehen und folgenden Test dazu gemacht.

    Kategoriebaum:
    - Testkategorie 8 (ohne Produkte)
     -- Testunterkategorie 8.1 (ohne Produkte bzw. mit deaktivierten Produkten)

    Testkategorie 8 zeigt sich dann im Shop so
    [ Für Gäste sind keine Dateianhänge sichtbar ]

    und hier die Testunterkategorie 8.1
    [ Für Gäste sind keine Dateianhänge sichtbar ]

    Entferne ich in /includes/modules/product_listing.php die Elseif-Anweisung
    Code: PHP  [Auswählen]
    elseif (isset($current_category_id) && $current_category_id > 0) {

    }
     

    zeigt sich die Testunterkategorie 8.1 so
    [ Für Gäste sind keine Dateianhänge sichtbar ]

    Legt man in die Testunterkategorie 8.1 ein deaktiviertes Produkt verhält sich der Shop genauso.

    Die Codesequenz macht aus meiner Sicht durchaus Sinn, ansonsten würde bei zeitweise ausverkauften Kategorien, obwohl im Menü angezeigt, der Hinweis „Kategorie wurde nicht gefunden“ erscheinen.

    Gruß Karl

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.988
    • Geschlecht:
    Hi Karl.

    Was ist eine "ausverkaufte Kategorie" ?
    Meinst du wenn
    Konfiguration => Lagerverwaltungs Optionen => "Bestellabschluß - Ausverkaufte Artikel deaktivieren"
    auf "Ja" steht, sodaß es durch die Einstellung zu leeren Kats kommen kann ?

    Leere Kats werden immer mit "Kategorie wurde nicht gefunden" angezeigt, auch wenn der besagte Code drin bleibt.
    Allerdings scheint es nur dann so zu sein, wenn es eine Unterkat ist, denn wenn ich die Unterkat deaktiviere wird die Oberkat trotzdem angezeigt, obwohl sie keine Artikel hat (Grund habe ich code-technisch jetzt nicht untersucht).

    Verhalten (in aktueller Shop-Version) :
    Ich habe eine Hauptkat ohne Artikel und eine Unterkat die Artikel hat.
    • Unterkat deaktiviert => Oberkat wird trotzdem angezeigt
    • Unterkat aktiviert  aber alle Artikel deaktiviert (also was du "ausverkaufte Kategorie" nennst) => Oberkat und Unterkat werden angezeigt, Klick auf Unterkat bringt jedoch "Kategorie wurde nicht gefunden".

    Ich halte dies für seltsames und für Kunden nicht durchschaubares Verhalten.

    Shop-Betreiber müssten mal genau darlegen wie sie sich da Verhalten genau wünschen.
    Sollen leere Kats angezeigt werden ?  Man sollte meinen Ja, wenn sie nur vorübergehend keine Artikel haben.
    Was aber soll der Kunde denken wenn er eine Leere Kat sieht ?
    Und ist das Anzeigen von "Kategorie wurde nicht gefunden" bei einer leeren Kat nicht vielleicht ein ungünstiger Weg ?

    Gruß,
    noRiddle

    karsta.de

    • Experte
    • Beiträge: 3.156
    Wenn eine Kategorie keine Artikel, aber Description oder Bilder hat, wird der Text Kategorie würde nicht gefunden nicht angezeigt, sondern die Kategorie mit ihren textlichen Inhalten.
    Manche Shopbetreiber machen so aus diesen Seiten "Contentseiten", um diese Seiten ins Kategorie-Menü einzubinden. Gleichzeitig kann man diese Seiten auch als Themenseiten verwenden.
    Ich würde diese Option nicht entfernen.

    BG Karsta
    Managed Server
    2 Antworten
    1961 Aufrufe
    17. November 2010, 17:23:30 von Boris
    3 Antworten
    3038 Aufrufe
    30. August 2011, 02:10:33 von Tomcraft