Мультисайтинг или...?

Аватар пользователя vlucas vlucas 2 ноября 2012 в 13:42

Требуется сделать сайт автосалона.

Планируется сделать основной сайт автосалона на домене второго уровня, например site.ru, а бренды размещать на поддоменах , т.е. на доменах третьего уровня, например lada.site.ru, gaz.site.ru и т.д.
Требуется, чтобы авторизация была единой, разное оформление для сайтов на поддоменах, а также, хотелось бы, чтобы размещая новость на основном сайте и соотнося её, например, с термином таксономии "lada" эта новость шла автоматом на сайт lada.site.ru и т.д.

Много прочитал про мультисайтинг и различные модули для организации субдоменов: subdomain, domain_Access.

Пока ничего не пробовал, но из всего прочитанного, думаю, лучше всего сделать мультисайтинг с одним движком и разными базами для поддоменов, сделать общую таблицу пользователей, а вот как быть с новостями и реализовать разное оформление?

Прошу помочь советом в реализации такой задачи.
Конечно можно в каждый поддомен поставить свой друпал, но думаю это не то, что мне подойдёт )))

Заранее спасибо.

Комментарии

Аватар пользователя Artu Artu 3 ноября 2012 в 0:35

Мультисайтинг с общим контентом. Темы разные.

Разделение новостей по типу контента или такономии.

Для мультисайтинга с общим контентом есть один ньюанс.
Весь контент доступен на любом сайте по прямым ссылкам, что нехорошо для SEO.
Можно ограничить доступ к определенным материалам на каждом сайте с помощью дополнительного модуля.

Аватар пользователя vlucas vlucas 14 ноября 2012 в 12:52

Artu wrote:
Мультисайтинг с общим контентом. Темы разные.

Разделение новостей по типу контента или такономии.

Для мультисайтинга с общим контентом есть один ньюанс.
Весь контент доступен на любом сайте по прямым ссылкам, что нехорошо для SEO.
Можно ограничить доступ к определенным материалам на каждом сайте с помощью дополнительного модуля.

Как в таком случае лучше организовать setting.php если мне необходимо сделать разными только темы, блоки и меню, а всё отсальное - общее.

Читал, что делается примерно так:

<?php
'prefix' => array(
            
'default'   => 'site1.',
            
'users'     => 'shared.',
            
'sessions'  => 'shared.',
            
'role'      => 'shared.',
            
'authmap'   => 'shared.',
      ),
?>

Если я правильно понял, то здесь указывается, что таблица default, будет разной и находится в базе site1, а таблицы users и остальные - общие и находиться будут в базе shared.

Можно ли как-то написать в prefix только список разных таблиц? Или сюда обязательно писать все таблицы?

Аватар пользователя Koreychenko Koreychenko 4 ноября 2012 в 0:06

Советую не париться с мультисайтингом, а сделать субдомены, основанные на таксономии. Тему выбирать в зависимости от путей. Здесь мультисайтинг нафиг не нужен - администрировать запаритесь.

Аватар пользователя Artu Artu 4 ноября 2012 в 11:07

"Koreychenko" wrote:
Советую не париться с мультисайтингом, а сделать субдомены, основанные на таксономии. Тему выбирать в зависимости от путей. Здесь мультисайтинг нафиг не нужен - администрировать запаритесь.

С помощью какого модуля модулей) это можно сделать?

Аватар пользователя Koreychenko Koreychenko 4 ноября 2012 в 19:18

Дык ТС все написал. Subdomain свой поддомен для термина таксономии. Domain access позволяет разделять права и устанавливать разные темы. Ну, или разные шаблоны page.tpl.php в зависимости от пути.

Аватар пользователя Artu Artu 14 ноября 2012 в 15:16

"Василий Сергеевич" wrote:
Можно ли как-то написать в prefix только список разных таблиц? Или сюда обязательно писать все таблицы?

Можно. В settings.php второго сайта укажите только различные таблицы.

Аватар пользователя vlucas vlucas 14 ноября 2012 в 21:29

Artu wrote:
"Василий Сергеевич" wrote:
Можно ли как-то написать в prefix только список разных таблиц? Или сюда обязательно писать все таблицы?

Можно. В settings.php второго сайта укажите только различные таблицы.

Спасибо, буду пробовать.

Аватар пользователя vlucas vlucas 14 ноября 2012 в 23:32

Artu wrote:
"Василий Сергеевич" wrote:
Можно ли как-то написать в prefix только список разных таблиц? Или сюда обязательно писать все таблицы?

Можно. В settings.php второго сайта укажите только различные таблицы.

Разобрался спасибо. Вот только теперь проблемка: какие таблицы делать разными, чтобы ничего не упустить, в моём случае?

Аватар пользователя Andruxa Andruxa 14 ноября 2012 в 15:37

"Василий Сергеевич" wrote:
site1.

не используйте точку в префиксах таблиц
Quote:
Важно! Точка здесь интерепретируется друпалом как конец названия БД, поэтому не стоит создавать префикс с точкой.

