Проблема с extends в fenom
Всем привет. Это мой первый опыт сборки сайта на modx. Решил сразу использовать fenom, так как есть опыт работы с шаблонизаторами.
Суть вопроса/проблемы:
Мои действия по шагам:
1.Установил голый modx 2.7.0
2. Установил PDOtools, разрешил parser в настройках.
3. Через include подключил внешний шаблон
index.tpl c таким содержанием:
Суть вопроса/проблемы:
Мои действия по шагам:
1.Установил голый modx 2.7.0
2. Установил PDOtools, разрешил parser в настройках.
3. Через include подключил внешний шаблон
index.tpl c таким содержанием:
{extends 'template:base.tpl'}
{block 'content'}
<h2>content</h2>
{/block}
4. И соответственно шаблон base.tpl:<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<header>
<h2>header</h2>
</header>
{block 'content'}
{/block}
<footer>
<h2>footer</h2>
</footer>
</body>
</html>
Проблема в том что, открывается белый экран, а вот если удалить из index.tpl строчку {extends 'template:base.tpl'}, то содержимое отображается. Что я делаю не так? Комментарии: 8
Смотрите текст ошибки в разделе Управление — Отчеты — Журнал ошибок
я забыл это написать. Ошибок в журнале нет.
Тогда надо смотреть в журнале ошибок PHP. Белый экран — это, чаще всего, ошибка сервера. А они все обычно логгируются.
Мне кажется, что дело в том, что шаблон лежит не в той папке просто…
Мне кажется, что дело в том, что шаблон лежит не в той папке просто…
не знаю, где смотреть журнал ошибок php. Шаблон base лежит в одной папке с index, а индекс, если без строчки extends открывается и работает
Через include подключил внешний шаблон index.tpl c таким содержанием:Это как? Это где? Неужели в ресурсе?
Кроме того, Вы же понимаете, что работаете не с файлами, а с шаблонами из БД? Они никак не могут лежать в одной папке.
Ну почему же в ресурсе?) В шаблоне. Я делал, так как написано в документации. А шаблоны base.tpl и расширяющий его index.tpl лежат в одной папке core/elements/templates.
Ну почему же в ресурсе?) В шаблоне.Тогда что значит эта загадочная фраза: «Через include подключил внешний шаблон index.tpl c таким содержанием:»?
А шаблоны base.tpl и расширяющий его index.tpl лежат в одной папке core/elements/templates.Ещё раз. В твоём варианте запрос идёт к шаблонам из БД. Т.е. шаблон base.tpl должен быть в списке шаблонов во вкладке «Элементы» дерева элементов админки.
Я делал, так как написано в документации.Видимо из какой-то другой. Вот пример из документации:
{extends 'file:chunks/my_chunk.tpl'}
{block 'myblock'}
Hello world!
{/block}
В твоём случае{extends 'file:templates/base.tpl'}
...
Тогда что значит эта загадочная фраза: «Через include подключил внешний шаблон index.tpl c таким содержанием:»?Это значит, что я вставил в код шаблона в админке вот это:
{include 'file:templates/index.tpl'}
Ещё раз. В твоём варианте запрос идёт к шаблонам из БД. Т.е. шаблон base.tpl должен быть в списке шаблонов во вкладке «Элементы» дерева элементов админки.создание шаблона для base.tpl ничем не помогло бы.
В твоём случаеименно это мне помогло. Спасибо большое!
{extends 'file:templates/base.tpl'} ...
дело в том что в документации я прочитал следующее:
{extends 'template:Fenom Base'}
{block 'content'}
<h3>{$_modx->resource.pagetitle}</h3>
<div class="jumbotron">
{parent}
</div>
{/block}
Точно также можно писать и расширять чанки, только обратите внимание, что для работы с modTemplate нужно указывать префикс template:, а для чанков нет — они работают по умолчанию во всех {include} и {extends}.вот это меня и сбило с пути истинного)
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.