Массовое добавление тега к записям 2.X

 
Посетитель
small user social cms
МедальПочетный донор проекта
Сообщений: 450
Нужно к записям определённой категории дописать тег. Начитался, что в базе можно дополнять тексты в ячейках. Сделал так:

Код PHP:
  1. update `cms_con_places` set `tags`= concat(tags,'ослиные ушки нарасхват') where category_id ='184'
На вкладке "SQL" вставил в поле и нажал "Вперёд". Процесс какой-то прошёл, но ничего с нужными записями не произошло и отобразилось такое сообщение:

MySQL вернула пустой результат (т.е. ноль строк).

А ведь там несколько записей. Видимо запрос не верно составлен?
Редактировалось: 1 раз (Последний: 19 июня 2019 в 15:49)
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатийПочетный донор проекта
Сообщений: 2752
Yar:
Видимо запрос не верно составлен?
Запрос верно составлен. А там точно есть записи, у которых категория 184 ?

Попробуйте так:
Код SQL:
  1. UPDATE `cms_con_places` SET `tags`= concat(tags,', ослиные ушки нарасхват') WHERE category_id = 184
Реклама
cms
Посетитель
small user social cms
МедальПочетный донор проекта
Сообщений: 450
Ris, сбасибо. Сделал так:
Код SQL:
  1. UPDATE `cms_con_places` SET `tags`= concat(tags, ", ослиные ушки нарасхват") WHERE `category_id` = 276
Оказывается, что код, принципе, работал, только в той категории записей-то и не было, как оказалось... scratch

Отдельное спасибо за запятую и пробел пред текстом. Вы смотрите на шаг вперёд. Иначе пришлось бы мне потом делать шаг назад...
Редактировалось: 1 раз (Последний: 19 июня 2019 в 17:49)
Посетитель
small user social cms
МедальПочетный донор проекта
Сообщений: 450
Тег в нужных записях добавился. Вот только при переходе на него с любой записи попадаем на 404. Кнопку "Пересчитать теги" нажимал. Одну запись пересохранил и для неё тег заработал. Он появился в компоненте "Теги", но только с одной записью - пересохранённой. Что нужно ещё сделать? Пересохранять каждую запись не вариант.
Редактировалось: 1 раз (Последний: 19 июня 2019 в 19:07)
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 3617
Yar:
Что нужно ещё сделать?
Заполнить таблицу cms_tags и cms_tags_bind
Редактировалось: 2 раз (Последний: 19 июня 2019 в 19:11)
Посетитель
small user social cms
МедальПочетный донор проекта
Сообщений: 450
А что там и как нужно сделать?
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатийПочетный донор проекта
Сообщений: 2752
Попробуйте так:
Код SQL:
  1. INSERT INTO `cms_tags`(`tag`, `frequency`) SELECT 'ослиные ушки нарасхват', COUNT(*) FROM `cms_con_places` WHERE `category_id` = 276;
  2. INSERT INTO `cms_tags_bind`(`tag_id`, `target_controller`, `target_subject`, `target_id`) SELECT t.id, 'content', 'places', p.id FROM `cms_tags` t
  3. JOIN `cms_con_places` p WHERE t.tag = 'ослиные ушки нарасхват' AND p.category_id = 276;
  4.  
Редактировалось: 2 раз (Последний: 19 июня 2019 в 23:04)
В начало страницы
Предыдущая темаСледующая тема Перейти на форум:
Быстрый ответ
Чтобы писать на форуме, зарегистрируйтесь или авторизуйтесь.