Jump to content
Дизайн и модификация IPS Community IPBSkinsBETA
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
Andriiko

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

Recommended Posts

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

 

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

 

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

 

 

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

Share this post


Link to post
Share on other sites

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 запросом.

Share this post


Link to post
Share on other sites

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

 

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

 

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

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

 

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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

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)

 

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

Share this post


Link to post
Share on other sites

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

 

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

Share this post


Link to post
Share on other sites

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

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

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

Share this post


Link to post
Share on other sites

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

 

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)

 

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

Share this post


Link to post
Share on other sites

Правильно.

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

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...