複数のデータベースを持つWordPress MultisiteとCiviCRM

私は、CiviCRMを複数サイトのWordpressで共有し、単一のデータベースが異なるサイトのデータを別々に保持するように動作させることが可能であることを知っています。

私は表面的に簡単なことをしたいと思っていますが、どこからでも言及することはできません。

私は、複数サイトのインストールで2つのサイトを同じCiviCRMコードベースを使用するが、完全に別のデータベースを使用したいと思います。私の考えでは、ユーザーの視点から離れていても、2つのウェブサイトのデータが混在することは望ましくありません。

これは(psuedocode)と書かれている設定ファイルのPHPスイッチと同じくらいシンプルなものでしょうか?

 If Website A:
      Use Database A
 Else:
      Use Database B

しかし、私はログとSmartyのキャッシュファイルでは、それはそれよりも複雑かもしれないことに気付く…

ベストアンサー

さて、その答えは「はい、それは(ほとんど)簡単です」と思われます。

まず、CiviCRMを別のWordpressネットワークサイトにインストールしていないと考えるようにCivicRMMを騙す必要があるのは、civicrm.settings.phpを離れた場所に移動することです。

そう、これをしなさい:

  1. 古いcivicrm.settings.phpファイルを安全な場所に移動します。
  2. 新しい空のMySQLデータベースを作成します。
  3. 新しいCiviCRMインスタンスを作成し、CiviCRMプラグインを有効にする予定のWordpressサイトに移動します。
  4. CiviCRMは空のデータベースにCiviCRMをインストールするプロセスを実行します。
  5. おそらく/path/to/wordpress/wp-content/uploads/sites/2/civicrm/civicrm.settings.phpのようなパスに新しいcivicrm.settings.phpファイルが作成されます。
  6. 古いcivicrm.settings.phpを元の場所に復元します(これは/
    path/to/wordpress/wp-content/plugins/civicrm /にあります)

‘古い’設定ファイルは次のように編集されました:

<?php

$site = $_SERVER['SERVER_NAME'] == 'newsite.com' ? 'new' : 'default';

if ($site != 'default'):
    include_once('/path/to/wordpress/wp-content/uploads/sites/2/civicrm/civicrm.settings.php');
else:
    /*The contents of the old original settings file goes here.*/
endif;

?>

コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です