Создание страницы

Создание страницы

Система позволяет создавать кастомные страницы пользователей. Но если вы не обладаете опытом в веб программирование, советуем использовать Редактор страниц из Админ центра.

Добавление страницы в Роутинг

Создайте JSON файл в директории

application/system/pages

Содержимое которого должно иметь следующий код

{
    "/ссылка": {
        "name": "Название страницы",
        "description": "Описание для поиска",
        "keywords": "Теги для поиска",
        "image": "/путь до изображения.jpg",
        "module": "папка/файл"
    }
}​

ссылка - это адрес, по которому будет доступна страница. name - заголовок страницы description - описание для поиска (необязательный параметр) keywords - теги для поиска (необязательный параметр) image - для социальных сетей (необязательный параметр) module - путь до файла в application/pages

Пример готового файла

{
    "/test": {
        "name": "Test",
        "module": "test/index"
    }
}

Создаем наш обработчик

application/pages/test/index.php

Содержимое файла index.php

<?PHP
	tpl()
	->Start('sample')
	->Content(tpl()->Get('test/index'))
	->Show();

А также создаем шаблон в

application/appearance/название шаблона/test/index.tpl

{grab('/elements/header.tpl')}

<div class="Body">
	<div class="Container">
		Hello, world!
	</div>
</div>

{grab('/elements/footer.tpl')}

И переходим по адресу

https://ваш сайт/test

Если все правильно, у нас выведет сообщение Hello, world! с включенным нашим шаблоном.

Можно еще добавить проверку на авторизованность пользователя в файле

application/pages/test/index.php

<?PHP
	if(empty($_SESSION['id'])) {
		Pages()->pageNotFound(); // Выводим страницу 404
	}

	tpl()
	->Start('sample')
	->Content(tpl()->Get('test/index'))
	->Show();

А также можно заменять данные в файле test/index.tpl на свои значения

<?PHP
	if(empty($_SESSION['id'])) {
		Pages()->pageNotFound(); // Выводим страницу 404
	}

	tpl()
	->Start('sample')
	->Content(tpl()->Get('test/index'))
	->Set([
		'{test}' => 'Hello, world!'
	])
	->Show();

В файле прописываем следующее

application/appearance/название шаблона/test/index.tpl

{grab('/elements/header.tpl')}

<div class="Body">
	<div class="Container">
		Мы заменили слово на {test}
	</div>
</div>

{grab('/elements/footer.tpl')}

Last updated