Caching fehlerhaft wenn sidebox_categories_full_category_tree !== Y

martinwolf

Offizieller Servicepartner
SPBanner
6. September 2012
3.627
325
Zu Tinyzeiten gab es noch die Template Einstellung "Alle Kategorein aufklappen". Im Shop und im Template wurde das dann über "sidebox_categories_full_category_tree" verarbeitet. Jetzt im EVO gibt es diese Einstellung nicht mehr, folglich wird nun im Standard immer der gesamte Kategoriebaum erzeugt und als Aufklappliste dargestellt. Jetzt aber gibt es das Problem, dass lediglich der gesamte Kategoriebaum gecached wird:

tools.Global.php
Code:
        if ((!isset($conf['template']['categories']['sidebox_categories_full_category_tree']) || $conf['template']['categories']['sidebox_categories_full_category_tree'] !== 'Y') &&
            ($cKategorielistenHTML_arr = Shop::Cache()->get($cacheID)) === false ||
            !isset($cKategorielistenHTML_arr[0])
        ) {
            $cKategorielistenHTML_arr = array();
            //globale Liste
            $cKategorielistenHTML_arr[0] = (function_exists('gibKategorienHTML')) ? gibKategorienHTML(
                $startKat,
                (isset($AufgeklappteKategorien->elemente)) ? $AufgeklappteKategorien->elemente : null,
                0,
                (isset($AktuelleKategorie->kKategorie) ? $AktuelleKategorie->kKategorie : 0)
            ) : '';

            $dist_kategorieboxen = Shop::DB()->query("SELECT DISTINCT(cWert) FROM tkategorieattribut WHERE cName = '" . KAT_ATTRIBUT_KATEGORIEBOX . "'", 2);
            foreach ($dist_kategorieboxen as $katboxNr) {
                $nr = intval($katboxNr->cWert);
                if ($nr > 0) {
                    $cKategorielistenHTML_arr[$nr] = (function_exists('gibKategorienHTML')) ?
                        gibKategorienHTML($startKat, $AufgeklappteKategorien->elemente, 0,
                            $AktuelleKategorie->kKategorie, $nr) :
                        '';
                }
            }
            Shop::Cache()->set($cacheID, $cKategorielistenHTML_arr, array(CACHING_GROUP_CATEGORY));
        }

Ein anderer Fall tritt im EVO garnicht mehr ein. Templates die aber diese Einstellung noch anbieten und berücksichtigen haben nun das Problem, dass der Kategoriebaum eben NICHT korrekt gecacht wird. Folglich bleibt die Sprache der Kategorieboxen beim Wechsel auf eine andere Sprache einfach stehen.

PS: Der Titel müsste lauten Caching fehlerhaft wenn sidebox_categories_full_category_tree !== Y
 
Zuletzt von einem Moderator bearbeitet:

martinwolf

Offizieller Servicepartner
SPBanner
6. September 2012
3.627
325
AW: Caching fehlerhaft wenn sidebox_categories_full_category_tree == Y

Nachtrag: Das Caching funktioniert dann nicht wenn besagte Einstellunge "Alle Kategorien aufklappen" auf Nein steht.
 

hula1499

Sehr aktives Mitglied
22. Juni 2011
5.355
1.293
AW: Caching fehlerhaft wenn sidebox_categories_full_category_tree == Y

Oja, leider richtig.
Sorry für die ständigen Sprach-Umstände die du mit uns hast ;)
 

ag-websolutions.de

Sehr aktives Mitglied
29. Dezember 2009
14.548
233
AW: Caching fehlerhaft wenn sidebox_categories_full_category_tree !== Y

Na ja, das EVO braucht das halt nicht mehr, wie du ja selber schreibst.
Kannst du nicht das Caching selber schreiben, wenn dein Template das noch braucht?
 

martinwolf

Offizieller Servicepartner
SPBanner
6. September 2012
3.627
325
AW: Caching fehlerhaft wenn sidebox_categories_full_category_tree !== Y

Na ja, das EVO braucht das halt nicht mehr, wie du ja selber schreibst.
Kannst du nicht das Caching selber schreiben, wenn dein Template das noch braucht?

Ich werde es jetzt anders lösen um das zu umgehen. Mit Caching kenne ich mich nicht aus als dass ich das auf Template Ebene für diesen Bereich ergänzen könnte.

Aber ist das zielführend diese Denkweise, alles neu machen zu müssen weil die Plattform an manchen Stellen nur halb durchdacht ist? Die Grundfunktion wird ja auch weiterhin unterstützt vom Shop, nur ist hier ein Fehler vorhanden wenn das Caching aktiv ist. Ohne Caching läuft ja alles problemlos. Ist EVO jetzt der Nabel der Welt wenn es um Shop 4 geht? Wenn ja fände ich das schade und spiegelt eine eingeschränkte Sicht wieder. Ich als Entwickler versuche stets alle möglichen Szenarien zu berücksichtigen, klappt auch nicht immer, aber man kann ja nachbessern. Wenn es technische Einschränkungen gibt die das nicht erlauben okay, ist dann so und man muss Abstriche machen und eine Alternative anbieten. Aber immer nur bis zum Tellerrand schauen und nicht weiter halte ich für den falschen Weg.

Deswegen hab ich das Thema aufgemacht, damit das Problem auf dem Schirm ist und vielleicht auch behoben wird. Ich weiß dass Southbridge in seinen Templates diese Option ebenfalls verwendet oder verwendet hat. Daher würde ich mal behaupten, hier besteht das selbe Problem.
 

Ähnliche Themen