![]() |
![]() |
| http://kurepin.ru/php/24/plan/ |
|
Как обычно, не буду голословным — сайт станем создавать совершенно настоящий, параллельно написанию данного "курса". В качестве "подопытного кролика" я выбрал сайт, посвященный анонсам с других интернет-проектов. Да-да, это будет интернет-проект, на котором можно будет посмотреть последние (в суточно-часовом понимании этого слова) анонсы статей и событий со страниц российского интернета. Название для сайта я придумал соответствующее — ZAPAL.RU. Смысл слова "Запал" каждый может интерпретировать в меру своей привычки: для журналиста это может быть энергетическим запалом в новом расследовании, любитель боевиков и компьютерных игр может расценить это слово как олицетворение взрывного механизма — запала, для web-обывателя это станет эмоциональной зарядкой и стартом нового интернет-дня, ну а для начинающих программистов на PHP данное название пусть будет зарядом и стартом в большое программистское будущее. А в целом, смею надеяться на то, что каждый посетитель будет "западать" на сей проект всей душой (в смысле "я запал на этот сайт"). Вот такой он — Запал! Попробую описать свое видение сайта. Сайт zapal.ru пусть предстанет нам в виде вертикально расположенных горизонтальных новостных полос. Каждая полоса сможет нести графические элементы и текст, оформленные в отдельные блоки html-кода, заключенные в собственные тэги типа table. Пополнения Запала будут поступать из разных источников, и каждое новое добавление будет размещаться вверху, смещая вниз более зрелые новости и анонсы. Благодаря разнесению новостей в отдельные таблицы, мы обеспечиваем посетителю сайта последовательную загрузку информации — сверху вниз. Это удобно особенно для тех, кто будет посещать данный сайт по медленным линиям доступа в Интернет: можно читать наиболее свежие новости, пока подгружаются другие. Разумеется, у сайта должна быть графическая шапка, которую нам предстоит нарисовать. Кроме того, предлагаю создать не одну, а две шапки: первая будет стандартная — для тех, кто впервые попал на сайт или давно его не посещал, а вторая — лаконичная — для тех, кто уже "чувствует себя в Запале" и не нуждается в красоте и подробности оформления. В самом низу страниц будет строка копирайта. Теперь о способе размещения контента. Как я писал раньше, сайт будет рассчитан на создание неограниченного количества директорий и поддиректорий. Первоначально, предполагаю такое древо директорий (напомню, что все свои уроки по PHP я пишу "на лету" и любые постулаты и утверждения могут быть подвержены последующей корректировке и даже критике):
/site2.ru
/site4.ru
Т.е., каждый участник проекта "Запал" будет иметь возможность публиковать свои новости и анонсы, размещая их по системе: http://zapal.ru/урл_участника/название_новости/ с возможностью создания подгрупп. Например: http://zapal.ru/kurepin.ru/php/24/begin/ Надеюсь, система понятна. Такая URL-система принята, например, на сайте — можете убедиться. Реально, участник Запала будет предоставлять в качестве очередного анонса следующие данные: 1. Название; 2. Краткий текст (не более N символов) для главной страницы сайта; 3. Полный текст анонса; 4. Англоязычное слово для организации очередного URL или замещения существующего; 5. Картинки, если таковые требуется подгрузить на Запал. Все эти данные "внешний" пользователь будет подгружать через web-систему управления (backoffice), при помощи робота или "секретаря" — выслав обновление по e-mail. Разумеется, постепенно для участников проекта будут написаны всевозможные помощники и роботы, которые смогут сами посещать сайты участников проекта, чтобы обнаруживать новости и самостоятельно формировать обновления на Запале. Сами же участники получат возможность создавать стандартные формы постинга своих новостей и всевозможные "напоминатели". Будем предоставлять участникам статистику посещений их анонсов и т.п. В общем, данную идею можно долго "обсасывать", мы этого делать не станем. Скажу только, что в первую голову будем думать о посетителях, а не об участниках проекта, что вполне естественно. Перед началом технической реализации хочу заметить, что предлагаемая форма решения является не совсем стандартной для подобных задач. Может быть и не самая удобная для строителя и администратора сайта, но должна быть удобной для участника проекта и эффективная для посетителя (скорость загрузки, удобство URL-ов и т.п.). Ну что, можно приступать непосредственно к программированию? Да, можно. Все остальное поясню "по ходу", как только придумаю... |