Hallo zusammen, bis vor einige Wochen/Monate bzw. MasterUpdates wurde die MySQL-Tabelle 'categories_index' beim Anlegen eines neuen Artikels regelmäßig vom Shopsystem "gepflegt" bzw. ein neuer Satz insertet. Siehe den 1. Screenhot. Die Tabelle MySQL-Tabelle 'categories_index' enthielt in der Spalte '(Link nur für registrierte Nutzer sichtbar.)' die numerische Zuordnung in welcher Ober- bzw. Unterkategorie sich ein Artikel befand. SELECT * FROM categories_index ORDER BY `products_id` ASC Ergebnis meines Shops für ältere Artikel: SELECT * FROM categories_index ORDER BY `products_id` DESC Ergebnis meines Shops für NEUE Artikel: Frage: Da ich die Tabelle MySQL-Tabelle 'categories_index' bzw. den Inhalt Spalte '(Link nur für registrierte Nutzer sichtbar.)' dringend für eine weitergehende Auswertung/Verwertung benötige, ist meine Frage, wie AKTUELL vom Shopsystem nun die Zuordnung von Artikeln in deren jeweilige Ober- und Unterkategorie abgespeichert wird? Konkret: in welcher Tabelle MySQL-Tabelle bzw. welchen Spalten erfolgt NUN aktuell die Zuordnung von Artikeln in deren jeweilige Ober- und Unterkategorie?
Ich kanns dir zwar nicht direkt sagen aber da Gambio die DB aufräumen möchte wäre es gut für anbinudngen auf die API umzustellen und sich die Daten darüber zu holen. Sonst passiert sowas sicher immer wieder mal.
Die Tabelle ist der Cache für Kategoriezuordnungen, der lässt sich auch über die Toolbox neu aufbauen. Der eigentliche Ort der Informationen ist aber die products to categories Tabelle. Wie kommen deine Artikel in den Shop?
Du meinst die "Toolbox mit dem Schraubenschlüssel-Icon im Adminbereich"? Habe da gerade mal reingeschaut...über welchen Untermenü-Punkt dort kann ich da die Tabelle MySQL-Tabelle 'categories_index' neu aufbauen? Die Tabelle 'products_to_categories' habe ich auch schon gesehen, diese enthält aber NUR die UNTERSTE Kategorie, in der sich ein Artikel befindet... Siehe den Screenshot: D.h. die Tabelle 'products_to_categories' enthält NICHT den GESAMTEN (Ober-/Unter-)Kategoriepfad, wie die Tabelle 'categories_index'. Und ich benötige den GESAMTEN (Ober-/Unter-)Kategoriepfad. Siehe die Tabelle 'categories_index' mit dem GESAMTEN (Ober-/Unter-)Kategoriepfad: P.S: Meine neuen Artikel kommen ich den Shop indem ich einen bestehenden Artikel zunächst im Shop kopiere und dann hinterher per EXCEL anpasse/korrigiere...
Das ist der Artikel / Kategoriezuordnungscache. Das ist richtig. Den Rest des Pfades holt man sich per categories Tabelle. Man schaut für die Kategorie welche deren Oberkategorie ist. Das macht man so oft, bis die Oberkategorie 0 ist, dann ist man im Toplevel. Sich da nur auf einen Cache zu verlassen ist dennoch nicht goldig. Ein Cache ist nie die absolute Wahrheit. Urks, CSV Imports also...
Ja, danke für die infos! Dank der Info(s) habe ich jetzt verstanden, dass die MySQL-Tabelle 'categories_index' NICHT BEIM (manuellen) Kopieren/Anlegen von Artikeln vom ShopSystem "mitgeschrieben"/insertet wird...(wie ich bisher annahm)... ....sondern vom ShopSystem (automatisch) beim LÖSCHEN des Caches (über die Toolbox im Admin-Bereich) immer (wieder) neu/aktuell erstellt wird... So ist nun - nach einer AKTUELLEN Löschung des Caches - auch für die ganzen aktuellen Artikel der GESAMTE (Ober-/Unter-)Kategoriepfad in der Tabelle 'categories_index' vorhanden...! Siehe: Sehr schön! "Diese (kleine) Lösung" reicht mir für meine Auswertungen/Verarbeitungen.... Nochmals vielen Dank!
Ich nehme mal an im Backend über Toolbox -> Cache -> Cache für Artikel- und Kategoriezuordnungen neu erzeugen
Habe ich mehrfach ausprobiert! Nicht hat sich geändert. Die categories_index ist bei mir 30mb groß. Da sind tausende Einträge zu Artikel drin die gar nicht mehr als Artikel angelegt sind. Was bedeutet überhaupt -0-?
-0- dürfte die TOP Kategorie sein. Aber wenn Einträge zu nicht mehr existenten Artikeln drin sind, dürfte irgendwas anderes im Argen liegen. Hast Du auch mal ALLE caches gelöscht, von unten nach oben?
@barbara Gute Frage! Ich habe den Shop seit 1 Jahr und war damit noch nie Online. Nur damit beschäftigt alles Einzurichten und Bugs von Gambio zu umschiffen! Da hab ich vieles ausprobiert und auch vieles wieder gelöscht. Wie oder wann die Datensätze dann über geblieben sind kann ich nicht sagen. Hab aber nur Funktionen genutzt die man im Shop anklicken kann also kein manuelles löschen in der DB! Hab es nur bemerkt da ich jetzt so langsam an einen Start des Shop komme, falls nicht wieder ein Bug mir das Leben schwer macht. Der Shop ist zwar Style technisch nicht der Renner aber mir kommt es auf die Funktionen an die ich noch eingebaut habe und die kleine Änderungen die ich noch so gemacht habe. Shop Kenner werden diese sehen der normale Shop Besucher nicht. @markus_wick Cache von unten nach oben geklickt, keine Änderung! Macht das überhaupt einen Unterschied von oben nach unten oder umgekehrt? Habe jetzt alle die nicht mehr mit einem Artikel verknüpft waren gelöscht! Jetzt ist nur noch die Frage offen: Was bedeutet die -0- Also "TOP" kann es nicht sein da bei Deaktivierung beim Artikel die -0- stehen bleibt und eine Kategorie 0 gibt es nicht! Ist wichtig für mich da ich per Datenbank Daten ändern möchte und da nichts falsch machen will.
Ich kann da auch nur raten, aber ich würde sagen in der Hierarchie ist -0- die oberste Position. Ein Artikel der KEINER Kategorie zugeordnet ist dürfte immer noch -0- haben. Ich würde an Deiner Stelle mal eine Artikel aus allen Kategorien rausnehmen, cache wieder leeren und dann nachsehen was sich in der Tabelle geändert hat. ABER: Bedenke auch was Wilken oben geschrieben hat: Die MySQL-Tabelle 'categories_index' ist der Artikel / Kategoriezuordnungscache! Heisst: Darin etwas zu ändern ist NICHT zielführend! Da dieser beim Cache leeren (und dass passiert immer wieder mal das man das tut/muss) neu aufgebaut wird, wären Deine Änderungen ja weg. Auch zum Auswerten würde ich die eigentlich dafür zuständigen Tabellen nehmen, also die products_to_categories um zu sehen welcher Kategorie ein Artikel zugeordnet ist und dann in der categories Tabelle nachsehen (Ebene für Ebene hoch bis zur obersten) wie die Kategorien wiederrum in einander verschachtelt sind.
Bin jetzt aber mit MySQL nicht ganz so bewandert... Hast Du die Möglichkeit manche Dinge auch über die REST_API zu machen? Irgendwie haben wir jetzt das Thema von Fabian gekapert, sorry.... Hab mal aus Interesse nachgesehen. Ich habe einen Artikel mit der productID 3, ein Bauteil für ein MacBook A1342 von 2010, passt auch zum Modell von 2009. In der product_to_categories steht also zwei Mal die productID 3, einmal der Kategorie 48 und einmal der 49 zugeordnet (A1342 von 2019 und 2010). Parent ID ist jeweils die 10 (MacBook A1342). Parent der 10 ist die 2 (MacBook) Parent der 2 ist die 0. Daraus ergibt sich: Die productID 3 ist "kind" der Kategorie 48 und 49, diese sind "kind" der Kat 10, diese "kind" der 2 und diese schliesslich "kind" der 0. Ergibt (und steht so im index) -0--2--10--48--49-
Ja, das macht einen Unterschied. Angenommen Du installierst ein Modul und löscht von oben nach unten, dann wird erst die Seite neu erstellt, dann das Modul und am Ende der Test. Damit ist weder das Modul noch der Text auf den Seiten. Man sollte deshalb immer von unten nach oben löschen, damit die Seite zum Schluss neu aufgebaut wird. Ea gibt allerdings auch Modul-Installations-Anleitungen, wo eine genaue Reihenfolge vorgegeben wird.