Работа с поддоменами


WWQS может автоматически работать с поддоменами основного домена.


Для включения этой опции необходимо отредактировать файл crosssite.php в корне сайта. Этот файл делает предварительную обработку перед загрузкой ядра QS и определяет следующие глобальные переменные:

  • $crossSiteName – основное доменное имя сайта (для pda.pupkin.ru это pupkin.ru)
  • $crossSiteSubdomain – поддомен сайта (для pda.pupkin.ru это pda)
  • $crossSiteConfigFile = «sites/wakka.config.».$crossSiteName.».php» (адрес файла конфигурации)

Наиболее простой способ добиться установки этих переменных – использовать конструкцию

<?php
$subdomains 
= array("wap""pda");
?>

в начале файла crosssite.php – далее обработка произойдет по ходу файла.


Далее в любом PHP-коде вы можете использовать конструкцию типа

<?php
global $crossSiteSubdomain;
?>

для получения информации о поддомене основного сайта.


В частности, данная конструкция используется для подгрузки различных вариантов тем в функции Wacko:Run:

<?php
global $crossSiteSubdomain;

// много другого кода

if(file_exists($baseThemeHandler)) {
  if(
$crossSiteSubdomain != "") {
     if(
file_exists('themes/'.$this->config["theme"].'/appearance/makehtml.'.$crossSiteSubdomain.'.php')) {
       
$baseThemeHandler 'themes/'.$this->config["theme"].'/appearance/makehtml.'.$crossSiteSubdomain.'.php';
     }
  }
  include(
$baseThemeHandler);
} else {
  print(
$this->Header().$data.$this->Footer());
}
?>