Joomla портал
seo seo Subscribe
seo
0
seo

Конечно, раз у нас будут подкатегории, то нужно

обеспечить перемещение страницы из одной категории в другую. Все эти функции

будут реализованы в панели управления сайтом.

Понятно, что у нашего сайта будет дизайн. Но дизайн — это штука не

постоянная. Сегодня он один, а завтра вам захочется чего-то новенького. Наша

задача — разделить PHP-код CMS и HTML-код дизайна сайта. Другими

словами, чтобы при изменении дизайна вам не пришлось редактировать CMS.

Лучший способ разделения PHP-кода и HTML-кода— это шаблоны. Мы не

будем использовать уже готовые шаблонизаторы вроде Smarty — они

сложны, тяжеловесны и не всегда надежно работают. Поэтому мы напишем свой

простенький шаблонизатор— он будет выполнять только те функции,

которые нам необходимы.

Если быть предельно точным, то мы уже спланировали почту всю CMS.

Наша пока еще не созданная CMS «умеет» выводить страницы сайта, управлять

ими и использует шаблоны для вывода этих самых страниц. Что ж, вполне

неплохо. Теперь подумаем о дополнительных функциях нашей системы.

От постраничного вывода нам никуда не деться. Рано или поздно каждый

раздел/подраздел вашего сайта разрастется так, что без постраничного

вывода ваш сайт будет неудобно читать.

Еще очень полезной является функция «Версия для печати», выводящая

страницу сайта без обрамляющего ее дизайна — так проще распечатать

страницу — ведь на принтер будет выведено только содержимое страницы и ничего

лишнего.

Крайне желательно, чтобы наша CMS для каждой страницы выводила

ссылки Вверх и Вниз — так проще перемещаться соответственно вверх и вниз по

странице. Назовем данную функцию GotoTop.

На всякий случай желательно реализовать функцию вывода содержимого

HTML-файла — она нам может понадобиться.

гпава 13. Функции и возможности будущей CMS. Разработка шаблонизатора 155

Додумаем, что еще нам будет нужно. На первой странице сайта, как правило,

размещают или информацию о компании, или новости. Новости можно ис-

кать и добавлять на сайт самостоятельно, а можно написать граббер

новостей, который будет получать новости с других сайтов. В главе 15 мы

рассмотрим пример RSS-граббера новостей, позволяющий получить новости с

RSS-ленты и вывести их в дизайне вашего сайта.

Вам нужна галерея, но места на хостинге мало? Тогда можете создать свою

галерею на LiveJournal, а наша CMS будет выводить ваши фотографии,

размещенные на LiveJournal, в дизайне сайта, что очень удобно. Тогда у вас на

сайте появится галерея, а физически фотографии будут размещены на

сервере LiveJournal.

Перечислим список дополнительных функций нашей CMS:

? функция «Версия для печати»;

? функция GotoTop;

? функция вывода содержимого HTML-файла;

? RSS-граббер новостей;

? интеграция с LiveJournal.

Пока мы не рассматриваем интеграцию с форумом, поскольку этому

посвящена вся следующая часть книги. В следующем разделе мы рассмотрим

схему нашей CMS.

13.3. «Принципиальная» схема CMS

Итак, наша CMS состоит из следующих частей:

? база данных — содержит все страницы нашего сайта и прочую

информацию;

? панель управления — управляет страницами нашего сайта, а именно

позволяет создавать новые страницы, редактировать и удалять уже

имеющиеся;

? движок — управляет показом страниц пользователю, навигацией по

сайту, реализует дополнительные функции CMS;

^ шаблонизатор — движок отправляет информацию шаблонизатору,

который выводит ее в соответствии с созданными дизайнером HTML-

шаблонами.

156

Часть IV. Разработка собственной CMS

На рис. 13.1 показана схема работы нашей CMS.

Рис. 13.1. Схема CMS

Как показано на схеме, двусторонний обмен данных может быть между:

? базой данных и панелью управления — понятно, ведь панель управления

позволяет просмотреть уже созданные страницы и отредактировать их, а

также создать/удалить страницы сайта;

? базой данных и движком сайта — движок получает информацию из базы

данных, передает ее шаблонизатору, а тот, в свою очередь, отправляет

сгенерированный HTML-код в браузер пользователя.

seo
5th Фев 2011
Теги:
seo

Написать ответ

seo
 
Все права защищены © 2023 Joomla портал
 
 
seo