Виды материалов в одной базе или лучше импорт/экпорт?

Главные вкладки

Аватар пользователя chel chel 20 августа 2010 в 23:26

Дано: сайты на одном хостинге.
Задача:
Вариант описания1 (краткий)
К примеру я хочу чтобы у всеx сайтов были свои индивидуальные Page, но общий Story

Вариант описания2 (подлинее)
Есть ноды отпределенного типа, скажем ФИРМЫ. Задача состоит в том чтобы одни и теже ФИРМЫ были общие на всех сайтах, но остальные материалы отличались, Еще желательно чтобы для этих ФИРМ был общий словарь(с терминами) на всех сайтах.
видятся мне следущие пути, вот тут хотелось бы узнать у умных людей имеющих опыт с друпалом, в какую сторону податься.


Пути решения:

1.Может есть модуль позволящий держать материалы определнного типа в одной базе (или сайте). А чтобы другие сайты использовали этот тип материалов как свои собственные?
2.(Велосипед 1) Может стоит написать модуль - т.е. сотрудник- РедакторСайта внес ФИРМУ на сайт, нажал "зеленую кнопочку" и БАЦ... из этого сайта фирмы экспортировались/импортировались в другие сайты(базы скажем по фтп ssh mysqldump mysql xmlrpc). А Редактора заставить чтобы ФИРМЫ вводили на одном сайте только...
3.(Велосипел 2) Перехватывать както хук создания/редактирования - сохранения определенных типов материалов сайта1 и сохранять их также в таблицу сайта2...самое веселое наверное будет с id, т.е. наверное прийдется добавить id2 (так как на сайтах общее число материалов будет разное, то и id будут разные у одной и тойже фирмы на разных сайтах, а id2 как раз будет связь один к одному, чтобы одна фирма два раза не добавилась на сайт2)?
4.Может быть еще есть варианты более простые куда копать, а я все усложняю?

Комментарии

Аватар пользователя SergeAstapov@drupal.org SergeAstapov@dr... 20 августа 2010 в 23:41

Как вариант (если все сайты на одном хостинге либо имеют общий доступ к БД) можно сделать что бы добавлялись/хранились/удалялись эти ноды на одном "сайте", а в другом просто вытаскивались из другой БД:

db_set_active('second_db);

и

pager_query("SELECT nid FROM {node} WHERE type = 'some_type'", $count, 0, null);
Аватар пользователя chel chel 21 августа 2010 в 3:06

да в этом случае я могу вывести на сайте1 определенные материалы из другой бд2 (сайта2), но вопрос в том что если одни материалы сайта1 ссылаются на эти материалы сайта2, и мне нужно будет вывести через views (или через sql - select ...left join) связанные данные материалы сайта1(база1) с материалами из сайта2 одновременно.

Аватар пользователя chel chel 21 августа 2010 в 3:05

спасибо, но тут описывается как сделать общими: пользователей, роли, права, модули, локализацию, даже термины, но только не материалы определенного типа.
К примеру я хочу чтобы у всеx сайтов были свои индивидуальные Page, но общий Story