Тестовый сайт
Я уже немного писал об этом в своей статье "Нужно ли давать разработчику FTP доступ к вашему OpenCart сайту?" но все равно многие делают эту ошибку.
Я своим клиентам в последнее время настоятельно рекомендую создать копию сайта для тестирования.
Копию можно разместить на поддомене, например dev.myshop.com или test.myshop.com или на любом другом.
Что там должно быть?
- Тот же движок, что и на рабочем сайте
- Все модули, установленные на рабочем сайте
- Та же тема
- Копия базы данных (не полная)
Что не нужно переносить?
- Информацию о заказах
- Информацию о клиентах
- Последние товары, цены статьи итд.
Зачем?
Это крайне важно, учитывая специфику opencart, потому что:
- В opencart нету нормальной системы расширений с зависимостями, когда если модуля что-то не устраивает, например версия другого модуля, то он просто не установится. Это есть в других движках, но этого нету в opencart.
- В opencart вообще нету системы удаления модуля. Если модуль установлен, то его файлы раскидываются по всем папкам движка и удалить его потом достаточно проблематично.
- В opencart нету нормальной системы изменения логики без изменения кода самого движка, есть vqmod (ocmod), который является причиной огромного к-ва конфликтов.
- В opencart низкий порог вхождения и очень много начинающих и низкоквалифицированных программистов, продающих свои модули. Эти модули не только могут не запуститься на вашем сайте но и принести вред сайту.
- Если такой не очень опытный разработчик получит полный доступ к сайту, то он может случайно что-то удалить или внести какие-то опасные для сайта изменения. Вместо этого вы предоставляете доступ для этого разработчика для копии сайта, где нет ни важных данных и не страшно если этот сайт и поломается.
Преимущества
Вы получите огромное количество преимуществ.
- Вы получите сайт, на котором перед установкой нового модуля или темы или какого-то скрипта можно все протестировать, отладить и только если вы на 100% уверены что все работает и нету никаких конфликтов, вы можете перенести этот код на рабочий сайт. Если же что-то пошло не так, то все изменения внесены в копию сайта и они никак не повлияют на рабочий сайт, вы можете или не спеша исправить конфликты или удалить новый код.
- Вы защищаете свой рабочий сайт от возможных вирусов
- Если вам нужно предоставить доступ к своему сайту разработчику какого-то дополнения для устранения конфликтов (а бывает это достаточно часто) то вам не нужно давать доступ к основному сайту, потому что:
- разработчик может получить доступ к вашим данным (заказах, покупателях итд.)
- разработчик может по неосторожности или неопытности поломать ваш сайт, удалив что-то нечаянно
- разработчик может загрузить на ваш сайт какой-то вирус или троян
-
Это общеизвестная практика и используемая многими (абсолютно всеми большими) магазинами, когда все новое тестируется на тестовом сайте и только после этого переносится на рабочий сайт.
Поэтому в реалиях OpenCart это просто "must have" практически для любого серьезного магазина.