Переезд на InstantCMS

InstantCMS 2.X

проблематика при переездах на Instant

#1 2 марта 2021 в 20:01
Решил перевести новостной сайт на Инсту. Написал скрипты, перенёс все данные как думал...
Заполнив поля tags думал что и тэги переедут. Не тут то было. Только после ручного редактирования. Не подскажет кто как запустить "автоперестроение" тэгов.
#2 2 марта 2021 в 20:46
@handrey1977,
А посмотрите в базе таблицы cms_tags и cms_tags_bind.

Не подскажет кто как запустить "автоперестроение" тэгов.

@handrey1977
Нет никакого автоопределения. Всё в этих двух таблицах.
#3 2 марта 2021 в 20:49


@handrey1977,
А посмотрите в базе таблицы cms_tags и cms_tags_bind.

Не подскажет кто как запустить "автоперестроение" тэгов.

@handrey1977
Нет никакого автоопределения. Всё в этих двух таблицах.

Ris

да я так и понял, эти таблицы надо заполнить в ручную
но при заходе в новость и сохранении тэги заполняются, вот и интересно мне может все таки толкануть этот процесс
#4 2 марта 2021 в 21:48

да я так и понял, эти таблицы надо заполнить в ручную

@handrey1977
Не надо вручную. Сделайте, как Вы уже делали.

Написал скрипты, перенёс все данные

@handrey1977
Это возможно, я переносил теги с первой ветки инстанта.
#5 2 марта 2021 в 22:58


да я так и понял, эти таблицы надо заполнить в ручную

@handrey1977
Не надо вручную. Сделайте, как Вы уже делали.

Написал скрипты, перенёс все данные

@handrey1977
Это возможно, я переносил теги с первой ветки инстанта.

Ris

если просто заполнить поле tags скриптом, то cms_tags и cms_tags_bind не заполнятся
#6 2 марта 2021 в 23:14

если просто заполнить поле tags скриптом, то cms_tags и cms_tags_bind не заполнятся

@handrey1977
Значит надо добавить в этот "скрипт" заполнение этих таблиц. Примерно так:
  1. $content = $this->mg->get1('blog_posts');
  2.  
  3. foreach($content as $c){
  4.  
  5.  
  6. $tags = $this->mg->getRow1('tags', "item_id = {$c['id']} AND target = 'content'");
  7. $tag = $tags['tag'];
  8.  
  9. if ($tag) {
  10. $this->mg->insert2('tags', array('id' => $c['id'], 'tag' => $tag));
  11. $this->mg->insert2('tags_bind', array('tag_id' => $c['id'], 'target_controller' => 'content', 'target_subject' => $this->blogs, 'target_id' => $c['id']));
  12. }
  13. }
#7 4 марта 2021 в 10:47


если просто заполнить поле tags скриптом, то cms_tags и cms_tags_bind не заполнятся

@handrey1977
Значит надо добавить в этот "скрипт" заполнение этих таблиц. Примерно так:
  1. $content = $this->mg->get1('blog_posts');
  2.  
  3. foreach($content as $c){
  4.  
  5.  
  6. $tags = $this->mg->getRow1('tags', "item_id = {$c['id']} AND target = 'content'");
  7. $tag = $tags['tag'];
  8.  
  9. if ($tag) {
  10. $this->mg->insert2('tags', array('id' => $c['id'], 'tag' => $tag));
  11. $this->mg->insert2('tags_bind', array('tag_id' => $c['id'], 'target_controller' => 'content', 'target_subject' => $this->blogs, 'target_id' => $c['id']));
  12. }
  13. }

Ris

Вот это уже что то. Будем пробывать.
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.