Question

Je travaille sur une extension en ce moment qui a besoin d'avoir une configuration de réécriture d'URL lorsqu'il est installé. Le meilleur endroit pour le faire dans un script d'installation des données? Dans le cas contraire, où devrait-il être fait?

Était-ce utile?

La solution

Ce n'est pas une grande différence.
D'après ce que j'ai vu, comment ne Magento, si vous prévoyez d'utiliser des insertions directes, placez votre script dans le sql script d'installation.
Si vous prévoyez d'utiliser des modèles et l'API modèle interne, vous devriez le mettre dans le dossier data.
Voici quelques exemples. Dans le module client dans sql/.../install-1.6.0.0.php il y a ceci:

$installer->getConnection()->insertForce($installer->getTable('customer/customer_group'), array(
    'customer_group_id'     => 0,
    'customer_group_code'   => 'NOT LOGGED IN',
    'tax_class_id'          => 3
)); 

Dans le modèle de catalogue il y a ceci dans 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(); 

[EDIT] J'ai oublié une chose. Les scripts de mise à niveau sont exécutés lorsque les modules sont initialisés et les mises à jour de données sont exécutées un peu plus tard après que le magasin actuel est initialisé, après la configuration complète est chargée, les translatés sont déjà chargés et d'autres.
Sur la base de cela, vous pouvez voir ce qui fonctionne pour vous mieux.

Licencié sous: CC-BY-SA avec attribution
Non affilié à magento.stackexchange
scroll top