Bester Ort, um URL -Umschreiben während der Erweiterungsinstallation hinzuzufügen
Frage
Ich arbeite gerade an einer Erweiterung, bei der ein URL -Umschreiben bei der Installation erforderlich ist. Ist der beste Ort, um dies in einem Daten -Installations -Skript zu tun? Wenn nicht, wo soll das getan werden?
Lösung
Es ist kein großer Unterschied.
Nach dem, was ich gesehen habe, wie Magento, wenn Sie vorhaben, direkte Einsätze zu verwenden, Ihr Skript in die sql
Skript installieren.
Wenn Sie vorhaben, Modelle und die interne Modell -API zu verwenden, sollten Sie sie in die data
Mappe.
Hier sind einige Beispiele. Im Kundenmodul in sql/.../install-1.6.0.0.php
da ist das:
$installer->getConnection()->insertForce($installer->getTable('customer/customer_group'), array(
'customer_group_id' => 0,
'customer_group_code' => 'NOT LOGGED IN',
'tax_class_id' => 3
));
Im Katalogmodell ist das in data/.../install-1.6.0.0.php
:
Mage::getModel('catalog/category')
->load(1)
->setId(1)
->setStoreId(0)
->setPath(1)
->setLevel(0)
->setPosition(0)
->setChildrenCount(0)
->setName('Root Catalog')
->setInitialSetupFlag(true)
->save();
BEARBEITEN
Ich habe eines vergessen. Die Upgrade -Skripte werden ausgeführt, wenn die Module initialisiert werden und die Daten -Upgrades etwas später ausgeführt werden, nachdem der aktuelle Speicher initialisiert wurde, nachdem die vollständige Konfiguration geladen wurde, die Übersetzungen bereits geladen und andere.
Basierend darauf können Sie sehen, was für Sie am besten funktioniert.