Ошибка шаблона plate php, Почему у меня неопределенная ошибка переменной

Опробовать движок шаблонов PlateSpp. Я включил класс platephp, как указано в примере на их веб-сайте, и создал экземпляр plate в моем index.php

index.php

require 'plates/vendor/autoload.php';

// Create new Plates instance
$templates = new League\Plates\Engine('catalog/view/template/', 'tpl');

include 'catalog/controller/Home.php';
$home = new Home();
$home->index();

Контроллер по умолчанию / домашний контроллер находится в другой папке app>controller>Home.php (MVC).

Это то, что у меня есть в моем HomeController прямо сейчас (это фиктивный контроллер, не готовый к производству, но чтобы проверить, могу ли я применить phpplates)

class Home
{
    public function index(){

    // Preassign data to the layout
    $templates->addData([
    'page_title' => 'site title here',
    'page_description' => 'site description here',
    'page_keywords' => 'keywords here'
], 'common/layout');

    // Render a template
    echo $templates->render('product/home');
    }
}

Шаблон представляет собой файл TPL, который находится на app>view>templates,

Теперь проблема в том, что когда я запускаю код, я получаю сообщение об ошибке

Примечание: неопределенная переменная: шаблоны в C:\xampp\htdocs\tryPlates\catalog\controller\Home.php в строке 15

Неустранимая ошибка: вызов функции-члена addData() со значением NULL в C:\xampp\htdocs\tryPlates\catalog\controller\Home.php в строке 15

и строка 15 на HomeController является

 $templates->addData([
    'page_title' => 'site title here',
    'page_description' => 'site description here',
    'page_keywords' => 'keywords here'
], 'common/layout');

Что я понимаю, так это то, что $ шаблоны остались неопределенными в HomeController, но я уже определил это в index.php

// Create new Plates instance
$templates = new League\Plates\Engine('catalog/view/template/', 'tpl');

Почему этот беспорядок. Пожалуйста помоги.

0 ответов

Другие вопросы по тегам