Удаление страницы в OpenCart¶
Удаление страницы в OpenCart — операция по уничтожению информационного контента (статей, категорий, товаров, пользователей) в системе управления контентом (CMS) OpenCart — популярной бесплатной платформе электронной коммерции на PHP. Процедура выполняется через административную панель (админку) или напрямую через файлы и базу данных, зависит от типа удаляемого объекта и версии движка.
¶Типы страниц в OpenCart
В OpenCart понятие «страница» неоднозначно, поскольку платформа разделяет контент на несколько типов:
| Тип страницы | Источник | Где создаётся |
|---|---|---|
| Информационные страницы («О компании», «Доставка», «Политика конфиденциальности) | Модуль «Информация» | Админка → Маркетинг → Информация |
| Категории каталога | Модуль «Категории» | Админка → Каталог → Категории |
| Карточки товаров | Модуль «Товары» | Админка → Каталог → Товары |
| Системные страницы (корзина, оформление заказа, вход) | Встроены в ядро | Файлы шаблона catalog/view/theme/*/template/ |
| Страницы статей (при установленном расширении) | Внешние модули | Зависит от расширения |
Системные страницы ядра удалять нельзя — они критичны для работы магазина. Удалению подлежат созданные администратором объекты.
¶Удаление информационной страницы через админку
Самый распространённый сценарий. Инструкция для OpenCart 3.x и 4.x:
- Войти в админ-панель (обычно
домен/adminилидомен/админ-папка). - Перейти в раздел «Маркетинг» → «Информация» (в OpenCart 2.x — «Статии» или «Информация» в главном меню).
- В списке найти нужную страницу, поставить галочку в чекбоксе слева от названия.
- Нажать кнопку «Удалить» (красная кнопка в правом верхнем углу списка).
- Подтвердить действие в диалоговом окне браузера.
После подтверждения запись удаляется из таблицы oc_information и связанных таблиц oc_information_description, oc_information_to_store, oc_information_to_layout. Страница перестаёт открываться по ссылке — сервер вернёт ошибку 404.
¶Удаление категории
Категория удаляется аналогично, но с дополнительными последствиями: все товары, привязанные только к этой категории, становятся «безкатегорными» и исчезают из каталога, хотя из базы данных не удаляются.
Путь: «Каталог» → «Категории» → выбрать категорию → «Удалить». При удалении родительской категории дочерние категории не удаляются автоматически — они становятся корневыми.
¶Удаление товара
Путь: «Каталог» → «Товары» → отметить нужные позиции → «Удалить». Вместе с товаром удаляются связанные изображения из папки image/catalog/ (в некоторых версиях файлы остаются на диске и требуют ручной очистки), варианты (модификации), опции, связанные отзывы и спецификации.
¶Удаление через phpMyAdmin или SQL
Прямое удаление из базы данных применяется при:
- повреждённой админке;
- необходимости массового удаления;
- отсутствии доступа к веб-интерфейсу.
Пример SQL-запроса для удаления информационной страницы с ID = 5:
``sql DELETE FROM oc_information WHERE information_id = 5; DELETE FROM oc_information_description WHERE information_id = 5; DELETE FROM oc_information_to_store WHERE information_id = 5; DELETE FROM oc_information_to_layout WHERE information_id = 5; ``
Префикс таблиц (oc_) задан при установке и может отличаться. Перед выполнением запросов необходимо сделать резервную копию базы данных.
¶Удаление системной страницы или модуля
Для скрытия системной страницы, например «Регистрация» или «Возврат», используется админка: «Пользователи» → «Пользовательские группы» → снять разрешения на соответствующие действия. Страница останется в коде, но станет недоступной для клиентов.
Полное удаление модуля (расширения) выполняется через «Модули» → «Расширения» → выбрать тип → «Удалить». В OpenCart 4.x добавлен пункт «Удалить» в меню расширений, удаляющий и файлы модуля.
¶Типичные ошибки
- Страница удалилась, но ссылка в меню осталась. Меню редактируется отдельно: «Маркетинг» → «Меню» (при установленном модуле меню) или в настройках шаблона.
- Ошибка 404 вместо главной. Возникает, если удалена системная категория с ID, указанная в настройках магазина как категория по умолчанию. Исправляется в «Настройках» → «Система» → «Опции» → «Каталог».
- Кэш. После удаления необходимо очистить кэш: кнопка «Очистить кэш» в правом верхнем углу админки или удаление папки
system/storage/cache/.
¶Резервное копирование
Перед любым удалением рекомендуется создать резервную копию базы данных и файлов. В OpenCart 3.x+ встроенный механизм бэкапов отсутствует — копирование выполняется средствами хостинга (cPanel, панель провайдера) или утилитами mysqldump:
``bash mysqldump -u пользователь -p имя_базы > backup.sql ``
Источники:
- Документация OpenCart (opencart.com)
- Руководство по администрированию OpenCart 3.x
- Справочник по работе с MySQL
