CONTENT MANAGEMENT SYSTEM
Blox Logo
Blox CMS — блочный метод сайтостроения
.
 
Blox Help

←→

Главный шаблон

В главном шаблоне BLOX/templates/main.tpl собраны все разделы документа, находящиеся за пределами элемента body:
<!DOCTYPE Объявление типа документа>
<html>
    <head>
        Информация о текущем документе
    </head>
    <body>
        ...
        ...
        ...
    </body> 
</html>
Главный шаблон обычно не редактируется. Любые изменения в главном шаблоне отразятся на всех страницах. Если вам необходимо внести какие-то измения в раздел <head> отдельных страниц, применяйте метод Router::addToHead().

XHTML

XHTML — это расширенный язык разметки гипертекста (Extensible Hypertext Markup Language). Отличия переходного (transitional) XHTML от HTML незначительны и предназначены лишь для приведения его в соответствие с XML. Для того, чтобы объявить тип документа как XHTML, нужно в главном шаблоне вместо <html> и всего, что выше него (пролог), написать следующее:

<?xml version='1.0' encoding='ru' ?>
<!DOCTYPE html PUBLIC
    '-//W3C//DTD XHTML 1.0 Transitional//EN'
    'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'
>
<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='ru' lang='ru'>
Однако, в таком виде код желательно не использовать. Во-первых, в первой строке используется комбинация <?...?> для объявления документа XML. Однако, при разрешенной короткой форме записи открывающих тегов PHP, эта комбинация будет интерпретирована как php-код, поэтому ее будем выводить средствами PHP (см. ниже синий код). Во-вторых, в коде упоминается русский язык (ru), но лучше использовать язык, указанный в файле конфигурации, и выводить его с помощью переменной $terms['lang']. С учетом этих замечаний код должен выглядеть так:
<?php echo "
    <?xml version='1.0' encoding='{$terms['lang']}' ?>
    <!DOCTYPE html PUBLIC
        '-//W3C//DTD XHTML 1.0 Transitional//EN'
        'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'
    >
    <html
        xmlns='http://www.w3.org/1999/xhtml'
        xml:lang='{$terms['lang']}'
        lang='{$terms['lang']}'
    >
?>


Кроме главного шаблона, при написании шаблонов блоков необходимо следовать следующим правилам:
  • Все элементы должны быть закрыты:
    <p>...</p> вместо <p>
  • Теги, которые не имеют закрывающего тега, должны иметь на конце пробел и слеш, например:
    <br /> вместо <br>
  • Имена тегов должны быть записаны в нижнем регистре, например:
    <h1>...</h1> вместо <H1>...</H1>
  • Имена атрибутов должны быть записаны в нижнем регистре, например:
    <td bordercolor="red">...</td> вместо
    <td borderСolor="red">...</td>
  • Значения атрибутов должны быть записаны в кавычках, например:
    <td colspan="2"> вместо
    <td colSpan=2>
  • Атрибутам без значения необходимо присвоить значения, например:
    <td nowrap="nowrap">...</td> вместо
    <td nowrap>...</td>
  • Везде, даже в URL, вместо знаков < и & нужно применять их мнемонические коды:
    &lt; вместо < (less than)
    &amp; вместо & (ampersand)

Исчерпывающую информацию о XHTML можно узнать на официальном сайте W3C.