29
Как я обновлял magento с версии 1.4.1.1 до 1.6.0
Magento, Программирование
Метки (теги) : magento обновление
Дело было так.
Нужно было заказчику обновить его магазин на magento с версии 1.4.1.1 до версии 1.6.0 , но вся загвоздка была в том, что этот магазин до нас уже пытались обновить, и на версии 1.5.1 скорее всего произошла какая-то ошибка и дальше дело не пошло. Магазин работал частично, причем дампа свежего не было.
Что тут скажешь
Первым делом я попытался обычным способом через magento connect и таки обновил до 1.4.2 , но ошибки не ушли. Скорее всего от недообновленной версии 1.5 остались файлы которые выдавали ошибки то там то здесь.
Например:
Fatal error: Class \’Mage_GiftMessage_Block_Adminhtml_Product_Helper_Form_Config\’ not found in
или
Fatal error: Class ‘Mage_Adminhtml_Block_Catalog_Product_Helper_Form_Config’ not found in
Дальше я продолжил попытку обновления до версии 1.6 с помощью все того же magento connect но меня ожидали следующие ошибки
CONNECT ERROR: Package 'Mage_All_Latest' is invalid '.\pkginfo\Mage_All_Latest.txt' already exists Package 'Interface_Adminhtml_Default' is invalid './app/design\adminhtml\default\default\layout\admin.xml' already exists Package 'Interface_Frontend_Default' is invalid './app/design\frontend\default\default\etc\widget.xml' already exists Package 'Interface_Install_Default' is invalid './app/design\install\default\default\layout\main.xml' already exists Package 'Mage_Centinel' is invalid './app/code/core\Mage\Centinel\Block\Adminhtml\Validation\Form.php' already exists Package 'Interface_Frontend_Base_Default' is invalid './app/design\frontend\base\default\etc\widget.xml' already exists Package 'Phoenix_Moneybookers' is invalid './app/code/community\Phoenix\Moneybookers\Block\Form.php' already exists Package 'Mage_Compiler' is invalid './app/code/core\Mage\Compiler\Block\Process.php' already exists Package 'Mage_Core_Adminhtml' is invalid './app/code/core\Mage\Adminhtml\Block\Abstract.php' already exists Package 'Mage_Core_Modules' is invalid './app/code/core\Mage\Admin\Model\Acl\Assert\Ip.php' already exists Package 'Lib_Js_Ext' is invalid '.\js\extjs\css\README.txt' already exists Package 'Lib_Js_TinyMCE' is invalid '.\js\tiny_mce\classes\AddOnManager.js' already exists Package 'Lib_Varien' is invalid './lib\Varien\Autoload.php' already exists Package 'Lib_Google_Checkout' is invalid './lib\googlecheckout\googlecart.php' already exists Package 'Lib_Js_Calendar' is invalid '.\js\calendar\calendar-blue.css' already exists Package 'Lib_Js_Mage' is invalid '.\js\lib\FABridge.js' already exists Package 'Lib_ZF' is invalid './lib\Zend\Acl\Assert\Interface.php' already exists Package 'Lib_Js_Prototype' is invalid '.\js\prototype\debug.js' already exists Package 'Lib_ZF_Locale' is invalid './lib\Zend\Locale\Data\Translation.php' already exists
Но не беда, нужно просто скачать вот этот файл magento-1.5.0.1-package-files, но только если у вас была неудача при обновлении на 1.5, закинуть файлы в корень сайта, при этом обновиться папка var/package. И начать обновление на 1.6 введя эту строку
http://connect20.magentocommerce.com/community/Mage_All_Latest
в поле Paste extension key to install.
Само решение я нашел на забугорном сайте
Связаны ошибки с тем, что не было зарегистрировано обновление версии 1.5, заливка пакета представленного выше решает эту проблему.
Далее меня ожидал следующий сюрприз.
При попытке создать нового пользователя через frontend или backend выдавалась ошибка Cannot save the customer.
Также при попытке сохранить конфигурацию для пользователей выдало ошибку Maximum length of attribute code must be less then 30 symbols
В логи записывалась вот такая ошибка No message template exists for key ‘hostnameIpAddressNotAllowed’
Чтобы устранить эти ошибки нужно из чистого пакета magento 1.6 скопировать папку lib/Zend и заменить ей соответствующую папку в своем проекте. У меня после этого пользователя уже можно было зарегистрировать.
Надеюсь у вас все получится…
Здравствуйте, спасибо за Ваш материал, очень интересно и полезно. Не то что доблестные разработчики Magento(Русская сборка) – дай 200$ и мы обновим, дай 400, дай-дай-дай. Подсказки малоинформативны. У меня вопрос – стоит версия 1.4.2.0, не знаю обновлялась ли система до 1.5, но при попытке обновления выдаёт те же ошибки что у Вас при обновлении до 1.6. Так вот, подскажите пожалуйста, где можно взять специальные пакеты обновления? Есть ли такое? например как пакеты обновления той же Joomla или Opencart? И как узнать, проводилось ли обновление до 1.5.1(если в версии пишется 1.4.2.0)?
Здравствуйте Владимир. Пакетов обновления для 1.5.1 не встречал. Обновления мажорных версий почти всегда с сюрпризами. Чтобы проверить была ли попытка обновления до версии 1.5.1 можно посмотреть в папке var/package файлы с версией 1.5 в названии, если есть такие, то значит была попытка обновления.
Здравствуйте
Вопрос Magento 1.5.0.1 уже не актуальна – по теме взлома сайта ?
Лучше устанавливать magento-1.7.0.2- ?
Сильные ли у них различия по настройкам???
Если ставите с нуля, то ставьте лучше последнюю версию magento на момент установки. Сейчас это 1.7.0.2. Разница в них есть, в новой и баги многие исправлены и дыры прикрыты да и возможностей прибавилось. Про какие различия в настройках вы спрашиваете ???
Здравствуйте, а за обновление с версии 1.4.2.0 до 1.7.0.2 Вы сколько возьмёте?
Владимир, ответил вам на e-mail