Системные требования PHP 5.1+ MySQL 5.0+ mod_rewrite mbstring gd Кодировка по-умолчанию UTF-8. Установка Получение файлов Файлы и дамп базы данных находится на SVN-сервере. Для получения локальной копии нужно: зайти по ssh (putty) на сервер, куда необходимо установить копию CMS перейти в папку домена выполнить команду svn co http://cleanmedia.ru/svn/trunk . (точка в конце обязательна) для выполнения команды необходимо будет ввести свой логин и пароль на SVNсервере Импорт базы данных Необходимо создать MySQL базу данных, затем зайти в нее с помощью phpmyadmin. Среди файлов, полученных через SVN, открыть /system/install/dump.sql Необходимо импортировать данный дамп с помощью phpmyadmin. Самый простой способ — скопировать содержимое дампа и вставить его во вкладке «SQL» phpmyadmin-а. Второй вариант — вкладка «Импорт» (кодировка дампа UTF-8). Настройка параметров доступа в базу данных После импорта дампа необходимо прописать параметры доступа в базу данных. Нужно создать файлы /application/configs/database.cfg.php и /admin/configs/database.cfg.php, скопировав в них содержимое из example.database.cfg.php и прописать нужный настройки (хост, пользователь, пароль и название базы данных). Установка прав доступа Установить права 777 на папку /files (chmod -R 777 files). После этого можно заходить на сайт и в панель управления, которая расположена по адресу http://site_name/admin.php Начальное знакомство Структура файлов Можно заметить, что структура файлов в /system/application аналогична /application/, а /system/admin /admin. По-умолчанию все системные файлы (контроллеры, модели, шаблоны и т. п.) расположены в директории /system (/system/application, /system/admin). Когда необходимо изменить какой либо системный файл на клиентской сайте, то нельзя этого делать в папке /system, т. к. в этом случае будет сложно следить за целостностью и обновлять CMS. Если необходимо изменить системный файл, то его нужно скопировать из /system в соответствующую папку в /application или /admin. Для контроллеров и моделей можно не заменять класс целиком, а дополнять его (исходный класс остается нетронутым и создается родительский класс, наследующий этот класс. Это будет описано в отдельной главе). Схема работы Система построена на основе паттерна MVC — т. е. контроллер отделен от бизнес-логики и логики представления. В качестве 4-го компонента можно выделить Router — он на основе URL определяет запрашиваемый контроллер и параметры. Роутер Все входящие обращения к сайту проходят через роутер — именно он узнает, какой контроллер и метод контроллера запрашивают. В таблице techcms_router после установки содержится стандартные роутинги. В ней есть 3 главных поля: url, action и rang. url — адрес запрашиваемой страницы. Для главной страницы принимает значение &front&. Для адресов с изменяемыми параметрами (например, /news/1, /news/10 — цифры 1 и 10 являются параметрами) url примет значение news/##, т. е. под это правило попадет любой из следующих запросов: news/10, news/Novost_1 (но не news/10/10) action — выполняемое действие. Принимает вид строки: controller_name/method_name/param_1/param_2/..../param_n. Реальный пример — content/view/news/10 — это означает, что будет вызван метод view контроллера content и ему в качестве параметров будут переданы news и 10 rang -уровень значимости роутинга. Если для одного URL будут подходить несколько роутингов, то будет выбран роутинг с максимальный рангом. Создание темы оформления После выполнения установки необходимо создать тему оформления для разрабатываемого сайта (по-умолчанию, в списке тем присутствует тема default. На существует только для демонстрации разметки темы и не несет никакого художественного смысла. Ее можно использовать при разработке новых модулей, если дизайн не важен). Сделать это можно следующим образом: создать папку с названием темы в /application/layoutes создать в этой папке файлы front.php и content.php. Первый файл — шаблон для главной страницы, второй — шаблон для внутренних страниц (шаблонов может быть сколько угодно много, но эти 2 обязательны) скопировать файл /system/application/configs/config.cfg.php в /application/configs заменить название темы в строке $conf['site_layoute'] = 'default'; (название темы — имя созданной папки) Систему разметки темы лучше всего смотреть на примере темы default — в ней приведены все возможности. Работа с шаблонами В CMS есть несколько групп шаблонов: шаблоны каталога, шаблоны для пользователя (профиль, регистрация и т. п.). Но основные 2 группы это: тип шаблона «list» - представление списка материалов (например, лента новостей или список вопросов в FAQ) тип шаблона «view» - представление для отдельного материала (конкретная новость или статья) После установки CMS базовые шаблоны уже будут расположены в директории /system/application/views. При работе над новым сайтом шаблоны будут размещаться в /application/views. Шаблоны в /system/application/views на пользовательских сайтов запрещается. Существует достаточно гибкая система формирования названия шаблона — от нее зависит для каких данных будет использован этот шаблон. Например, если создать шаблон view.php в /apllication/views/view, то внешний вид всех отдельных материалов (новости, статьи, FAQ и т. п., за исключением товарок каталога — для них свой шаблон) будет сформирован на основе этого шаблона. Если же шаблон назвать news_view.php, то он будет использован только при просмотре новостей. News — это название таблицы в БД, в которой хранятся новости. Аналогично с list — news_list.php. Можно задать шаблон для конкретного материала — например news_3_view.php — будет использован только для новости с id = 3. Существует еще несколько вариантов уточнения названия шаблонов, но в 99% случаев достаточно 2-х приведенных. Остальные варианты можно увидеть в файле /system/libraries/View.php.