Codeigniter, как сделать шаблон - PullRequest
       2

Codeigniter, как сделать шаблон

3 голосов
/ 08 октября 2010

я пытаюсь войти в codeigniter MVC, но я не знаю, как я делаю свой шаблон, поэтому у меня есть 2 файла (верхний и нижний колонтитулы), а затем я могу сделать свои контроллеры и затем ТОЛЬКО поместить информацию в div "content", поэтому включите верхний и верхний колонтитулы, как это хорошо

<?php
include("header.php");
?>
<div id="content">My content here</div>

<?php
include("footer.php");
?>

надеюсь, вы понимаете, о чем я, и можете мне помочь:)

Ответы [ 4 ]

5 голосов
/ 08 октября 2010

Лучший способ - это загрузить представления внутри ваших представлений.

В пределах views / content.php:

<? $this->view('header', array('title'=>'The page title', 'keywords'=>'some keywords', 'etc'=>'...')); ?>
<div id="content">My content here</div>
<? $this->view('footer'); ?>

Итак, в вашем контроллере вы должны сделать это:

$this->load->view('content', $data);

$data может содержать «заголовок» или «ключевые слова», и это будет реализовано так в вашем контроллере:

$data['title'] = 'title';
$data['keywords' = 'keywords';

И это в вашем представлении «контент»:

<? $this->view('header', array('title'=>$title, 'keywords'=>$keywords)); ?>
<div id="content">My content here</div>
<? $this->view('footer'); ?>

Этот вопрос сформулирован по-другому, но практически идентичен этому по существу: CodeIgniter или PHP-эквивалент паролей и шаблонов Rails

2 голосов
/ 08 октября 2010

Вот что я делаю. У меня есть файл с именем layout.php, со всем HTML-макетом в нем и внутри моего, я делаю:

$this->load->view($template);

В вашем контроллере вы можете сделать это:

$data['template'] = 'filename'; 
$this->load->view('layout', $data);

Таким образом, он загрузит файл с именем "filename" внутри <div></div>

0 голосов
/ 08 октября 2010

Попробуйте использовать библиотеку шаблонов, они очень помогут вам в будущем. Помогает вам управлять шаблонами лучше, чем по умолчанию $this->load->view('content', $data);

Вот несколько замечательных примеров:

Есть еще онлайн, попробуйте поискать их в Google :) 1020 *

0 голосов
/ 08 октября 2010

Мммм, нет, не совсем. Вот как вы должны делать MVC.

Внутри вашего контроллера есть что-то вроде этого:

$this->load->view('header');
$this->load->view('content');
$this->load->view('footer');

Наконец, создайте представления для каждого из этих файлов (в папке / system / application / views)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...