Русскоязычный форум, посвященный фреймворку Kohana
http://forum.kohanaframework.su/

Несколько шаблонов на сайте
http://forum.kohanaframework.su/viewtopic.php?f=2&t=597
Страница 1 из 1

Автор:  loMad [ 24 мар 2013, 12:13 ]
Заголовок сообщения:  Несколько шаблонов на сайте

Добрый день. Недавно начал изучать Kohan`у и встал такой вопрос. Как сделать, что бы на сайте отображался один шаблон, а при входе в админку другой?

Автор:  rain2 [ 24 мар 2013, 17:19 ]
Заголовок сообщения:  Re: Несколько шаблонов на сайте

Смотря какая у вас структура, у каждого разная, например можно так
bootstrap.php

Код:
Route::set('admin', 'admin(/<controller>)(/<action>(/<id>))')
    ->defaults(array(
        'directory' => 'admin',
        'controller' => 'main',
        'action'     => 'index',
    ));


application/classes/Controller/Admin.php
Код:
class Controller_Admin extends Controller_Template {

    public $template = 'base.view'; // шаблон для админки

    public function before() {
        parent::before();
// тут можно подключить стили и скрипты, проверки и прочую лабуду
        $this->template->title = '';

        $this->template->styles = array();

        $this->template->top_contents = array();
        $this->template->top_contents[] = View::factory('header.view');
        $this->template->sidebars = array();
        $this->template->contents = array();
        $this->template->bottom_contents = array();

        $this->template->scripts = array();

        $this->template->scripts[] = 'jquery.min.js';
        $this->template->scripts[] = 'jquery.printPage.js';
        $this->template->scripts[] = 'jquery.tmpl.min.js';
        $this->template->scripts[] = 'jquery.tmplPlus.min.js';
        $this->template->scripts[] = 'less.min.js';
        $this->template->scripts[] = 'bootstrap.js';
        $this->template->scripts[] = 'bootstrap-transition.js';
        $this->template->extras = array();
        $this->template->extras[] = View::factory('extras/window.view');
    }

}


application/classes/Controller/Admin/Main.php

Код:
class Controller_Admin_Main extends Controller_Admin {


    public function before() {
        parent::before();
    }
    public function action_index()
    {
        $content = 'ололо';
        // Вывод в шаблон
        $this->template->block_center = array($content);

    }

}

Автор:  Sergey [ 24 мар 2013, 19:23 ]
Заголовок сообщения:  Re: Несколько шаблонов на сайте

rain2 писал(а):
Смотря какая у вас структура, у каждого разная, например можно так
bootstrap.php


Не скажу что это элегантное решение

Автор:  Sergey [ 24 мар 2013, 19:24 ]
Заголовок сообщения:  Re: Несколько шаблонов на сайте

loMad писал(а):
Добрый день. Недавно начал изучать Kohan`у и встал такой вопрос. Как сделать, что бы на сайте отображался один шаблон, а при входе в админку другой?



Посмотрите как это реализовано в Gleez. modules/gleez/classes/gleez/template.php

Автор:  rain2 [ 24 мар 2013, 19:47 ]
Заголовок сообщения:  Re: Несколько шаблонов на сайте

а я и не говорил что это элегантно , все зависит от задачи

Автор:  loMad [ 27 мар 2013, 10:16 ]
Заголовок сообщения:  Re: Несколько шаблонов на сайте

Спасибо за советы. Буду пробовать.

Страница 1 из 1 Часовой пояс: UTC + 4 часа [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/