Несмотря на то, что в книге 291 страница, пугаться особо не стоит. Даже прочтение до 70той страницы дает основное представление о SQL, которое позволяет решать 80% задач. Прочтение до 101 страницы дает более глубокое знание и знакомит с более сложными конструкциями, такими как вложеные SELECT и прочее. Прочтение и понимание всей книги делает Вас достаточно серьезном специалистом в этой области :)
Файловая структура WebReborn CMS организована таким образом, что различные составляющие находяться в разных папках, такие как шаблон сайта, пользовательские файлы и ядро сайта.
Это позволяется настроить вид сайта практически любым образом, при этом при изменение страниц пользователем нету опасности повреждения файлов CMS. Таким образом это придает гибкость и надежность системе.
Вот некоторые из каталогов и файлов:
/admin/ - административная часть сайта. Скрипты в данной директории отвечают за отображение и управление сайтом администраторами.
/admin/ajax/ - ajax-скрипты административной части сайта. В некоторых частях административной части сайта используются ajax-скрипты, которые должны быть закрыты от обычных пользователей. Они храняться в данной папке.
/ajax/ - ajax-скрипты пользовательской части сайта. В некоторых частях сайта используются ajax-скрипты. Для более удобного доступа к ним они вынесены в отдельную папку. Для всех файлов в этой папке не применяет шаблон сайта и они возвращают только то, что непосредственно возвращает скрипт.
/cgi-bin/ - в этой папке хранятся perl-скрипты и прочие cgi-программы. Эта папка является cgi-bin каталогом Web-сервера. Используется крайне редко.
/ckeditor/ - папка визуального редактора, используемого в административной части сайта. Сайт разработчика - http://ckeditor.com/
/core/ - ядро CMS. В данной папке храняться основные скрипты и наборы функций и классов, которые требуются для правильного функционирования системы.
/core/admin_functions.php - файл, который содержащий функции, используемые в административной части сайта.
/core/config.php - файл настроек сайта. При установке нового сайта обязательно вносяться настройки, такие как логин, пароль и имя базы данных, домен и используемый шаблон для сайта.
/core/header.php - файл, который подключается перед контентной частью страницы. В нём подключаются все необходимые скрипты и классы.
/core/footer.php - файл, который подключается после контентной частью страницы. В нём идёт обработка различных переменых (например отложенных функция) и вывод шаблона сайта пользователю.
/core/functions.php - файл, который содержит различные функции, используемые в CMS и на страницах различных сайтов.
/core/urlrewrite.php - файл, содержащий настройки для ЧПУ.
/core/classes/ - классы используемые в CMS. Все .php файлы находящиеся в данной папке подключаются автоматически на каждой странице сайта.
/core/classes/db.php - класс для работы с базой данных.
/core/classes/user.php - класс для работы с пользователями.
/core/classes/main.php - класс для с различными настройка сайта и его страниц. Такими как meta-тэг keywords, description и установка title. Подключение файлов CSS-стилей, JS-скриптов и пр.
/css/ - папка содержащая файлы CSS-стилей.
/images/ - папка содержащая различные картинки, которую могут как использоваться в шаблонах сайта, так и в различных отдельных скриптах.
/js/ - папка содержащая JS-скрипты.
/kcaptcha/ - папка содержащая скрипт CAPTCHA.
/lang/ - папка, которая служит для мультиязычности сайта, содержит различные языки. Пока не используется. Функционал находится в разработке.
/templates/ - в данной папке находяться шаблоны сайта. Как для пользовательской части сайта, так и для административной (admin, admin_classic). И некоторые системные (empty, ajax).
/themes/ - в данной папке находится тема для jquery ui.
/upload/ - папка, в которую складываются файлы, которые пользователи и администраторы сайта заливают на сайт. Должна иметь права доступа 777 как сама, так и на все подпапки.
/upload/true_resize/ - папка, в которую сохраняются картинки, размер которых был автоматически изменен на требуемый, при помощи функции resize_url. Должна иметь права доступа 777.
/webstat/ - папка со статистикой сайта. Почти не используется.
Отложенные функции в шаблоне сайта
В шаблоне сайта используются отложенные функции, такие как:
#TITLE# - используется для замены основного заголовка страницы на требуемый заголовок для каждой страницы. Распологается между тегами <title></title>.
#META# - используется для подстановки различных мета данных, таких как keywords, description, а так же подключение файл CSS-стилей и JS-скриптов. Обычно располагается перед закрывающим тэгом </head>.