Интеграция Smarty в CodeIgniter? Это бриз!
Система шаблонов в CodeIgniter очень проста.
Выполните следующие действия для Smarty 3 в CI 3:
Скачать CodeIgniter 3
Загрузите Smarty 3 и поместите его содержимое в папку application / third_party / smarty
Создайте файл 'Custom_smarty.php' в 'application / library' и добавьте этот код:
<?php
if ( ! defined('BASEPATH')) exit('No direct script access allowed');
require_once(APPPATH.'third_party/smarty/Smarty.class.php');
class Custom_smarty extends Smarty {
function __construct()
{
parent::__construct();
$this->setTemplateDir(APPPATH.'views/templates/');
$this->setCompileDir(APPPATH.'views/templates_c/');
}
}
?>
Создание папок 'templates' & 'templates_c' внутри папки 'application / views'
Создать простой файл 'test.tpl' в папке 'application / views / templates'
Откройте файл «autoload.php» в папке «application / config» и добавьте:
$autoload['libraries'] = array('custom_smarty');
А внутри контроллера: $this->custom_smarty->display('test.tpl');
Если вы работаете на localhost, установите права доступа: sudo chmod -R 777 templates_c
. В противном случае свяжитесь с вашим хостингом, если уловите ошибку Невозможно записать файл. Сначала убедитесь, что папка templates_c существует.
В противном случае вы можете использовать другой шаблонизатор, например Twig.