Magento: Eigene Gestaltung und Seiten Layout per SQL Querry in Datenbank ändern – Custom Design and Page Layout SQL Update

Bei einem Magen Kunden Projekt hatten wir das große Problem, dass die Kategorien falsch eingestellt waren. Überall war händisch ein Custom Design gewählt worden und das Page Layout gesetzt. Es musste jedoch das Template geändert werden was zur Folge hätte alles händisch zu ändern…

Folgende Dinge auf keinen Fall ohne Backup durchführen!

Hier die SQL Querries für das Update der Kategorien welche unser Entwickler zusammengestellt hat. Update klappte damit super! Das selbe Prinzip geht auch für Produkte. So können in einem Rutsch alle Kategorien korrekt gesetzt werden. Das bedeutet, dass diese von den jeweiligen “Parent Kategorien” die Einstellungen ziehen und nicht je Kategorie eingestellt werden.

## Kategorie-Attribute aktualisieren
custom_apply_to_products -> 1 (Ja)
custom_use_parent_settings -> 1 (Ja)
custom_design -> null
page_layout -> null

# catalog_category entity_type_id ermitteln

select entity_type_id from eav_entity_type WHERE entity_type_code = ‘catalog_category’;

# attribute_id der gesuchten Kategorie-Attribute ermitteln

select attribute_id from eav_attribute WHERE entity_type_id = [entity_type_id ergebnis] AND attribute_code = ‘[gesuchter attribute_code]’;

Jeweils für attribute_code einsetzen:
– custom_apply_to_products
– custom_use_parent_settings
– custom_design
– page_layout

# Aktualisieren eines Attribut-Werts
Je nach Attribut-Typ die entsprechende Tabelle verwenden.
– catalog_category_entity_int (custom_apply_to_products, custom_use_parent_settings)
– catalog_category_entity_varchar (custom_design, page_layout)

Andere Attribute sind je nach Typ ggfs. auch in anderen catalog_category_entity_* Tabellen.

UPDATE catalog_category_entity_int SET value = 1 WHERE attribute_id = [ergebnis attribute_id];
UPDATE catalog_category_entity_varchar SET value = NULL WHERE attribute_id = [ergebnis attribute_id];

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.