Порядок подключения файлов
В корне сайта и папках функциональных модулей (система учета /scif/, интернет-магазин /catalog/, личный кабинет /cabinet/ и т.д.) находится файл index.php, который инклюдит файл /includes/general.php, который в свою очередь инклюдит все остальные скрипты. Файл index.php может содержать также некоторые настройки.Ниже приводится порядок инклюда файлов скриптом /includes/general.php с кратким описанием функций подключаемых файлов.
| Функция или подключаемый скрипт | Описание |
| includes/config.php | считываем настройки сайта, начало замера времени выполнения скрипта |
| wn_settings.php | считываем пользовательские настройки, параметры подключения к базе данных |
| includes/antiddos.php | - антиДДОС-защита (в настройках сайта можно установить максимально разрешенную частоту обращений с к сайту с одного IP-адреса, при превышении данной частоты IP-адрес будет блокироваться. Используйте эту настройку для защиты от парсинга и сканирования спам-роботами. - в этом же скрипте производится проверка, является ли посетитель роботом поисковых систем. Для роботов "белых" поисковых систем устанавливается более высокая разрешенная частота обращений, чтобы не блокировать их обращения. Вы также далее по данному критерию (константа IS_BOT) ниже исключать вывода некоторых "тяжелых" участков кода для поисковых роботов (или выдавать им данные из кэша) с целью оптимизации быстродействия и нагрузка на сайт |
| includes/mysqli.php | подключаемся к базе данных. Параметры подключения, а также выбор библиотеки (mysqli или более старая mysql) определяются выше в файле wn_settings.php. Если в каком-либо из скриптом подключение к базе данных не требуется, установите в нем переменную $wn_connect=false |
| includes/aut.php | авторизация посетителя для доступа к функциям, требующих авторизации. Файл можно удалить, если авторизация на сайте не требуется |
| includes/functions.php | общие функции движка |
| include/WN_PATH_INCLUDES/functions.php | пользовательские функции |
| WN_PATH_INCLUDES.'acts/'.$act.'.php |
подключение основного скрипта, формирующего контент страницы. Скрипты размещены в папке /themes/theme_name/includes/acts/ для сайта или /module_name/includes/acts/ для дополнительных разделов. |
| WN_PATH_INCLUDES.'blocks/head.php | шапка страницы |
| WN_PATH_INCLUDES.'blocks/footer.php | подвал страницы |
Структура файлов и папок дистрибутива СКИФ
скачать STRUCTURE.md# Структура дистрибутива СКИФ
```text
+---admin # панель управления CMS
| | adminer.php # управление базой данной MySQL
| | dump.sql # дамп базы данных
| +---includes
| | aut.php # авторизация в панели управления
| | functions.php # функции для панели управления
| +---acts
| | admpasswd.php # смена серверного пароля
| | article.php # редактирование материала
| | articles.php # список материалов
| | articles_select.php
| | attach.php
| | blocks.php # редактирование блоков сайта
| | config.php # редактирование настроек
| | editor.php # редактор кода
| | frontpage.php # главная страница панели управления
| | ip_counter.php # статистика посещений
| | phpinfo.php # информация о сервере
| | profiling.php # профилирование кода для оптимизации
| | promo.php # редактирование промо-блоков (акции, новинки и т.п.)
| | search.php # статистика поисковых запросов
| | sitemap.php # генерация карты сайта для поисковых систем
| | uploads.php # загрузка файлов
| | user.php # редактирование пользователя
| | users.php # список пользователей
| +---blocks
| footer.php
| head.php
| topmenu.php # меню панели управления
+---antiddos
+---cabinet
| +---includes
| | aut.php
| | functions.php
| +---acts
| | docprint.php # печатная форма документа
| | frontpage.php # главная страница личного кабинета
| | map.php
| | profile.php # редактирование профиля пользователя
| | register.php # вход или регистрации нового пользователя
| | sendpass.php # восстановление пароля
| +---blocks
| footer.php
| head.php
| login.php # блок авторизации
+---cache # папка для хранения временных файлов, очищается автоматически из планировщика
+---catalog # интернет-магазин
| +---default
| | | functions.js # Javascript для каталога
| | +---includes
| | | aut.php
| | | functions.php # функции каталога (отправка заказа, вывод товаров и т.п.)
| | +---acts
| | | frontpage.php # главная страница интернет-магазина
| | | items.php # страница со списком товаров
| | | map.php # карта сайта
| | | order.php # страница оформления заказа
| | | product.php # страница товара
| | | property.php # страница со свойствами товара (производитель, бренд и др.)
| | | search.php # страница поиска
| | +---blocks
| | footer.php
| | head.php
+---cron # планировщик задач, выполняемых автоматически по расписанию
| auto_overpay.php # автоматическая обработки переплат по заказам (по умолчанию не активирована)
| catalog_update.php # пример обновления данных в каталоге (по умолчанию не используется)
| hourly.php # служебные задачи, чистка кэша, удаление старых сессий, задач и т.п.
| reminders.php # пример рассылки напоминаний
| sitemap.php # генерация карты сайта для поисковых систем
| sync.php # пример синхронизации данных с внешними системами (по умолчанию не используется)
+---files # папка для хранения загруженных пользователями файлов
+---img # папка для хранения изображений
| +---article
| +---scif1 # превью изображений (для списков)
| | +---spr_noms # изображения товаров
| | +---spr_noms_gr # изображения групп товаров
| | +---spr_values # изображения свойств товаров
| +---scif1_orig # большие изображения (для карточек)
| | +---spr_noms
| | +---spr_noms_gr
| | +---spr_values
+---includes # подключаемые функции и классы
| antiddos.php # защита от DDoS-атак
| config.php # конфигурационный файл, настройки движка
| cron_start.php # запуск планировщика задач
| functions.php # общие функции
| general.php # функции для фронтенда
| mysql.php # класс для работы с базой данных MySQL (устаревший)
| mysqli.php # класс для работы с базой данных MySQLi
+---js # папка для хранения JavaScript-файлов
| | cover.js # для вывода всплывающего изображения товара в учете
| | dtree.js # плагин для создания древовидного меню в справочниках
| | jquery-barcode.min.js # плагин для генерации штрих-кодов
| | jquery-ui-timepicker-addon.js # плагин для выбора времени в календаре
| | jquery-ui.min.js # библиотека jQuery UI
| | jquery.cookie.js # плагин для работы с cookies
| | jquery.min.js # библиотека jQuery
| | jquery.qrcode.min.js # плагин для генерации QR-кодов
| | jquery.ui.datepicker-ru.js # календарь
| | tablesorter.min.js # плагин для сортировки таблиц
| |
| +---css
| +---redmond
| | jquery-ui.css # стили для jQuery UI
+---kassa # платежные модули (интернет-эквайринг)
| proccessing.php # обработка платежей (вносим оплату в систему)
| qr.php # генерация QR-кода для оплаты
| result.php # прием уведомлений от платежных систем о статусе платежа
| tbank.php # модуль для приема платежей от ТБанка (другие модули назваются также по имени платежной системы)
+---libs # сторонние библиотеки
| +---fusioncharts # графики и диаграммы для отчетов
| +---PHPExcel # работа с Excel-файлами
| +---PHPMailer # отправка писем по электронной почте
| +---phpqrcode # генерация QR-кодов
| +---PHPWord # работа с Word-файлами
+---scif # система складского учета
| +---includes
| | +---acts # обработки
| | +---blocks # блоки (шапка, подвал, меню)
| | +---parts # части страниц (когда блоки используются разными страницами)
| | +---printforms # печатные формы
| | +---reports # отчеты
+---sessions # папка для хранения сессий пользователей интернет-магазина, очищается автоматически из планировщика
+---themes # темы оформления для сайта
| +---default
| | +---css
| | | bootstrap.css
| | | bootstrap.min.css
| | | magnific-popup.css
| | | style.css # стили для темы оформления
| | +---img
| | +---includes
| | | | aut.php # авторизация на сайте
| | | | functions.php # функции для сайта (вывод материалов и т.п.)
| | | +---acts
| | | | frontpage.php # главная страница сайта
| | | | map.php # карта сайта
| | | | search.php # страница поиска по сайту
| | | +---blocks
| | | footer.php # подвал сайта
| | | head.php # шапка сайта
+---tiny_mce # визуальный HTML-редактор для описаний
+---www_data # папка для хранения данных
```
