Kohana v3: farklı alt etki alanları için farklı şablonları kullanarak

2 Cevap php

Ben bir Kohana v3 uygulaması var. Bu uygulama işaret 2 alt alan. app subdomain2.example.com ile çağrılırsa Kohana farklı bir şablon kullanır ne kurulum var?

'şablonlar / default': anda (subdomain1 ve subdomain2 itibaren) tüm çağrılar standart şablon kullanın

teşekkür ederim!

Daniel

2 Cevap

Birincisi, gelen alt alan adı almak $_SERVER['SERVER_NAME']:

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

Sonra alt etki dayalı kullanmak için ne şablon seçin:

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

Eğer parent::before() aramadan önce Yukarıdaki kod Controller::before() yönteminde konulmalıdır. Bu Controller_Template ya da bunun bir uzantısı kullandığınızı varsayar.

herkes bana yardımcı olabilir olabilir: http://stackoverflow.com/questions/2764543/kohana-v3-using-different-templates-for-different-subdomains

danzzz, there are a few ways... (i dont have time to go into detail.. so i'll give a quick go here..) .. A) use URL rewriting to map bla.site.com to site.com/bla (and www.bla.com+bla.com to bla.com/www) ... use that first param as the trigger... then load a different module at the top of the stack so it can override anything from a lower module - this assumes anything that is overridable is kept in a module, otherwise, you can use it as a trigger any where in the code... and B) is really the same thing, but using that param as the view name or similar... whenever i have something like that, i tend to leave my application folder empty, and have an application module near the top of the module stack.. that way, i can load a "skin" module higher up and have the cascading FS do all the hard work... keep in mind that "skin" modules etc will need a strict set of rules and interfaces, if you make a change to the app, you need to know all the skins still work...