Документация для разработчиков
Темная тема

Файл описания шаблонов сайта .templates.php

Файл .templates.php определяет шаги Выбор группы шаблонов, Выбор шаблона и Установка шаблона в цепочке шагов мастера создания сайта. Если в папке мастера нет файла .templates.php, то шаги Выбор группы шаблонов, Выбор шаблона и Установка шаблона отсутствуют. Группа шаблонов предоставляет возможность сгруппировать шаблоны сайта, например, по тематике или компоновке (layout).

В файле .templates.php описываются шаблоны, находящиеся в поддиректории templates папки мастера. В поддиректории templates должны находиться папки шаблонов сайта. Данные (название, описание, скриншоты шаблонов сайта) для шага Выбор шаблона берутся из файлов (description.php, screen.gif и preview.gif), находящихся в папке шаблона.

Если в поддиректории templates есть шаблоны сайтов, а файл .templates.php отсутствует, то шаги Выбор шаблона и Установка шаблона все равно добавятся в цепочку шагов мастера создания сайта.

Структура типичного файла .templates.php такова:

<?
if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true) die();
$arWizardTemplates = Array(
	"GROUPS" => Array(
		"BUSINESS" => Array(
			"NAME" => GetMessage("TEMPLATE_GROUP_BUSINESS"), 
			"SITE_ID" => "homepage", 
			"SCREENSHOT" => "images/comp1.gif",
			"PREVIEW" => "images/comp1_prev.gif"
		),
		"COMPUTER" => Array(
            		"NAME" => "Компьютер", 
			"SITE_ID" => "homepage", 
			"SCREENSHOT" => "images/comp2.gif",
			"PREVIEW" => "images/comp2_prev.gif"
		),
		"BLOGS" => Array(
			"NAME" => "Блоги", 
			"SITE_ID" => "blog", 
			"SCREENSHOT" => "images/comp3.gif",
			"PREVIEW" => "images/comp3_prev.gif",
			"DEFAULT" => "Y",
		),
		"CARS" => Array(
			"NAME" => "Машины", 
			"SITE_ID" => Array("blog", "homepage"), 
			"SCREENSHOT" => "images/comp4.gif",
			"PREVIEW" => "images/comp4_prev.gif"
		),
	),
	"TEMPLATES" => Array(
		"template1" => Array(
			"GROUP_ID" => "BUSINESS",
			"INSTALL_STEPS" => Array(
				"SCRIPT" => "scripts/template1.php",
				"STEPS" => Array(
					"step100" => "Step100",
					"step200" => "Step200",
				)
			),
		),
		"template2" => Array(
			"GROUP_ID" => "BUSINESS",
		),
		"three_columns" => Array(
			"GROUP_ID" => Array("BLOGS", "BUSINESS", "CARS", "COMPUTER"),
			"DEFAULT" => "Y",
			"FILES" => Array(
				Array("FROM" => "files/three_columns", "TO" => "/"),
			),
			"SELECT_STEPS" => Array(
				"SCRIPT" => "three_columns.php",
				"STEPS" => Array(
					"templatestep" => "TemplateStep",
				)
			),
		),
		"two_columns" => Array(
			"GROUP_ID" => "COMPUTER",
		),
	),
);
?>
В файле .templates.php определяется массив $arWizardTemplates, имеющий следующие ключи:
  • "GROUPS" – значением этого ключа является массив групп шаблонов. Если этот ключ не определён, шаг Выбор группы шаблонов отсутствует в цепочке шагов мастера создания сайта. Массив групп шаблонов состоит из элементов следующего вида:
    "ID группы шаблона" => Array(
    	"NAME" => имя группы шаблона
    	"SITE_ID" => ID сайта (одиночное значение или массив)
    	"SCREENSHOT" => путь относительно папки мастера к картинке группы
    	"PREVIEW" => путь относительно папки мастера к уменьшенной копии картинки группы
    	"DEFAULT" => если равно "Y", то данная группа будет выбрана по умолчанию
    ),
  • "TEMPLATES" – значением этого ключа является массив шаблонов. Массив шаблонов состоит из элементов следующего вида:
    "ID шаблона" => Array(
    	"GROUP_ID" => ID группы, к которой принадлежит шаблон (одиночное значение или массив)
    	"SITE_ID" => ID сайта, к которому принадлежит шаблон (одиночное значение или массив)
    	"DEFAULT" => если параметр равен "Y", то данный шаблон будет
      выбран по умолчанию в шаге Выбор шаблона
    	"SORT" => индекс сортировки
    	"REWRITE" => если параметр равен "N", то выбранный шаблон не будет перезаписывать файлы 
      существующего в системе шаблона при совпадении идентификаторов;
      по умолчанию параметр равен "Y" (перезаписывать);
    	"SELECT_STEPS" => массив, описывающий дополнительные шаги после шага Выбор шаблона
    	Array(
    		"SCRIPT" => путь к файлу с классами шагов относительно папки мастера
    		"STEPS" => массив шагов, добавляемых в мастер
    		Array(
    			"ID шага 1" => "Имя класса шага 1",
    			"ID шага 2" => "Имя класса шага 2",
    			…
    		)
    	)
    ),
    	"INSTALL_STEPS" => массив, описывающий дополнительные шаги после шага Установка шаблона
    	Array(
    		"SCRIPT" => путь к файлу с классами относительно папки мастера,
    		"STEPS" => массив шагов, добавляемых в мастер
    		Array(
    			"ID шага 1" => "Имя класса шага 1",
    			"ID шага 2" => "Имя класса шага 2",
    			…
    		)
    	),
    	"FILES" => массив, описывающий файлы для копирования/удаления
    	Array(
    		Array(
    			"FROM" => путь к каталогу (файлу) относительно папки мастера, 
    			содержимое которого нужно скопировать,
    			"TO" => путь к файлу или папке относительно корня сайта,
    			куда будут скопированы файлы
    			"REWRITE" => перезаписывать ли существующие файлы; 
    			необязательный параметр, по умолчанию равен "Y" (перезаписывать),
    			"RECURSIVE" => копировать ли рекурсивно все подкаталоги и файлы, 
    			входящие в путь, указанный в параметре FROM;
    			необязательный параметр, по умолчанию равен "Y" (копировать рекурсивно),
    			"DELETE" => путь к папке (файлу), которую нужно удалить 
    		),
       		…
      	)
    ),


Пользовательские комментарии

Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Наверх