Устраняем проблему с удалением тегов в prestashop

Устраняем проблему с удалением тегов в prestashop
Уже прошло немало времени, а проблема с удалением тегов в форме списка тегов в prestashop до сих пор не решена. А тянется она с момента обновления модуля тегов, который входит в стандартную коробку для prestashop и устанавливается автоматически при установке. Решение проблемы в этой статье.


Рассмотрим работу с этим модулем (blocktags версия 1.3.1) для свежей на данный момент версии prestashop 1.6.1.15. Создадим теги для одного из товара:

Создание тегов для одного из товара в prestashop

Посмотрим результат в таблицах БД:

Содержимое таблицы ps_tag:
Содержимое таблицы ps_tag

Содержимое таблицы ps_tag_count:
Содержимое таблицы ps_tag_count

Содержимое таблицы ps_product_tag:
Содержимое таблицы ps_product_tag

Всё отлично работает, вот результат работы блока тегов во фронт офисе:
Блок тегов во фронт офисе престашоп

Теперь удалим один их тегов через форму списка тегов:
Форма списка тегов

И посмотрим, что происходит в таблицах БД:

Изменилось содержимое только таблицы ps_tag:
Содержимое таблицы ps_tag после удаления записи

В остальных вышеперечисленных таблицах изменений не произошло. Причем удаление тегов через карточку товара происходит без проблем. Вот результат работы блока тегов во фронт офисе в случае удаления тегов через форму списка тегов:
Блок тегов во фронт офисе престашоп после удаления

Можно предположить, что функционал удаления тегов через форму списка тегов просто забыли написать. Таким образом, происходит незаметное замусоривание таблиц ps_tag_count и ps_product_tag, если товаров с тегами очень много и удаление происходит через форму списка тегов.

Вылечить это просто, добавив в AdminTagsController.php такие строки:

Функции, при обращении к ним из списка тегов, удаляют выделенные строки из БД. Сделать это лучше же конечно через Override папку. Как результат, всё работает как и должно. Для того, чтобы изменения вступили в силу нужно чистить кеш.

Файл AdminTagsController.php упакован в архив, который можете скачать здесь:


Вы можете пропустить чтение записи и оставить комментарий. Размещение ссылок запрещено.

Оставить комментарий

2 + четыре =