2010-05-04 9 views

Répondre

2

tout d'abord, obtenir le nom du sous-domaine de $_SERVER['SERVER_NAME']:

list($subdomain) = explode('.', $_SERVER['SERVER_NAME'], 2); 

choisir ensuite le modèle à utiliser en fonction du sous-domaine:

// Replace this with a switch() statement if you want to choose another way 
$this->template = 'templates/'.$subdomain; 

Le code ci-dessus doit être placé dans la méthode Controller::before() avant d'appeler parent::before(). Cela suppose que vous utilisez le Controller_Template ou une extension de celui-ci.

0

peut quelqu'un peut me aider: kohana v3: using different templates for different subdomains

danzzz, il y a quelques façons ... (je n'ai pas le temps d'aller dans les détails .. donc je vais donner un rapide aller ici ..) .. A) utiliser la réécriture d'URL pour mapper bla.site.com à site.com/bla (et www.bla.com + bla.com à bla.com/www) ... utiliser ce premier param comme le déclencheur ... puis charger un autre module en haut de la pile de sorte qu'il peut remplacer quoi que ce soit à partir d'un module inférieur - cela suppose tout ce qui est Overridable est maintenu dans un module, sinon, vous pouvez l'utiliser comme un déclencheur où dans le code ... et B) est vraiment le même mince g, mais en utilisant ce param comme le nom de la vue ou similaire ... chaque fois que j'ai quelque chose comme ça, j'ai tendance à laisser mon dossier d'application vide, et avoir un module d'application près du sommet de la pile du module .. peut charger plus haut un module « peau » et ont la cascade faire FS tout le travail dur ... garder à l'esprit que les modules etc « peau » aura besoin d'un ensemble de règles strictes et des interfaces, si vous apportez une modification à l'application , vous avez besoin de connaître toutes les peaux travaillent encore ...

+0

IRC pseudos et le formatage dépouillé;) ah bien - nous l'espérons, il a encore un sens à tout le monde à lire d'autre le .. – Kiall