Ответы на самые частые проблемы
При установке модулей или модификаторов, можно столкнуться с ошибками. Мы собрали в данном разделе ответы на часто задаваемые вопросы, решение наиболее общих и часто встречающихся проблем.
- Скачайте и установите дополнение Localcopy OCMOD;
- После установки этого дополнения нужно перейти в раздел Меню -> Расширения -> Модификаторы и нажать кнопку Обновить модификаторы;
- Теперь можно устанавливать другие модули.
Возможно несколько проблем и вариантов их решения:
- Не сброшен кэш шаблона - нужно обновить кэш;
- Вы раньше редактировали файлы шаблона через админку в разделе Меню -> Дизайн -> Редактор шаблона, тогда этот файл сохранился в базе данных и на него уже не влияют ocmod-модификаторы, это проблема Opencart 3. Вам нужно установить фикс и обновить модификации в админке;
- Ваш шаблон устроен на TPL-файлах (*.tpl), в то время, когда в Opencart 3 шаблоны должны быть в формате TWIG (*.twig). Проблема в том, что ocmod-модификаторы не влияют на TPL-файлы - все изменения нужно вносить в эти файлы вручную.
В официальных сборках Opencart 3.0.3.5 - 3.0.3.6 есть баг - там модификаторы не работают с twig-файлами из-за ошибки в стандартном модификаторе /system/modification.xml - вторая операция из этого модификатора не срабатывает.
Проблема есть на оф. гитхабе и предложено решение: GitHub
Фикс-модификатор по этим рекомендациям, он заменит файл /system/modification.xml на правильный.
Решение проблемы:
- Сделайте резервную копию вашего файла /system/modification.xml;
- Скачайте фикс-модификатор и установите его у себя в админке;
- Обновите кэш модификаторов;
- Обновите кэш twig-шаблонов.
Если модуль не реагирует на ваши действия, будь-то нажатие на кнопку или загрузка карты или выбор даты или на любое другое действие которое есть в функционале модуля - скорее всего произошел конфликт в JS-скриптах.
Нажмите F12 на проблемной странице в браузере - откроется панель вебмастера, где на вкладке Console можно увидеть конфликты в скриптах, если они есть. Данное действие доступно в браузерах Chrome, Opera, Firefox.
- Скачайте и установите дополнение Localcopy OCMOD;
- После установки этого дополнения нужно перейти в раздел Меню -> Расширения -> Модификаторы и нажать кнопку Обновить модификаторы;
- Теперь можно устанавливать другие модули.
Ошибка 500 после установки модуля означает, что случилась какая-то критическая ошибка в php.
Для определение проблемы можно:
- Открыть файл logs/error.log на вашем сервере. В конце этого файла будут все последние критические ошибки;
- Открыть в админке Меню -> Инструменты -> Логи ошибок - в этом месте отображаются ошибки, но не всегда;
Включить вывод ошибок php на экран - добавить следующий код в конец файла .htaccess:
php_value display_errors 1 php_value display_startup_errors 1 php_value error_reporting E_ALL
Теперь вместо ошибки 500 должен отображаться код ошибки, который укажет на проблему.
Возможные причины:
- Если вы ранее не загружали модули через архив в административной панели, вам необходимо установить бесплатную модификацию Localcopy OCMOD в соответствии с инструкцией, а затем переустановить модуль;
- Возможно, в устанавливаемом модуле нет собственной страницы настроек, и соответственно его не будет в списке модулей.
Существуют два способа решения этой проблемы:
1. Если при установке модуля из админки вылетает эта ошибка – вам нужно установить Localcopy OCMOD:
Она установиться без проблем через тот же установщик дополнений, только после установки не забудьте обновить модификации и затем можете приступать к установке любых модулей на Opencart 2.
2. Также решить эту ошибку можно по-другому: прописать доступы к FTP в админке Меню -> Система -> Настройки -> Магазин -> вкладка FTP.
Если вы видите сообщение «Доступ запрещен! У Вас нет прав для доступа к этой странице. Если она Вам нужна, обратитесь к администратору» - нужно дать права администраторам на управление модулем или страницей.
Решение: в админке Opencart 2 переходим в Меню -> Система -> Пользователи -> Группы пользователей, выбираем группы пользователей, которые должны иметь доступ к этому модулю, затем нажимаем «Выделить все» ниже обоих блоков, после чего кликаем «Сохранить».
Еще одной причиной появления этой ошибки может быть не правильная установка модуля - файлы не загрузились на свои места. Загрузите файлы модуля вручную на сервер или установите фикс Localcopy OCMOD и переустановите модуль.
В админке Opencart 2 переходим в Меню -> Система -> Пользователи -> Группы пользователей и здесь нажимаем «Выделить все» ниже обоих блоков, затем «Сохранить»
Если модуль - это один XML файл, то его расширение должно быть .ocmod.xml
Если модуль - это ocmod.zip архив, то его не нужно распаковывать, а устанавливать как есть. В таком архиве обязательно должна быть папка upload (может быть пустой), а также могут быть файлы модификаций: install.xml, install.php, install.sql. Никаких других файлов в корне архива быть не должно.
Эта ошибка означает, что в загружаемом архиве отсутствует папка upload. Даже если у модуля нет файлов, кроме модификаций - эта папка должна присутствовать в архиве модуля .ocmod.zip, тогда она должна оставаться пустой.
Эта ошибка означает, что вы пытаетесь установить модификатор, который уже установлен или, возможно, у какого-то вашего модуля такой же ID.
Для решения этой ошибки вам нужно перед установкой удалить старую версию модификации в разделе Меню -> Расширения -> Модификаторы.
Если такого модуля у вас нет, но совпадает ID, тогда нужно поменять значение параметра <code> в устанавливаемом модификаторе XML, сделать этот параметр уникальным дописав несколько символов.
Эта ошибка означает, что вы пытаетесь установить слишком объемный xml-модификатор.
Количество символов в ocmod.xml файле не должно превышать 65535.
Для решения ошибки нужно разбить xml-файл модификации на несколько частей, главное - не забыть задавать каждой уникальное значение в <code>, можно добавлять к текущему значению цифры 1,2,3... как идентификаторы части.
Еще одним способом решения есть изменения типа в поля, где храняться модификации, в таблице oc_modification базы данных.
Нужно выполнить следующий SQL-запрос:
ALTER TABLE oc_modification CHANGE xml MEDIUMTEXT CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;
- Похоже, вы установили на Opencart 2.3.x.x модуль для более старых версий этой системы, то есть не совместимый модуль. Нужно удалить все файлы этого модуля, иначе ошибка не исчезнет;
- Также данная ошибка может возникать, если скрипт обращается к несуществующей таблице в базе данных. То есть, таблица модуля не создалась при установке. Читайте инструкцию по установке и переустановите модуль.
Есть несколько причин почему не меняется что то на сайте. В основном это происходит в OpenCart 3-й версии, но может и во 2-й тоже.
- Вы не обновили кеш модификатора. Его нужно обновлять после редактирования файла, если он проходит через модификатор. О модификаторах читайте в документации и на форуме.
- Не обновлен или не выключен кеш TWIG. Да, по умолчанию он включен, но при внесении изменений он мешает. Его нужно или обновлять или отключать.
- Были изменения через Редактор шаблона. Вот одни редактируют через админку, а другие через FTP. Везде написано, что лучше редактировать только через FTP, но некоторым все же удается все сломать. Поэтому, перед тем как редактировать через FTP, необходимо удалить все изменения в Меню -> Дизайн -> Редактор шаблона.
- Редактируете не те файлы. Да и такое бывает. То редактируют другой сайт, то другой шаблон, то забывают обновить кеш браузера нажатием CTRL+F5, то пытаются редактировать что то в кеше модификатора т.е в директории Storage и тд. Внимательно изучайте структуру. Об этом есть информация в документации.
- Хостин с задержкой. Да бывают хостеры, которые задерживают изменения в файлах. Т.е редактируешь, а изменения применяются через минуту. За минуту можно весь сайт сломать, а виноват оказывается хостер.
- Кривой шаблон или шаблон с кешем. Некоторые шаблоны настолько перекешированы, что начинаешь редактировать, а изменений нет. Виной кеш самомго шаблона. Обычно это распространено в многофункциональных шаблонах, поэтому внимательней изучайте функционал.
- Скачайте и установите дополнение Localcopy OCMOD;
- После установки этого дополнения нужно перейти в раздел Меню -> Расширения -> Модификаторы и нажать кнопку Обновить модификаторы;
- Теперь можно устанавливать другие модули.