Часть I. CMS Joomla!
3
Глава 1. Установка Joomla!
5
1.1. Краткая информация о Joomla! 5
1.1.1. Joomla! — бесплатная система 5
1.1.2. Происхождение Joomla! 6
1.1.3. CMS Joostina 7
1.2. Инсталляция Joomla! 7
Глава 2. Панель управления сайтом
14
2.1. Вход в панель управления 14
2.2. Управление шаблонами сайта 14
2.2.1. Выбор шаблона по умолчанию 14
2.2.2. Установка нового шаблона 16
2.2.3. Изменение шаблона 18
2.3. Разделы панели управления 19
2.4. Изменение общих настроек сайта 21
2.5. Управление контентом сайта 26
2.5.1. Разделы сайта 26
2.5.2. Категории 29
2.5.3. Материалы 32
2.6. Управление меню сайта 37
2.7. Управление главной страницей 39
2.8. Управление пользователями сайта 41
Глава 3. Расширения Joomla!
45
3.1. Компоненты, модули и мамботы 45
3.2. Установка расширений 46
3.2.1. Установка и удаление компонентов 46
Два способа установки 46
Связь компонента с меню 48
Удаление компонента 52
3.2.2. Установка и удаление модулей 52
3.2.3. Проблемы при установке расширений 52
3.3. Создание расширений 53
3.3.1. Разработка XML-шаблона 53
3.3.2. Работа с базой данных 57
3.3.3. Создание простого расширения 59
Глава 4. Разработка шаблонов для Joomla!
62
4.1. Где взять бесплатные шаблоны для Joomla! 62
4.2. Создание собственного шаблона 63
4.2.1. Позиционирование модулей 63
4.2.2. Создание структуры каталогов 64
4.2.3. Создание файла index.html 64
4.2.4. Создание index.php — главного файла шаблона 65
4.2.5. Создание XML-файла шаблона 68
Часть II. PHP-Nuke
71
Глава 5. Установка и базовая настройка PHP-Nuke
73
5.1. Немного о PHP-Nuke 73
5.2. Установка PHP-Nuke 76
5.3. Вывод дополнительной информации с помощью блоков 80
Глава 6. Установка дополнительных модулей и графических тем
84
6.1. Некоторые полезные модули для PHP-Nuke 84
6.2. Активизация модуля 87
6.3. Темы 89
Глава 7. Создание собственных модулей для PHP-Nuke
92
7.1. Простой модуль 92
7.2. Работа с базой данных 96
Глава 8. Проблема безопасности и защита PHP-Nuke
98
8.1. Безопасен ли PHP-Nuke? 98
8.2. Переименование файла admin.php 98
8.3. Защита файла администрирования от прямого обращения извне 99
8.4. Ограничение доступа к файлу администрирования средствами Web-сервера 99
8.5. Изменение префикса таблиц 103
Часть III. SLAED CMS
105
Глава 9. Описание и установка SLAED CMS
107
9.1. Знакомство со SLAED CMS 107
9.2. Установка SLAED CMS 108
9.3. Удаление окна с всплывающей рекламой 113
9.4. Защита SLAED CMS 113
9.4.1. Изменение имени файла admin.php 113
9.4.2. Нестандартный префикс таблиц SLAED CMS 114
9.4.3. Правильный выбор пароля 115
9.4.4. Будьте осторожны при установке дополнительных модулей 115
9.4.5. Вход в панель управления только с определенного IP 116
9.4.6. Не удаляйте файлы .htaccess 117
9.4.7. Регулярно создавайте резервные копии базы данных 117
Глава 10. Панель администрирования SLAED CMS
118
10.1. Возможности панели администрирования 118
10.2. Базовая настройка SLAED CMS 120
10.3. Дополнительные темы оформления 126
10.4. Управление контентом сайта 127
10.4.1. Создание списка вопросов и ответов 127
10.4.2. Каталог файлов. Статьи 129
10.4.3. Опросы 131
Глава 11. Полезные модули для SLAED CMS
133
11.1. Перечень модулей 133
11.2. Установка модулей 136
Глава 12. Создание собственных модулей
139
12.1. Совместимость модулей SLAED CSM и PHP-Nuke 139
12.2. Простой модуль 139
12.3. Активация модуля 142
12.4. Передача параметров модулю 143
12.5. Подробно об адаптации модулей PHP-Nuke 144
12.5.1. Код защиты модуля 144
12.5.2. Новый вызов файла конфигурации 145
12.5.3. Код доступа к базе данных 145
12.5.4. Вызовы OpenTable2() и CloseTable2() 146
12.5.5. Избавляемся от подключения mainfile.php 146
12.5.6. Ссылки на modules.php 147
12.5.7. Цветовые переменные 147
12.5.8. Переменная $nukeurl 147
Часть IV. Разработка собственной CMS
149
Глава 13. Функции и возможности будущей CMS. Разработка шаблонизатора
151
13.1. Зачем нужно разрабатывать собственную CMS 151
13.2. Вопросы планирования 153
13.3. "Принципиальная" схема CMS 155
13.4. Разработка шаблонизатора для CMS 157
Глава 14. Реализация основных функций CMS
162
14.1. Разработка TPL-шаблона 162
14.2. Файл настроек 163
14.3. Основной файл CMS — index.php 164
14.4. Проектирование базы данных 167
14.4.1. Таблица static 167
14.4.2. Таблица cats 168
14.4.3. Таблица pages 169
14.5. Иерархическая структура сайта. Создание иерархического меню 170
14.5.1. Алгоритм работы меню 170
14.5.2. Сценарий menu.php 173
14.5.3. Вывод содержимого раздела и страницы 179
14.6. Подведем итоги проделанной работы 184
Глава 15. Дополнительные функции CMS
185
15.1. Вывод информации из таблицы static 185
15.2. Постраничный вывод 186
15.3. Функция вывода содержимого HTML-файла 191
15.4. Версия для печати 192
Глава 16. Работа с RSS: получаем новости на сайт
194
16.1. Краткие сведения о RSS 194
16.2. Формат RSS-файла 195
16.3. Написание сценария импорта новостей 197
16.4. Подключение файла import.php к сайту 201
16.4.1. Интеграция с нашей CMS 201
16.4.2. Интеграция с произвольной CMS 202
16.5. Создание граббера новостей 203
Глава 17. Интеграция CMS с LiveJournal
207
17.1. Что такое "живой" журнал 207
17.2. Интеграция фотогалереи LiveJournal и сайта 209
17.3. Настройка внешнего вида галереи 213
Глава 18. Защита собственной CMS
215
18.1. Сайт в опасности 215
18.2. Два самых распространенных метода взлома 216
18.3. Межсайтовый скриптинг 217
18.4. SQL-инъекции 219
Часть V. Интеграция CMS с форумом phpBB
225
Глава 19. Базовая интеграция
227
19.1. Преимущества и недостатки интеграции с форумом 227
19.2. Разработка формы входа 228
19.3. Вывод последних сообщений форума на главной странице 230
19.4. Вывод онлайн-посетителей 234
19.5. Изменение названий полей 236
Глава 20. Разработка и интеграция панели администрирования CMS
240
20.1. Возможности панели управления 240
20.2. Создание HTML-редактора 240
20.3. Разработка модулей для панели администрирования phpBB 244
20.4. Модуль редактирования таблицы static 246
20.5. Домашнее задание 253
Глава 21. Изменение TPL-шаблонов phpBB
255
21.1. Основные TPL-шаблоны phpBB 255
21.2. Изменение дизайна форума 260
Глава 22. Фотогалерея за 20 минут
262
22.1. Установка фотоальбома Smartor 262
22.1.1. Правильная распаковка архива 262
22.1.2. SQL-запросы 262
22.1.3. Установка прав доступа 265
22.1.4. Редактирование файлов phpBB 266
22.1.5. Небольшой бонус от автора 268
22.2. Использование фотоальбома 269
Часть VI. Специальные движки
275
Глава 23. WordPress: создай свой блог
277
23.1. Что такое блог 277
23.2. Установка и использование WordPress 278
Глава 24. Wiki: создай свою энциклопедию
283
24.1. Вкратце о MediaWiki 283
24.2. Установка Вики 284
24.3. Настройка MediaWiki 290
24.3.1. Название сайта и его логотип 290
24.3.2. Параметры доступа к БД 291
24.3.3. Выбор языка MediaWiki 291
24.3.4. Изменение скина (графической темы) 292
24.3.5. Разрешение загрузки файлов на сайт 292
24.3.6. Управление правами доступа 292
24.4. Создание и редактирование страниц 296
24.5. Специальные страницы 299
Глава 25. Движок для интернет-магазина
301
25.1. Выбор движка 301
25.2. Сценарий Shop-Script FREE 303
25.3. Установка сценария 304
25.4. Использование сценария 305
Приложения 313
Приложение 1. Установка форума phpBB 315
Приложение 2. Права доступа в UNIX/Linux 317
Приложение 3. Основы SQL 320
П3.1. Немного истории 320
П3.2. Преимущества SQL 321
П3.3. Как выглядят запросы 322
П3.4. Что такое база данных 322
П3.5. Создание таблиц 324
П3.6. Добавление записей в таблицу 328
П3.7. Обновление записей 329
П3.8. Выборка записей 330
П3.9. Удаление записей 331
П3.10. Встроенные функции 332
П3.11. Группировка записей. Сложные запросы 333
Приложение 4. Программа phpMyAdmin 337
П4.1. Действия над таблицами 339
П4.2. Создание новой таблицы. Изменение структуры таблицы 339
П4.3. Вставка записей 342
П4.4. Обзор таблицы 342
П4.5. Выполнение произвольного SQL-кода 342
П4.6. Резервное копирование БД 343
Приложение 5. Описание компакт-диска 345
Предметный указатель 348