Внедрение модуля Joomla!
Внедрение модуля Joomla! проводится с помощью команд, встроенных в HTML код. Это могут быть и старые команды Joomla! 1.0.x или Mambo 4.5.x, или новые команды patTemplate. Класс patTemplate служит для дифференцирования PHP и HTML кода. Для интеграции в шаблон различных элементов, Joomla! использует объект типа jdoc. Если, вместо тега <title>, вы вставите в заголовок файла index.php следующую строку, в окне веб обозревателя при загрузке вашего сайта корректно отобразятся иконка сайта, заголовок страницы и символ источника новостей (Newsfeed symbol):
<head>
<jdoc:include type='head' />
</head>
Рис. 5: Иконка сайта и заголовок страницы
Если вы откроете исходный код этой страницы, то заметите, что Joomla! копировала все метаданные, введенные через панель администратора в HTML код. В дополнение к этому источники RSS также были интегрированы в страницу в виде тегов ссылок, отображаемых как символы источников новостей (Newsfeeds) в веб обозревателях, поддерживающих данную технологию (Firefox, Opera и т.д.).
Листинг 4: Метаданные Joomla!
<head>
<title>Joomla 1.5.0 – Home</title>
<meta name='generator' content='Joomla! 1.5' />
<meta name='description' content='Joomla! – the dynamic portal engine and content management system' />
<meta http-equiv='Content-Type' content='text/html; charset=utf-8' />
<meta name='robots' content='index, follow' />
<meta name='keywords' content='joomla, Joomla' />
<link href='http://localhost/Joomla150/feed.php?option=co
<link href='http://localhost/Joomla150/feed.php?option=co
<link href='favicon.ico' rel='shortcut ico' rel='shortcut icon' type='image/x-icon' />
</head>
Если данный фрагмент кода работает, можно перейти к другим важным объектам
Например, команда <jdoc:includetype='modules'name='top'style='-1' /> получает тип вставляемого объекта в качестве параметра (в данном случае это “modules”). Параметр “name” определяет положение модуля. (top, right, left, user1 и т.д.). Установить положение модуля можно также в административной части Joomla! (Extensions | Module Managers, категория Position). Список всех возможных позиций можно посмотреть в Extensions | Templates | Module Positions. Последний параметр “style” содержит значение, которое определяет тип HTML кода, передаваемый модулем. Например, значение –1 передает «чистый» HTML без использования контейнерных тегов <div>.
Параметр Отображение
1 Горизонтальное меню
-1 «Чистое» отображение без использования начального и замыкающего тегов <div>
-2 Отображение в виде XHTML
-3 форматирования круглых углов
Описание возможных вставок в
Листинг 5:index.php сjdoc вставками
<html>
<head>
<jdoc:include type='head' />
<link rel='stylesheet' href='templates
<link rel='stylesheet' href='templates/{TEMPLATE}/css/template.css' type='text/css' />
</head>
<body bgcolor='#FFFFFF' text='#000000'>
<table width='780' border='1'>
<!– Section 1 –>
<tr>
<!– Part 1 –>
<td colspan='2' height='89' bgcolor='#F5C228'> </td>
<!– Part 2 –>
<!– Section 3 –>
<tr bgcolor='#FFCC33'>
<!– Part 7 –>
<td colspan='3' height='40'>
<jdoc:include type='modules' name='footer' style='-1' />
</td>
</tr>
</table>
</body>
</html>
Если вы загрузите ваш сайт в веб обозревателе теперь, то увидите что благодаря изменениям, внесенным нами в HTML код, сайт наполнился динамическим контентом.
Конечно, до визуального совершенства еще далеко, но сайт уже работает: