Перейти к публикации
View in the app

A better way to browse. Learn more.

Дизайн и модификация Invision Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Массовое копирование разделов

Опубликовано:

Здравствуйте

 

Требуется создать большое количество одинаковых разделов в разных подразделах. Создавать по одному разделу довольно долго и сложно.

 

Возможно ли, допустим, сделать 10 разделов в определенном подразделе, а дальше эти 10 разделов продублировать в другом подразделе, а потом еще в одном?

 

 

Может есть какой-то хук/плагин, который расширяет функционал админки или какой-то запрос прямо в бд?

Рекомендованные сообщения

Опубликовано:

INSERT INTO forums (parent_id, name, description, use_html, sort_key, sort_order, prune, topicfilter, sub_can_post, name_seo, seo_last_title) SELECT 1, name, description, use_html, sort_key, sort_order, prune, topicfilter, sub_can_post, name_seo, seo_last_title FROM forums ORDER BY id DESC LIMIT 10

Продублирует в категории 1 (SELECT 1 - ид родительской категории) последние десять созданных форумов. Но кроме самих форумов нужны еще маски доступа, либо придется лезть в настройках форумов и редактировать их, или создать их также sql запросом.

Опубликовано:
  • Автор

Да, ваша команда работает. Создаются последние созданные разделы. А можно так, что бы скопировать УЖЕ созданные разделы?

 

Вот примерная структура разделов:

 

Раздел А
Раздел A
	Раздел 1
	Раздел 2
	Раздел 3
	Раздел 4
Раздел Б
Раздел B
	Раздел 1
	Раздел 2

Раздел В
Раздел C
	Раздел 1
	Раздел 2

 

Т.е. мне нужно скопировать Раздел 3 в Раздел B и Раздел C, потом скопировать Раздел 4.

Опубликовано:

Ну поиграйтесь с условием WHERE в селекте, укажите id каких форумов хотите скопировать, или форумы чей parent_id принадлежит этой категории.

Опубликовано:
  • Автор

Методом проб вывел команду, точнее в конце немного изменил:

INSERT INTO forums (parent_id, name, description, use_html, sort_key, sort_order, prune, topicfilter, sub_can_post, name_seo, seo_last_title) SELECT 2475, name, description, use_html, sort_key, sort_order, prune, topicfilter, sub_can_post, name_seo, seo_last_title FROM forums WHERE id IN (6, 7, 8)

 

Т.е. команда говорит чтобы в определенный раздел (2475) были вставлены следующие разделы (6, 7, 8)

 

А как теперь сделать наоборот, чтобы в перечень определенных разделов был вставлен один определенный раздел?

Опубликовано:
  • Автор

Не могли бы подсказать по предыдущей команде, правильна ли она?

 

И как теперь сделать наоборот, чтобы в перечень определенных разделов был вставлен один определенный раздел? А может даже вообще, выбрать определенные разделы и скопировать в определенные разделы.

Опубликовано:

INSERT INTO ... SELECT определенный_раздел_1, ...

INSERT INTO ... SELECT определенный_раздел_2, ...

INSERT INTO ... SELECT определенный_раздел_n, ...

Опубликовано:
  • Автор

Не получается у меня написать запрос, не силён я в этом.

 

siv1987, не могли бы вы написать запрос, как скопировать один раздел в перечень других разделов, или, подскажите, правильно ли составлен этот запрос?

 

INSERT INTO forums (parent_id, name, description, use_html, sort_key, sort_order, prune, topicfilter, sub_can_post, name_seo, seo_last_title) SELECT 2475, name, description, use_html, sort_key, sort_order, prune, topicfilter, sub_can_post, name_seo, seo_last_title FROM forums WHERE id IN (6, 7, 8)

 

Т.е. выбираются определенные разделы и копируются в один определенный раздел

Опубликовано:

Правильно.

Копируйте подфорумы указав условие WHERE id IN (ид_подфорума1, ид_подфорума2, ...). Запрос который собственно выше.

Опубликовано:
  • Автор

siv1987 спасибо

Создайте аккаунт или войдите в него для комментирования

Сейчас на странице 0

  • Нет пользователей, просматривающих эту страницу.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.