UPD. сорри, невнимательно прочел комментарий - вам надо разнести таблицы по разным базам, тогда наоборот - используйте Smile

Аватар пользователя vlucas vlucas 14 ноября 2012 в 21:29

Andruxa wrote:
"Василий Сергеевич" wrote:
site1.

не используйте точку в префиксах таблиц
Quote:
Важно! Точка здесь интерепретируется друпалом как конец названия БД, поэтому не стоит создавать префикс с точкой.

UPD. сорри, невнимательно прочел комментарий - вам надо разнести таблицы по разным базам, тогда наоборот - используйте =)

Да, как раз-таки точку именно для этого и использую. Спасибо

Аватар пользователя Artu Artu 14 ноября 2012 в 23:48

"Василий Сергеевич" wrote:
Как в таком случае лучше организовать setting.php если мне необходимо сделать разными только темы, блоки и меню, а всё отсальное - общее.

Тема хранится в файлах. Если на обоих сайтах тема с одним названием просто разнесите папки тем по соотв. сайтам (папкам).
И сделайте таблицы блоков разными.

Аватар пользователя vlucas vlucas 14 ноября 2012 в 23:48

Artu wrote:
"Василий Сергеевич" wrote:
Как в таком случае лучше организовать setting.php если мне необходимо сделать разными только темы, блоки и меню, а всё отсальное - общее.

Тема хранится в файлах. Если на обоих сайтах тема с одним названием просто разнесите темы по соотв. сайтам.
И сделайте таблицы блоков разными.

Это сделал. Скажите в домен обязательно нужно вносить dns запись типа A для поддомена, или это не нужно?

Аватар пользователя Artu Artu 15 ноября 2012 в 2:37

Я настраивал как синоним. (В случае отсутствия мультисайтинга второй домен открывает тот же сайт что и первый).

Аватар пользователя vlucas vlucas 15 ноября 2012 в 12:03

Остался последний, наверное, вопрос. Какие же всё-таки таблицы выносить в отдельную базу, чтобы менять только оформление?

Аватар пользователя Andruxa Andruxa 15 ноября 2012 в 12:30

"Василий Сергеевич" wrote:
Какие же всё-таки таблицы выносить в отдельную базу, чтобы менять только оформление?

в settings.php:
$conf['theme_default'] = 'theme_name';

Аватар пользователя vlucas vlucas 15 ноября 2012 в 12:50

Andruxa wrote:
"Василий Сергеевич" wrote:
Какие же всё-таки таблицы выносить в отдельную базу, чтобы менять только оформление?

в settings.php:
$conf['theme_default'] = 'theme_name';

Да, нашёл, совершенно точно. Спасибо. Тему нужно включить в админке, и, чтобы она лежала в all, т.е. чтобы была доступна всем сайтам. Тогда и блоки конкретно для этой темы можно изменять и темизировать эту тему.

Получается, чтобы получить разное оформление вообще не нужна вторая база!

Спасибо за отклик.

Аватар пользователя vlucas vlucas 15 ноября 2012 в 13:00

Ну и ещё один вопрос )))

Теперь необходимо разделить содержимое, чтобы, например, новости ВАЗ не появлялись на сайте BMW и т.д. Блоки, то разделяются, а вот ноды - нет.

P.S: Пока задумываюсь над тем, чтобы каждому материалу присваивать термин таксономии, например, ВАЗ, ГАЗ и т.д. и разносить материал по сайтам исходя из этого, думаю было бы удобно. Но это пока только мысли, наверное и модули есть, как писали:

"Artu" wrote:
Можно ограничить доступ к определенным материалам на каждом сайте с помощью дополнительного модуля.

Жду предложений по этому поводу.

Аватар пользователя vlucas vlucas 15 ноября 2012 в 16:20

Artu wrote:
Nodeaccess
Content access
не помню какой лучше

Работал с Content access - немного не то. Этот модуль распределяет доступ к отдельным типам материала для разных пользователей отнесенных к различным ролям. Но там нет подходящих настроек

Аватар пользователя vlucas vlucas 15 ноября 2012 в 21:01

Artu wrote:
значит второй

Второй модуль nodeaccess

Это альтернатива первому. Он тоже не способен разделять материал исходя из домена

Аватар пользователя Artu Artu 15 ноября 2012 в 22:20

Я не говорил что для домена.
Разделить таблицы доступа и разделять доступ к каждому материалу или типу на каждом сайте.

Аватар пользователя vlucas vlucas 15 ноября 2012 в 23:00

Artu wrote:
Я не говорил что для домена.
Разделить таблицы доступа и разделять доступ к каждому материалу или типу на каждом сайте.

Кажется мысль уловил. Думаю в моём случае необходимо взять модуль taxonomy_access, и разнести его таблицы по разным сайтам.

Спасибо, буду пробовать. Отпишусь позже

Аватар пользователя Artu Artu 16 ноября 2012 в 0:25

"Василий Сергеевич" wrote:
. Думаю в моём случае необходимо взять модуль taxonomy_access, и разнести его таблицы по разным сайтам.

По названию похоже.