Шаблоны Joomla. Часть 1. (Что скрыто в свободно распространяемых шаблонах Joomla)
Уровень: Новичок Мысли ведущего рассылки. Здравствуйте, уважаемые подписчики. В этом выпуске мы начинаем практическое изучение CMS Joomla. Изучение будет происходить на примере создания нашего сайта CMS Joomla! для начинающих. Все вопросы и проблемы, которые возникали при создании сайта, будут освещаться в рассылке. На основе приобретенного опыта мы будем давать рекомендации, как лучше решать ту или иную задачу, возникающую при создании сайта, или как решать проблемы, с которыми мы столкнулись. Один из основных этапов создания сайта – разработка его дизайна. Во всех CMS дизайн сайта задается с помощью шаблонов. Если шаблоны разработаны профессионалами и в CMS существует продуманная схема их установки и смены, то пользователю управлять шаблонами так же просто, как изменять темы рабочего стола в операционной системе Windows. Итак, начинаем разбираться, как обстоят дела с шаблонами для CMS Joomla. Шаблоны – рациональная вещь. (Теория) В большинстве CMS информационное содержимое сайта отделено от визуального его представления (внешнего вида). Информация на сайте имеет определенную структуру и разбивается по разделам, например, О проекте, Статьи, Новости, Форум, Ссылки, Контакты и т.д. Создание и изменение структуры сайта происходит в панели управления CMS. Внешний вид сайта определяется с помощью шаблона. В состав большинства распространяемых CMS входит один или несколько готовых шаблонов. Шаблон описывает дизайн сайта. Администратор сайта из панели управления CMS может менять шаблоны как перчатки, если захочет. На информации, которая представлена на сайте, это не должно отражаться. Например, если на главной странице сайта представлен список разделов, панель регистрации пользователей, панель поиска, список последних новостей и т.д., то после смены шаблона перечисленные компоненты останутся на странице и их содержание не изменится, но изменится внешний вид (стиль, шрифт, цвет). Шаблоны бывают статическими и «резиновыми». В статическом шаблоне ширина страницы строго задана. Это большой недостаток статических шаблонов. Разработчик шаблона должен решить, какой будет ширина. Что при этом надо учитывать. Во-первых, какое разрешение экрана мониторов может быть у пользователей. У большинства - от 800(ширина) на 600(высота) точек до 1280х1024 точек. Если выбрать ширину 800 точек, то у пользователя с разрешением монитора 1280х1024 одна треть экрана будет пустой (не заполненной информацией). Если выбирать ширину больше 800 точек, то у пользователя с меньшим разрешением монитора страницы будут вылезать за экран, получается непрофессиональный дизайн. Почему же делают статические шаблоны? В первую очередь из-за того, что их разработка проще «резиновых». В «резиновом» шаблоне страница занимает по ширине все окно браузера. Если пользователь изменяет ширину окна при открытой странице, то шаблон подстраивается под новый размер окна. В дизайне шаблона может выделяться обилие графических компонентов. Такие шаблоны не эффективны по нескольким причинам. Пользователю на Вашем сайте нужна информация, а не Ваш логотип на полстраницы или орнамент вокруг текстовых компонентов. Обратите внимание на наиболее популярные ресурсы, которые Вы сами посещаете. У большинства из них стремление поместить максимум информации в видимой части страницы без прокрутки, в частности, на главной странице. Второй недостаток – графические компоненты долго грузятся. Если рисунок на странице появляется частями – это выглядит некрасиво. Мы не хотим сказать, что тот, кто так делает, ничего не понимает в дизайне. Нет. Дизайн должен соответствовать тематике сайта. Вот пример сайтаhttp://altritter.ru/, где подобный дизайн к месту. Дизайн, к примеру, корпоративного сайта должен быть другим. В таком дизайне и шаблонах делается упор на стилистическое оформление страницы с использованием CSS (каскадных таблиц стилей). Сразу скажем, что для Joomla шаблонов такого типа мы встретили значительно меньше, чем изобилующих графикой. Введение в шаблоны Joomla. Шаблон Joomla, точнее его каркас, состоит из нескольких частей, имеющих свои названия: верх(top), низ(bootom), правый(right), левый(left) и т.д. По терминологии Joomla - это позиции. В панели управления позиции обозначаются по-английски, поэтому мы в дальнейшем будем называть их так же. Чтобы посмотреть, какие позиции содержит текущий шаблон сайта под управлением Joomla, необходимо в браузере набрать адрес сайта со специальным запросом (http://www.mysite.ru/?tp=1). Пример запроса для нашего демо-сайта: http://joomdemo.efft.ru/?tp=1 В каждой позиции можно отображать один или несколько модулей. Как правило, в позициях right и left модули размещаются вертикально, а в позициях top и bootom – горизонтально, но бывают и исключения (шаблон madeyourweb из дистрибутива Joomla 1.0.12 RE, позиция top – в ней модули выводятся вертикально). Модули в Joomla отвечают за визуальное отображение всех функциональных элементов, присутствующих на странице сайта. В Joomla есть модули отображения меню, форм поиска по сайту, авторизации, голосования и т.д. Список установленных модулей можно посмотреть, выбрав в панели управления пункт меню Модули > Модули сайта. Модули, выводимые в одной позиции, имеют свой порядок, задаваемый номером. Изменяя настройки модуля в панели управления, легко можно модуль авторизации поменять местами с модулем главного меню или переместить их в правую часть страницы. Новую позицию или порядок модуля можно задать в окне редактирования модуля. Но не без нюансов! Для некоторых модулей такие манипуляции бесполезны. Пояснение будет ниже. Не бойтесь шаблонов… но помните: в них тоже бывают баги! Смотрим «шаблоны в подарок» на демо-сайте. Небольшое отступление. Демо-сайт расположен на хостинге RU-CENTER. Joomla там устанавливается автоматически, буквально, нажатием одной кнопки. 23 шаблона из представленных на сайте входят в состав дистрибутива Joomla, который устанавливается на хостинге. Но и это количество, как Вы скоро поймете, не такой уж большой выбор. Сейчас добавлен один дополнительный шаблон ck_business, его мы будем исследовать в дальнейшем. Все интересные шаблоны, которые мы будем находить, обязательно выложим на демо-сайте. Возвращаемся к теме. И так. Примеряем к сайту различные шаблоны и начинаем удивляться. Установили шаблон d4m_xmas4you и обнаружили, что позиция right в шаблоне отсутствует, а значит не видны привязанные к этой позиции модули, в нашем случае Опросы и Кто на сайте?. После изменения позиции модуля на left и перегрузки главной страницы, модуль Опросы стал виден. Но! При скроллинге страницы, когда заголовок формы «Опросы» уходит за экран, то при возвращении вверх страницы он прорисовывается через раз… (баг через раз происходит и проверено было на нескольких машинах, браузер IE) Увы, этот шаблон не для нас. Вносите следующего… хе-хе! Следующий шаблон rhuk_solarflare_ii. Установили. Главная страница выглядит вроде как надо. Стали щелкать пункты главного меню. Вот! На пункте Ча.Во. поймали баг. Содержательная часть страницы не помещается в центральную часть шаблона, ну не резиновый он… и на самом деле он не «резиновый»! Конец теста. Шаблон выносим… Еще ожидаемый момент: буржуйские шаблоны могут не переваривать русский. Пример шаблона mbt businessii free. В нем кодировка явно указана Западно-европейская, в других шаблонах кодировка берется из конфигурационных файлов. Однако на некоторых машинах русский текст может и корректно отображаться, причины пока не выясняли. Вообще, кодировка - тема отдельного разговора. Шаблон для нашего сайта. Для выбора шаблона мы просмотрели все доступные и остановили свой выбор на шаблоне vivacious13 . Главное, что в нем присутствуют все позиции для вывода нужных нам модулей. Шаблон выбран. Ура! Однако, ловля багов на это не закончилась. Мы захотели в нашем рабочем шаблоне переместить модуль поиска в позицию right. Изменили настройки в панели управления и смотрим результат… а модуль остался на месте. Кто глючит?! Проверяем себя: повторили несколько раз – результат такой-же. Погружаемся в сеть и ищем, сталкивался ли кто-нибудь с подобным. Конечно! Форум Русского дома Joomla, тема Модуль Авторизации не получается удалить: http://forum.joom.ru/index.php?topic=11132.0 Объяснение феномену простое: вывод модуля в шаблоне происходит не по схеме, описанной выше. Так разработчик захотел и никого не предупредил :) Как такое предугадать? Вы уже можете это сделать! Объясняем на примере. Заходите на демо-сайт. Выбираете шаблон vivacious13. Потом набираете в браузере http://joomdemo.efft.ru/?tp=1 Модули, которые связаны с позициями, стали невидимыми, а модуль поиска по сайту отображается! Обобщаем результаты эксперимента. Модули, видимые при просмотре в браузере позиций текущего шаблона, вызываются из шаблона особенным образом. Если таким модулем управлять с панели управления, например, попытаться изменить его положение или запретить отображение на сайте, то подобные действия не приведут к положительному результату. Для изменений необходимо редактировать код шаблона. Подводим итоги. Перечень "сюрпризов", с которыми Вы можете потенциально столкнуться в любом свободном шаблоне для Joomla: В шаблоне может отсутствовать предопределенная позиция, например, right. Результат: модули, которые выводятся в этой позиции, не будут видны на сайте. Вывод модуля в шаблоне может быть задан таким образом, что позицию этого модуля невозможно изменить с панели управления сайтом или невозможно запретить публикацию модуля на сайте. Содержательная часть страницы может не помещаться в центральную часть статического шаблона. Результат: при просмотре такой страницы шаблон разваливается. Шаблон может искажать русский текст, то есть выводить не в той кодировке.
Вывод. Любой шаблон, который хотите использовать на сайте, примерьте на всех его разделах! P.S. Чисто субъективный вывод: свободные шаблоны для Joomla – «клоака багов».
Тема следующего выпуска. Шаблоны Joomla. Часть 2. (Подгоняем шаблон под себя. Замена рисунков) Желаем успехов! Ведущий рассылки Леонид Мальков и "efft" Lab Просмотров: 71380
|