Пошаговое руководство по сборке простого сайта, версия 1.0 (10.04.2007)

Прежде чем приступить к сборке сайта, необходимо установить Твайлайт CMS на Денвер или IIS, ознакомиться с сайтом-примером, попробовать управление сайтом через админзону.

Для этого обучающего примера мы взяли готовый дизайн с http://www.freecsstemplates.org/. HTML код и картинки для этого дизайна лежат в архиве Дизайн.zip. Вы можете нарисовать дизайн самостоятельно или найти его в Интернете.

Заготовка для нового сайта

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

Если система установлена на Денвер

Клонируем папку с уже установленным Твайлайтом в директории home Денвера. Можно использовать папку demosite. Переименуем папку из demosite в new. Теперь будем работать с ней. Папку zagotovka из архива Заготовка.zip кладем в home/new/www/Sites/. Нужно прописать в aliases.dat то, из какой папки Твайлайт будет брать данные для домена http://new. А брать их нужно из home/new/www/Sites/zagotovka. Для этого в home/new/www/aliases.dat

demosite::svetlova
заменяем на
new::zagotovka

Если система установлена под IIS Windows XP Pro

Папку zagotovka из архива Заготовка.zip кладем в папку C:\Inetpub\TwilightCMS\Sites. Новый сайт будем делать на домене http://new. Нужно прописать в aliases.dat то, из какой папки Твайлайт будет брать данные для домена http://new, для этого aliases.dat необходимо добавить строку

new::zagotovka

Все директории далее будут указаны относительно папки zagotovka. Для Денвера это X:\home\new\www\Sites\zagotovka, а для IIS это C:\Inetpub\TwilightCMS\Sites\zagotovka

Теперь http://new должен выдать сообщение о том, что домен успешно подключен. Проверьте его доступность в браузере. Если вы не увидели сообщения "Домен успешно подключен", то:
1. Прочтите инструкцию по установке для сайта demosite, скорее всего вы что-то пропустили.
2. http://www.twl.ru/faq и http://www.twl.ru/forum

Учтите, что в userlist.dat хранятся пока пароли с того сайта, который является шаблоном. Так как на сайте http://demosite/Admin пароль и логин был demosite, то и на http://new/Admin пароль для первого входа в админзону тоже будет demosite. Не забудьте поменять пароль перед тем, как выложить сайт на хостинг!

Таким образом, у нас есть сайт заготовка под новый домен http://new

Выделение управляемых блоков

Шаблон – это основа страницы, которая, как правило, является общей частью для нескольких страниц сайта и не может быть изменена администраторами и редакторами через админзону.

