В даній статті ми розглянемо основні моменти, на які слід звернути свою увагу при оновленні двигуна Мадженто з однієї версії на іншу (в межах версій 1.4 – 1.9.x).
Мета цієї статті полягає в тому, щоб показати ручний спосіб оновлення, а також звернути увагу на деякі проблеми, які можуть статися при спробі оновлення.
Перед оновленням інтернет-магазину на Magento вам необхідно перевірити кастомні модулі, а також якість коду. Від цього залежить не тільки час виконання оновлення, а й взагалі сама можливість такої процедури. Якщо, наприклад, у вас багато користувацьких модулів, велика ймовірність того, що при оновленні з більш старої версії на новішу, виникнуть конфлікти в коді. А це може унеможливити саму процедуру оновлення платформи.
Найперше, що потрібно перевірити, — чи використовувалося при розробці магазина редагування файлів ядра. Хоча так і не потрібно робити, цілком ймовірно, що файли ядра змінювалися програмістом. Найоптимальнішим засобом для виконання цієї процедури є порівняння коду, щоб виявити наявність/відсутність відмінностей в коді файлів ядра. Перевіряти треба одну і ту ж версію двигуна (використовувану магазином, і з репозиторію).
Якщо змін немає, тоді подивіться в локальних модулях, чи не було там перевизначень функцій ядра.
Ніколи не намагайтеся робити оновлення на сайті, який розміщений на хостингу і доступний он-лайн. Для цієї мети у вас повинен бути або тестовий піддомен, або локальний веб-сервер. Щоб убезпечити себе і прикрити тил, перед процесом оновлення робіть повний бекап діючого магазину (і бази даних, і всіх файлів двигуна). Використання локального сервера дозволить вам приділити достатньо часу тестуванню нової версії після успішного оновлення.
Після цього завантажте нову версію платформи і розмістіть всі її файли на тестовому сервері.
Після розміщення файлів нової версії двигуна Мадженто на локальному веб-сервері, вам потрібно буде перенести (скопіювати) всі файли шаблону, модулів і макетів зі старої версії. Зазвичай до цих файлів відносяться:
app/etc/modules
(всі модулі середовища community і local)app/code/community
(всі файли і папки модулів сторонніх розробників)app/code/local
(всі файли і папки локальних модулів)app/design/adminhtml
(будь-які користувацькі шаблони для Панелі адміністрування)app/design/frontend
(всі файли користувацьких тем)skin/adminhtml
(всі файли користувацького дизайну для Панелі адміністрування)skin/frontend
(всі файли користувацького дизайну)media
(практично всі файли з цієї папки потрібно переносити; в основному тут містяться картинки товарів)robots.txt
, sitemap.xml
та подібні)
Врахуйте, що цей перелік може бути не повним, тому звертайте увагу на особливості вашого власного магазину.
Після перенесення всіх файлів на локальний сервер, вам потрібно створити нову базу даних на тестовому сервері та імпортувати дамп (бекап) бази даних, який ви зберегли з вашого старого інтернет-магазину.
Отже, тепер у вас повинна бути нова версія Magento, яка використовує стару тему. На цьому етапі складно провести комплексне тестування платформи, оскільки все ще використовується база даних зі старої версії, але можна виявити найтиповіші помилки сумісності.
local.xml
в папці app/etc
На цьому етапі видаліть файл local.xml
. Мета цього полягає в тому, щоб система думала, що ми намагаємося запустити нову інсталяцію. На тестовому сервері видаліть, або ж просто перейменуйте файл app/etc/local.xml
.
Також ви можете не видаляти цей файл, а оновити в ньому дані підключення до бази даних. Це також повинно запустити процес оновлення без необхідності проходити заново процес встановлення.
Тут відбувається основне диво. Нові файли ядра містять всі MySQL сценарії, які дозволять запустити процес оновлення для всіх core функцій Magento. Все, що потрібно зробити, щоб розпочати оновлення, — це оновити головну сторінку магазину на локальному сервері.
Процес оновлення платформи на цьому етапі залежить від величини відмінностей між старою і новою версіями. Якщо ви оновлюєтеся з версії, наприклад, 1.7 на версію 1.9, тоді цей процес може тривати і годину.
Якщо під час процедури оновлення виникають помилки, ви можете або спробувати знову з новою (чистою) базою даних, або оновити інсталяцію – вона повинна продовжитися з того місця, де була зупинена.
Після успішного завершення процесу оновлення потрібно буде виконати пошук і усунення несправностей. Для початку очистіть кеш. Якщо ви не можете увійти до Панелі адміністрування, перейменуйте папку /var/cache
і тоді система Magento сама створить цю папку та повністю очистить власний кеш.
Після цього виконайте реіндекс всіх даних, оскільки під час оновлення записи в базі даних могли бути зіпсовані.
Тепер потрібно ретельно протестувати сайт і перевірити ще раз правильність роботи всіх типів сторінок в магазині. Тут проблеми можуть виникати, наприклад, через зміну інструкцій у файлах макета в core шаблоні.
Нарешті, коли ви будете повністю задоволені роботою нової версії двигуна, замініть всі файли на діючому сайті, файлами з новою версією із локального веб-сервера. Також не забудьте замінити і базу даних.
Чиста питна вода – це запорука здоров’я і гарного самопочуття. Водопровідна вода, навіть після централізованої…
Освіта вже давно перестала бути лише про лекції в аудиторіях і товсті конспекти. Зараз освітня…
У сучасному цифровому світі афілейт маркетинг став одним із найбільш популярних способів монетизації трафіку та…
Замість того, щоб стирати сльози з обличчя, стирайте з життя людей, які змусили вас плакати…
До основних переваг двигуна WordPress можна віднести величезну кількість безкоштовних і преміальних тем (шаблонів) та…