Создаем CMS (систему управления контентом сайта) своими руками.

Без воды. Что хотим видеть на выходе?


  1. Базовая комплектация должна включать создание и администрирование статических страниц.
  2. Легкую расширяемость дополнительными модулями, такими как:
    • Регистрация/авторизация пользователей с правами доступа к различным элементам сайта
    • Блог
    • Форум
    • Фотогалерея
    • Социальная сеть
    • Интернет-магазин.



Какие средства будем использовать для этого?

Конфигурация:
  • Сервер php 5.2.17
  • Сервер MySQL 5.1.63
  • Сервер Apache 2.2.22
Технологии:
  • Мозг
  • Прямые руки
  • MVC (модель --> объект --> представление)
  • ООП (объектно-ореентированное программирование)
  • AJAX (асинхронные запросы к серверу для передачи/получения данных без обновления страницы)
  • Библиотеки классов, описанные здесь.
Шаблоны:
Шаблон будущего сайта:
Для шаблона админки CMS я буду использовать этот же шаблон, лишь слегка его подковыряю. Скажу лишь то, что код шаблона должен иметь примерно такой вид:

<?php include ('templates/default/blocks/header.php'); /*подключаем верхнюю часть сайта*/?>
<div class="razriv"></div>
<!----- центральная часть сайта ----->
<div class="center">
<!----- левый блок ----->
<div class="left">
<?php include ('templates/default/blocks/menuLeft.php'); /*подключаем левое меню навигации*/?>
<?php include ('templates/default/blocks/newsLeft.php'); /*подключаем новостной блок*/?>
</div>
<!----- конец левый блок ----->
<?php include ('templates/default/blocks/content.php'); /*подключаем основную часть страницы*/?>
</div>
<!----- конец центральная часть сайта ----->
</div>
<!----- конец дива контейнера (class="conteiner" начало искать в blocks/header.php) ----->
<div class="razriv"></div>
<?php include ('templates/default/blocks/footer.php'); /*подключаем нижнюю часть сайта*/?>

Части должны хранится в соответственных файлах. В следующем посте я опишу структуру каталогов и поподробнее затронем шаблон сайта.