Разработчик при сборке выделяет из сайта:
  • шаблоны;
  • контентные зоны;
  • области, формируемые с помощью сервисов (новости, меню, галереи, баннеры).

  • Для простоты и изучения основ сборки у нас будет один шаблон для всех страниц сайта. Для более сложных сайтов система позволяет создать неограниченное число шаблонов.

    vid.JPG, 62 kB Готовый дизайн с freecsstemplates.org.

    Дизайн, который мы используем, содержит уже сверстанную HTML страницу. Если вы будете создавать свой дизайн, то перед сборкой необходимо сверстать HTML страницу. Необходимо выделить те блоки страницы, которые мы хотим сделать управляемыми. У нас это будет меню (на рис. 1 красный цвет), новости (зеленый цвет), контентный блок (синий цвет) и копирайты внизу страницы (желтый цвет). Ниже изучите код страницы с пояснениями. Мы должны выделить участки кода, отвечающие за те блоки, которыми мы планируем управлять.


    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <!-- Design by Free CSS Templates http://www.freecsstemplates.org -->
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
    <title>
    Учебный шаблон Twilight CMS
    </title>
    <meta name="Keywords" content="" />
    <meta name="Description" content="" />
    <link href="default.css" rel="stylesheet" type="text/css" />
    </head>
    <body>z
    <div id="header">
    <h1>Шаблон</h1>
    <h2>By
    <a href="http://www.freecsstemplates.org/">Free CSS Templates</a></h2>
    </div>
    <div style="clear: both;"> </div>
    <div id="content">
    <div>
    <img src="images/img4.jpg" alt="" />
    </div>
    <div id="colOne">



    <!-- Меню -->
    <div id="menu1">
    <ul>
    <li id="menu-01">
    <a href="#">Главная</a></li>
    <li id="menu-02">
    <a href="#">Новости</a></li>
    <li id="menu-03">
    <a href="#">Галерея</a></li>
    <li id="menu-04">
    <a href="#">Контакты</a></li>
    </ul>
    </div>
    <!-- Конец меню -->


    <!-- Новости на главной -->
    <div class="margin-news">
    <h2>Новости коротко</h2>
    <p>
    <strong>[06/09/2006]</strong>
    Короткое описание новости или сма новость.
    <a href="#">
    <strong>Подробнее…</strong></a>
    </p>
    <p>
    <strong>[06/06/2006]</strong>
    Короткое описание новости или сма новость.
    <a href="#">
    <strong>Подробнее…</strong></a>
    </p>
    </div>
    <!-- Конец новостей -->


    </div>



    <div id="colTwo">
    <!-- Некий контентный блок -->
    <h2>Twilight CMS</h2>
    <p>
    CMS — сontent management system, система управления сайтом — это удобный инструмент
    для быстрого создания и легкой поддержки вашего веб-сайта.
    </p>
    <p> «Твайлайт CMS» может работать движком персональных и корпоративных сайтов,
    интернет магазинов и каталогов, блогов и порталов. Как коробочный продукт она
    выпускается на CD и продается в магазинах СНГ и дальнего зарубежья.
    Система управления сайтом работает на любом Unix или NT хостинге,
    легко и без проблем ставится на Apache и IIS. Простота интерфейса
    позволяет осуществлять управление сайтом, не имея специальных навыков.
    Продуманность архитектуры системы дает возможность собрать работающий
    сайт, имея минимальные навыки веб-разработки, а управлять сайтом может
    любой пользователь.
    </p>
    <!-- Конец контентного блока -->
    </div>



    <div style="clear: both;"> </div>
    </div>


    <!-- Это копирайты -->
    <div id="footer">
    <p>
    Copyright © 2006 Sitename.com. Designed by
    <a href="http://www.freecsstemplates.org">
    <strong>Free CSS Templates</strong></a>
    </p>
    </div>
    <!-- Конец копирайтов -->

    </body>
    </html>

    Теперь у нас выделены блоки, которые мы хотим сделать управляемыми:

  • меню;
  • новости;
  • контентный блок;
  • копирайты.
  • Создание шаблона страниц для нового сайта

    Нужно взять HTML для сверстанного дизайна и поместить его в файл шаблона Templates/default.html. Теперь, набрав http://new, вы можете уже увидеть свой новый сайт (пока без картинок и без стилей в css).

    Картинки для нового сайта копируем в папку Images.

    Содержимое файла CSS от нового дизайна копируем в Templates/common.css

    Система будет обрабатывать стили только из файла, который задан в шаблоне, как это обычно делается в HTML, а вот для админзоны стили берутся только из common.css! Это сделано для того, что бы при редактировании контент-менеджер сразу видел, как будет выглядеть контентный блок (цвет фона, шрифт, оформление ссылок и т.д.)

    Теперь все пути до картинок мы должны заменить на

    $RealmURL$/Images/имя-файла.gif
    Для этого находим все выражения типа
    <img src=”
    и меняем, к примеру,
    src="images/img4.jpg"
    на
    src="$RealmURL$/Images/img4.jpg"

    Макроподстановка $RealmURL$ позволяет определять путь к компонентам сайта независимо от реального расположения сайта на диске сервера.

    В CSS по такой же логике меняем относительный путь url(img/Меню.JPG); на url($RealmURL$/Images/Меню.JPG); А так же в Templates/default.html

    <link href="default.css" rel="stylesheet" type="text/css" />
    меняем на
    <link href="/Sites/twl_ru/Cache/common.css" rel="stylesheet" type="text/css" />
    Теперь http://new корректно отображает наш исходный шаблон для нового сайта. А http://new/Admin отображает нашу админзону. На рис. 2 видно, что в админзоне есть пока только минимум функциональности для любого сайта. Приступаем к созданию управляемых блоков.

    Внешний вид админзоны сайта-заготовки.

    Создаем управляемое меню

    Для создания управляемого меню на Твайлайт CMS, нужно сделать 4 шага:
    1. Задать положение меню в шаблоне макроподстановкой $Menu$;
    2. Выделить в коде меню заголовок, повторяющийся элемент, разделитель и подвал HTML;
    3. Создать дизайн для меню в файле Templates/menu_design.xml;
    4. Наполнить меню через админзону.
    Любое меню (горизонтальное, вертикальное), с точки зрения нашей системы, можно разделить на 4 составляющие: заголовок (header), подвал (footer), повторяющийся элемент (item) и разделитель между элементами (delimiter).

    Генерация меню будет осуществляться в следующем порядке:

    Заголовок (параметр <header>)
    Пункт меню 1 опубликованный в админзоне(параметр <item>)
    Разделитель (параметр <delimiter>)
    Пункт меню 2 опубликованный в админзоне (параметр <item>)
    Разделитель (параметр <delimiter>)
    Пункт меню 3 опубликованный в админзоне (параметр <item>)
    Разделитель (параметр <delimiter>)
    ... ... ...
    ... ... ...
    ... ... ...
    Подвал (параметр <footer>)


    menu.JPG, 4 kB cod-menu.gif, 7 kB
    Меню на фронтзоне и его HTML код.

    Чтобы в определенном месте на страницах сайта появилось управляемое меню, макроподстановку $Menu[menuid: mainmenu; design: mainmenu_firstpage]$ нужно вставить в Templates/default.html вместо участка кода, выводящего меню. Ключ menuid: определяет идентификатор меню (листинг ниже) в Content/menu.xml, а design: – идентификатор дизайна в Templates/menu_design.xml (см. «Руководство разработчика», с.29).


    <folder assign="menu" description="" id="MainMenu" locked="" node-id="" published="" title="Меню сайта">
            <node-pointer assign="node-pointer" id="AE9D18AC939A4FC392A4C0720540D31C" node-id="1" published="yes"/>
    </folder>
    Участок menu.xml, в котором прописаны существующие пункты меню

    Чтобы меню отображалось на страницах сайта, нужно заполнить Templates/menu_design.xml. Берём приведенный ниже блок кода и вставляем его в Templates/menu_design.xml между тегами <control-document> и </control-document>. На рис. 3 выделены те блоки, которые мы используем для создания дизайна меню, приведенного ниже.


    <!-- Обратите внимание на id="mainmenu_firstpage". Макроподстановка $Menu[]$ будет искать именно этот id. -->
    <menudesign id="mainmenu_firstpage">
    <header>
    <![CDATA[
    <div id="menu1">
    <ul>
    ]]>
    </header>
    <delimiter>
    <![CDATA[
    <!-- Обратите внимание, что этот блок дизайна меню пуст, т.к. разделителя в нашем коде нет -->
    ]]>
    </delimiter>
    <footer>
    <![CDATA[
    </ul>
    </div>
    ]]>
    </footer>
    <item>
    <level id="menu-0001" number="1">
    <usual>
    <![CDATA[
    <li>
    <a href="/$PointProperty[Alias]$">$PointProperty[Title]$</a></li>
    ]]>
    </usual>
    <active>
    <![CDATA[
    <!-- Эта секция отвечает за то, как будет выглядеть активный пункт меню -->
    <li>
    <a style="background-color: #8A8A8A;color: #FFFFFF;" href="/$PointProperty[Alias]$">
    $PointProperty[Title]$
    </a>
    </li>
    ]]>
    </active>
    </level>
    </item>
    </menudesign>

    После того как мы вставили макроподстановку $Menu[menuid: mainmenu; design: mainmenu_firstpage]$ в Templates/default.html и определили дизайн в файле Templates/menu_design.xml, нам нужно создать несколько контентных страничек и опубликовать их в меню.

    a-menu.gif, 6 kB Пункты меню, добавленные в админзоне, появились на самом сайте.

    Активный пункт отобразился серым цветом, т.к. мы использовали style="background-color: #8A8A8A;color: #FFFFFF;" в секции <active> файла Templates/menu_design.xml. Управляемое меню готово.

    Последовательность действий при сборке меню не изменится даже если мы создаем меню более сложной структуры и дизайна. В абсолютно любом меню можно выделить 4 составляющие: заголовок (header), подвал (footer), повторяющийся элемент (item) и разделитель между элементами (delimiter). 4 блока. Таким образом, это деление, пожалуй, самое трудное во всем этом процессе.

    Создание управляемых контентных блоков


    <div id="colTwo">
    <!-- Некий контентный блок -->
    <h2>Twilight CMS</h2>
    <p>
    CMS — сontent management system, система управления сайтом — это удобный
    инструмент для быстрого создания и легкой поддержки вашего веб-сайта.
    </p>
    <p> «Твайлайт CMS» может работать движком персональных и корпоративных сайтов,
    интернет магазинов и каталогов, блогов и порталов. Как коробочный продукт она
    выпускается на CD и продается в магазинах СНГ и дальнего зарубежья.
    Система управления сайтом работает на любом Unix или NT хостинге,
    легко и без проблем ставится на Apache и IIS. Простота интерфейса
    позволяет осуществлять управление сайтом, не имея специальных навыков.
    Продуманность архитектуры системы дает возможность собрать работающий сайт,
    имея минимальные навыки веб-разработки, а управлять сайтом может любой пользователь.
    </p>
    <!-- Конец контентного блока -->
    </div>
    Этот код выводит нам область, обозначенную на рис.1 синим цветом. Заменяем приведенный участок HTML из шаблона Templates/default.html на

    <div id="colTwo">
    <!-- Некий контентный блок -->
    $Content$
    <!-- Конец контентного блока -->
    </div>

    $Content$ позволит управлять главной контентной зоной на странице (рис.1, синий контур) через админзону.

    Цвет фона редактора контентной зоны в админзоне определяется в файле Templates/common.css в разделе body {background:# }. В нашем случае цвет фона в css черный и цвет букв тоже черный (букв не будет видно в редакторе). А контентный блок серо-зеленый и нам нужно, что бы тот же цвет отображался в редакторе админзоны в качестве цвета фона. Но при этом мы должны сохранить исходный вид шаблона. Для этого мы в common.css для тега body устанавливаем background: #E9EAE2; (серо-зеленый), а внутри шаблона сайта Templates/default.html изменяем &lt;body> на &lt;body style="background: #000000;"> Таким образом, цвет для редактора контента стал серо зеленым, а для фона всего сайта черным.

    Теперь можно редактировать контент из админзоны на любой странице созданной на шаблоне default.

    cont.gif, 5 kB
    Отредактировали текст страницы через админзону.

    front-cont.gif, 3 kB
    Фронтзона - лицевая сторона сайта.

    Использование $ContentBlock[]$

    Вывод в нужном месте содержимого контентного блока. Контентный блок - это условное понятие, поскольку им может быть любая страница сайта, управляемая из раздела "Контентные страницы" админзоны. Как правило, так называются страницы, которые не показываются в браузере отдельно, а используются как часть других страниц. Например, контентным блоком может стать блок "контакты" в подвале сайта, блок "счетчики" и т.п.

    Создаем в админзоне страницу «Копирайты» в разделе «Различные блоки» с псевдонимом copyrights

    copy-alias.gif, 4 kB Для создания страницы введите её псевдоним.

    Редактор справа для страницы с алиасом copyrights переводим в режим HTML-редактора и помещаем туда HTML код копирайтов (выделен в коде шаблона) из шаблона. Блок копирайтов в Templates/default.html заменяем на $ContentBlock [copyrights]$.

    cod-copy.gif, 3 kB Вставили в редактор справа HTML код копирайтов.

    Таким образом, мы можем управлять через админзону блоком внизу страницы. Когда нам понадобится добавить счетчик рядом с копирайтами, то мы сможем сделать это через админзону.

    cod-count.gif, 20 kB Теперь можно добавлять счетчики через админзону.

    Использование сервиса новостной ленты

    Анонсы новостей на главной странице

    Для создания анонсов новостей на Твайлайт CMS, нужно сделать следующие шаги:
    1. Задать поля для редактора новостей в админзоне, указав их в Data/entities.xml;
    2. Добавить редактор новостей в админзону;
    3. Задать положение новостей в шаблоне макроподстановкой $News$;
    4. Выделить в коде новостного блока заголовок, тело новости, разделитель и подвал;
    5. Создать дизайн для анонсов новостей в файле Templates/news_design.xml.
    Сделаем вывод нескольких последних новостей на страницы на этом шаблоне.

    Шаг 1. Задать поля для редактора новостей в админзоне

    Чтобы в админзоне появилась возможность добавлять новости, нужно создать новую форму ввода для новостей. Вставим в файл Data/entities.xml между тегами <entities> и </entities> запись
    
    <entity id="news_item" name="Запись в блоге" admin-template="news_form_edit">
    		<field id="state" type="checkbox" name="Опубликована"/>
    		<field id="date" type="date" sortas="datetime[DD.MM.YYYY]" name="Дата"/>
    		<field id="caption" type="text" sortas="literal" name="Заголовок"/>
    		<field id="announce" type="text" sortas="literal" name="Анонс"/>
    		<field id="content" type="html" sortas="literal" name="Полный текст"/>
    </entity>
    $NOHTML_FINISH$
    C помощью этой конструкции мы определили типы и количество полей для редактирования новости.

    Шаг 2. Добавить редактор для новостей в Content/menu.xml

    Для этого вставляем в раздел <folder assign="special" description="" id="special20" node-id="" title="Справочники">.

    <link id="news_001" title="Новости">
    <url>
    </url>
    <admin-url editable="false">
        $ListEditor[table: news; entity: news_item]$
    </admin-url>
    </link>

    Теперь в админзоне в разделе «Справочники» появится список новостей, а из списка можно попасть в редактор для новостей с полями, описанными вами в enitities.xml

    enti.gif, 19 kB
    Редактор новостей с полями, определенными в entities.xml.

    Шаг 3. Задать положение новостей в шаблоне макроподстановкой $News$

    Теперь фрагмент HTML с новостями из Templates/default.html заменяем макроподстановкой $News[source: news; design: news_firstpage; count: 3]$ (готовые макроподстановки использованы с http://www.twl.ru/tsdn/?sid=catalog). Когда система обнаруживает в шаблоне или контентной части макроподстановку вида $News[source: news; design: news_firstpage; count: 3]$ она выбирает данные из файла Data/news.dat, в файле Templates/news_design.xml ищет дизайн с указанным id (<newsdesign id="news_firstpage">) и выводит вместо макроподстановки результирующий HTML. Этот HTML строится следующим образом:

    Заголовок (параметр <header>)
    Новость 1 (параметр <item>)
    Разделитель (параметр <delimiter>)
    Новость 2 (параметр <item>)
    Разделитель (параметр <delimiter>)
    ... ... ...
    ... ... ...
    ... ... ...
    Новость N (параметр <item>)
    Подвал (параметр <footer>)

    Таким образом, разработчику, с точки зрения оформления, нужно разделить новостную ленту на 4 части: заголовок ленты, подвал ленты, новость и разделитель, которые будут отрисовываться в цикле. Затем, нужно поместить их в файл news_design.xml как шаблон оформления.

    Шаг 4. Выделить в коде новостного блока заголовок, тело новости, разделитель и подвал

    news-short.JPG, 8 kB cod-news.gif, 8 kB
    Выделим 4 нужных блока из кода HTML отображающего новости.

    Шаг 5. Создать дизайн для анонсов новостей в файле Templates/news_design.xml

    Берём приведенный ниже блок кода и вставляем его в Templates/news_design.xml внутрь тега <control-document>

    
    <newsdesign id="news_firstpage">
    <header>
    <![CDATA[
              		
                        <!-- Новости на главной -->
                        <div class="margin-news">
                        <h2>Новости коротко</h2>
                        <p>
    
    ]]>
    </header>
    <delimiter>
    <![CDATA[   
                 
                        </p>
                        <p>
    
    ]]>
    </delimiter>
    <item>
    <![CDATA[
    			
                        <strong>$DateTime[datetime: $Attribute:date$;
                        format_in: "DD.MM.YYYY";
                        format_out: "DD MONTH_GENITIVE YYYY"]$.
                        $Attribute:caption$</strong>
                        $Attribute:announce$
                        <a href="/news/?nid=$Attribute:id$">
                        <strong>Подробнее…</strong>
                        </a>
                                              
    ]]>
    </item>
    <footer>
    <![CDATA[
    		
                        </p>
                        <A HREF="/news">архив новостей</A>
                        </div>
                        <!-- Конец новостей -->
    
    ]]>
    </footer>
    </newsdesign>
    
    $NOHTML_FINISH$

    Макроподстановка $DateTime$ описана на http://www.twl.ru/tsdn, как и все используемые макроподстановки системы. $Attribute:caption$ и $Attribute:announce$ возвращают из файла данных news.dat значения полей caption и announce.

    adm-to-news.gif, 9 kB Новости из справочника новостей отобразились на странице сайта.

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

    Для создания страницы новостей на Твайлайт CMS нужно сделать следующие шаги:
    1. Через админзону создать страницу для отображения новостей;
    2. Задать положение новостей в шаблоне макроподстановкой $News$;
    3. Прописать дизайн для новостей в Templates/news_design.xml.

    Шаг 1. Создать страницу для отображения новостей

    Через админзону создаем страницу с псевдонимом news, на которой будут выводиться новости

    news1.JPG, 27 kB Добавление страницы для отображения новостей.

    news-alias.JPG, 8 kB Задаем псевдоним.

    Шаг 2. Макроподстановка $News$

    В редакторе страницы справа для новостной страницы вставляем две строки. Логика работы этих макросов будет описана ниже.
     
    $News[source: news; design: news_archive; condition: $Empty[$IN_nid$]$]$
    $News[source: news; design: news_details; filter: id=$IN_nid$; condition: $NotEmpty[$IN_nid$]$]$
    
    

    Шаг 3. Прописать дизайн для новостей в Templates/news_design.xml

    Для работы этих макроподстановок сделаем два дизайна с идентификаторами news_archive и news_details, вставляем их в news_design.xml.

    <!-- Добавили дизайн для отображения анонсов новостей. Назвали этот дизайн news_archive -->
    <newsdesign id="news_archive">
    <header>
    <![CDATA[]]>
    </header>
    <delimiter/>
    <item>
    <![CDATA[
    <P>
    <B>
    $DateTime[datetime: $Attribute:date$;
    format_in: "DD.MM.YYYY";
    format_out: "DD MONTH_GENITIVE YYYY"]$.
    $Attribute:caption$</B>
    <BR>
    $Attribute:announce$<br>
    <A HREF="/news/?nid=$Attribute:id$"><b>подробнее</b></A>
    <P>

    ]]>
    </item>
    <footer>
    <![CDATA[
                    $PageNavigator$
    ]]>
    </footer>
    </newsdesign>



    <!-- Добавили дизайн для отображения полного текста новости. Назвали этот дизайн news_details -->
    <newsdesign id="news_details">
    <header>
    <![CDATA[]]>
    </header>
    <delimiter/>
    <item>
    <![CDATA[
    <B>
    $DateTime[datetime: $Attribute:date$;
    format_in: "DD.MM.YYYY";
    format_out: "DD MONTH_GENITIVE YYYY"]$. $Attribute:caption$</B>
    <P>
    $Attribute:content$
    ]]>
    </item>
    <footer>
    <![CDATA[
                    <A HREF="/news">архив новостей</A>
    ]]>
    </footer>
    </newsdesign>
    Приведенная выше комбинация двух макросов $News$, работает следующим образом.

    При обращении к странице с псевдонимом news Твайлайт обрабатывает первую макроподстановку $News[source: news; design: news_archive; condition: $Empty[$IN_nid$]$]$. Если выражение в ключе condition будет истинным (оно будет истинным, если в URL не будет задано значение параметра nid ), то данная подстановка:

    • возьмет данные из news.dat (на это указывает source: news);
    • возьмет дизайн для отрисовки из Templates/news_design.xml с id=”news_archive”.

    Если условие condition для первой макроподстановки не будет выполнено, то она ничего не выведет. Начнется обработка второй подстановки. $News[source: news; design: news_details; filter: id=$IN_nid$; condition: $NotEmpty[$IN_nid$]$]$ Если выражение в ключе condition будет истинным (оно будет истинным, если в URL страницы будет задано значения параметра nid=…), то данная подстановка:

    • возьмет данные из news.dat(на это указывает source: news);
    • возьмет дизайн для отрисовки из Templates/news_design.xml с id=”news_details”;
    • выведет одну новость с nid указанным в URL. (filter: id=$IN_nid$).

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

    Подробнее об использованных макроподстановках на http://www.twl.ru/tsdn

    Предустановленные переменные keywords, description, title для страницы

    В админзоне есть раздел «Предустановленные переменны». Здесь вы можете отредактировать переменные, например, для мета-тегов или других блоков на странице, которые удобнее редактировать из одного места.

    Контент-менеджер не может удалять и создавать новые предустановленные переменные.

    Вызов переменной осуществляется через $Variable[имя_переменной]$. В шаблоне Templates/default.html мы будем использовать 3 переменных, которые управляются через админзону. Змените в шаблоне содержимое метатегов и тега <title> также, как показано ниже.

    <title>
    $Variable[ptitle]$
    </title>
    <meta name="Keywords" content="$Variable[pkeyw]$" />
    <meta name="Description" content="$Variable[pdesc]$" />
    Редактировать значение этих переменных можно в админзоне

    p-key.gif, 14 kB Предустановленные переменные.