joomla の 1 つのインスタンスの下に複数のマイクロサイトと 1 つのマスター サイトを配置したいクライアントのために、現在テンプレートを作成しています。私はそれを Joomla で構築しています。それは私が知っていることなので、別の CMS を提案しないでください。はい、Drupal がこれを本質的にサポートしていることを知っています! ということで、こちらがスキニーです。現在、私のテンプレートはテンプレート パラメータからドメイン名を探し、それをベース URI と比較してから、テンプレート全体で使用される変数を設定します。したがって、コードは次のようになります...
//multisite configuration - determines which template params and menu module to display depending on the base URL
$url = JURI::base();
$primary = 'http://'.$this->params->get('site-domain').'/';
$sub1= 'http://'.$this->params->get('domain1-domain').'/';
$sub2= 'http://'.$this->params->get('domain2-domain').'/';
$sub3= 'http://'.$this->params->get('domain3-domain').'/';
$sub4= 'http://'.$this->params->get('domain4-domain').'/';
$sub5= 'http://'.$this->params->get('domain5-domain').'/';
if($url == $primary):
$logo = $this->params->get('logo');
$title = $this->params->get('site-title');
$slogan = $this->params->get('site-slogan');
$menu = '<jdoc:include type="modules" name="menu" />';
elseif($url == $sub1):
$logo = $this->params->get('domain1-logo');
$title = $this->params->get('domain1-title');
$slogan = $this->params->get('domain1-slogan');
$menu = '<jdoc:include type="modules" name="menu-1" />';
elseif($url == $sub2):
$logo = $this->params->get('domain2-logo');
$title = $this->params->get('domain2-title');
$slogan = $this->params->get('domain2-slogan');
$menu = '<jdoc:include type="modules" name="menu-2" />';
elseif($url == $sub3):
$logo = $this->params->get('domain3-logo');
$title = $this->params->get('domain3-title');
$slogan = $this->params->get('domain3-slogan');
$menu = '<jdoc:include type="modules" name="menu-3" />';
elseif($url == $sub4):
$logo = $this->params->get('domain4-logo');
$title = $this->params->get('domain4-title');
$slogan = $this->params->get('domain4-slogan');
$menu = '<jdoc:include type="modules" name="menu-4" />';
elseif($url == $sub5):
$logo = $this->params->get('domain5-logo');
$title = $this->params->get('domain5-title');
$slogan = $this->params->get('domain5-slogan');
$menu = '<jdoc:include type="modules" name="menu-5" />';
endif;
だから今私がする必要があるのは、どのメニュー項目 ID がデフォルトのメニュー項目であるかを決定するテンプレート パラメーターを作成し、PHP ヘッダー リダイレクトを行うことです。Joomla は複数のデフォルトをサポートしていないため、必要なリダイレクト URL を生成するための回避策が必要です。カテゴリや記事タイプの表示に限定したくないので、メニュー項目IDやエイリアスで考えています。残念ながら、これを解決するには、PHP と Joomla に関する私の知識が不十分です。どんな助けでも素晴らしいでしょう。
ありがとうサンドラ:)