web-dev-qa-db-ja.com

ユーザーとノードを共有するマルチサイトを作成するにはどうすればよいですか?

Drupal 7のマルチサイトを作成したい:すべてのサイトは個別に機能しますが、ユーザーとノードはサイト間で共有する必要があります。

どうすれば達成できますか?

21
user1630

Drupalサイトで使用されるsettings.phpファイルに含まれているデータベースへのアクセスの設定を次のようなものに変更できます(括弧内の値を正しいサイトの値):

$databases['default']['default'] = array(
  'driver' => '[Your database engine]',
  'database' => '[Your database name]',
  'username' => '[Your username for the access to the database engine]',
  'password' => '[The password for the access to the database]',
  'Host' => 'localhost',
  'prefix' => array(
    'default'   => 'main_',
    'users'     => 'shared_',
    'sessions'  => 'shared_',
    'role'      => 'shared_',
    'authmap'   => 'shared_',
  ),
  'collation' => 'utf8_general_ci',
);
17
zdecibel

異なるドメイン間でユーザーとコンテンツを共有するのが Domain Access モジュールの目的です。基本的に、同じデータベースから複数のDrupal=サイトを実行し、コンテンツを共有することができます。

モジュールをインストール、有効化、構成すると、ノード編集ページに新しいタブが表示され、特定のドメインをノードのターゲットにすることができます。また、ctools選択ルールを使用するビュー、パネル、およびその他のモジュールともうまく機能します。

このソリューションは、コアおよびcontribファイルの共通セットである真のマルチサイトとは異なりますが、サイトごとにデータベースは異なります。

10
mpdonadio

これは少し複雑ですが、ユーザーと複数のデータベースを共有するマルチサイト環境を作成できます。ユーザーとノードを共有する個別のデータベースが必要な場合は、非常に複雑になると思います。長所と短所を使用したさまざまなセットアップの詳細については、 このドキュメント を参照してください。

2
Lance