Il peut être utile de stocker certaines informations comme la date de dernière exécution d’un script ou l’id de la dernière commande exportée. Pour que cela soit utilisable facilement de façon dynamique, l’idéal est de faire une sauvegarde en base de données. Mais déclarer une table, et créer les modèles Magento et le script de génération de la table pour un simple « flag » n’est pas une solution optimale.
Magento nous offre un moyen simple de nous épargner ce travail grâce à la table « core_config_data » et à certaines méthodes pour y accéder.
Pour stocker une information :
Mage::getModel('core/config')->saveConfig($path, $value);
Pour la récupérer :
Mage::getStoreConfig($path);
$path correspond à la clé que vous voulez utiliser pour stocker votre information. Il faut veiller à la choisir judicieusement, par exemple en reprenant le nom du module sous la forme « catalog/export/lastid ».
Cette table servant à stocker la configuration de Magento, il faut être prudent lorsque vous écrivez dedans.
Notez également qu’elle n’est pas prévue pour du stockage de données, il s’agit d’éléments de configuration courts ou de « flags ». Si vous souhaitez sauvegarder davantage de données, ajoutez une table à votre module.
Note : Selon votre configuration de cache dans Magento, la récupération des données stockées renverra des informations dépassées, soyez donc prudents ou ne stockez que des paramètres « statiques ».