Magento: Миграция статических блоков и настроек конфигурации

Чтобы перенести все изменения во все среды, я использую сценарии обновления базы данных. Я использую их для создания разных экземпляров (клиент, налоговые настройки и т. д.), но обычно для переноса статических блоков и настроек конфигурации.

Для миграции статических блоков:

<?php
$block = Mage::getModel('cms/block');
$data = array(
   'title' => 'Block title',
   'identifier' => 'block_identifier',
   'content' => 'block content',
   'is_active' => 1,
   'stores' => array(0 => Mage_Core_Model_App::ADMIN_STORE_ID),
);

$block->addData($data);
$block->save();
?>

Для миграции настроек:

<?php
Mage::getModel('core/config')->saveConfig('design/theme/default', 'theme');
?>

Я знаю, что мы можем изменить настройки Magento через config.xml:

<default>
    <general>
        <store_information>
            <name>My Store</name>
        </store_information>
        <content_staging>
            <block_frontend_stub>home</block_frontend_stub>
        </content_staging>
    </general>
</default>

Но, насколько я понимаю, мы можем изменить настройки таким образом, только если пути : общее/информация_магазина/имя и
общие/content_staging/block_frontend_stub не существует в БД или их значения равны NULL, если значение не NULL, мы не можем изменить его через xml. Я протестировал его в своей локальной среде и думаю, что я прав, но не могу найти код в Magento, который отвечает за настройку конфигурации через xml. Я прав?

Не могли бы вы показать мне часть кода, которая за это отвечает? И каковы ваши лучшие методы миграции для Magento? Может я чего-то не знаю :)

5
задан Viacheslav Kondratiuk 2 July 2012 в 05:32
поделиться