Алгоритм работы системы

PROBEL — Система управления сайтом, цель которой состоит в простоте создания сайта и его поддержки. Чтобы создать сайт такого типа, как: сайт-визитку, новостной сайт, блог или динамичный лендинг, теперь не нужно знать язык программирования PHP или JAVASCRIPT. Благодаря простому шаблонизатору, а также интуитивно-понятной админ-панели, пользователю достаточно теперь знать только азы языков разметки (HTML и CSS), чтобы создать оригинальный сайт.

1. Админ панель

1.1. Главная страница

На главной странице имеется:

  • «Сайдбар» — разделы меню для навигации по системе.
  • «Поисковая панель» — поиск информации по системе.
  • «Контентная часть» — в контентной части будет отображаться содержимое разделов. На главном экране изображен «Блок приветствия» — это сводка информации о системе.
  • 1.2. Раздел «Записи»

    Раздел записи — это раздел, в котором можно добавить, удалить или отредактировать запись. Записи — это добавляемая информация на сайт, которая имеет краткий и полный вид. На главной странице или в категории будет отображаться краткая запись, а при открытии этой записи, нам отобразится вид полной записи. Такая концепция используется часто в блогах или в новостных сайтах. К примеру, есть название записи и его изображение, а чтобы прочесть полную запись, её нужно открыть.

    1.2.1 «Записи». Главная страница.

    На главной странице раздела «Записи» имеется:

  • 3 ссылки, ведущие на дочерние разделы: «Поля», «Категории» и «Создать запись»
  • Таблица, где отображены все записи.
  • В таблице находится информация о дате создания записи, о её названии, категории, авторе и о статусе записи. Кликнув по какой-либо записи, вы перейдёте в раздел редактирования этой записи.

    1.2.1.1 «Записи». Статус

    На главной странице записей, в таблице, есть раздел «Статус». Существует 2 типа статуса: «Активно» и «Не активно». Если запись создаёт пользователь, у которого нет прав на автоматическую публикацию записи, то она получает статус «Не активно». Эта запись находится в базе данных сайта, но она не отображается на главной странице сайта и в категориях. Активировать запись может любой другой пользователь, у которого есть на это права.

    1.2.1.2 «Записи». Пагинация

    Пагинация — постраничная навигация по записям. За вид пагинации отвечает файл pagination.php. Пагинация отображается после вывода всех записей, но в настройках системы вы можете изменить её положение. Пагинация появится только в том случае, если кол-во записей на странице превысит определённого кол-во. Стандарт указан в настройках, и равен он 10 записям. Его вы тоже можете изменить.

    1.2.2. «Записи». «Поля»

    В системе присутствует система полей. Пользователь сам выбирает, какие поля будут использованы при создании записей. На главной странице изображены все созданные поля. Пользователь сможет отредактировать созданные им поля или создать новые.

    1.2.2.1 «Записи». «Поля». Создание поля

    При создании нового поля, пользователю нужно будет указать лишь название поля, его переменную и тип поля. На данный момент существуют 3 типа поля:

  • Строка
  • Несколько строк (WYSIWYG)
  • Загрузка файлов
  • Чтобы использовать созданные вами поля, нужно указать нужные поля в разделе «Категории»

    После создания нового поля вы будете перенаправлены на страницу, где вас оповестят об успешном создании поля, а также вам будет показан пример использования тега в коде.

    1.2.2.2. «Записи». «Поля». Код

    При создании нового поля вам нужно будет указать переменную. Переменная — это слово на латинском языке, которое преобразовывается в тег и его нужно прописать в шаблоне записей. Тег имеет такой вид:

    {fd_переменная}

    То есть, если пользователь укажет переменную, допустим, «price», то в шаблоне записи нужно будет использовать такой тег:

    {fd_price}

    1.2.3. «Записи». «Категории»

    Созданные вами записи располагаются в выбранных вами категориях. Категории нужны для удобной фильтрации и сортировки записей. В этом разделе вы можете создать, удалить или изменить категорию.

    На главном экране раздела «Категории» вы можете перейти на страницу создания новой категории либо удалить или отредактировать существующую категорию. Категории на главном экране изображены в виде «дерева»: то есть родительские категории располагаются левее, дочерние правее.

    При создании новой категории пользователь должен указать:

  • Название категории
  • Родительскую категорию
  • Используемые поля
  • 1.2.3.1 «Записи». «Категории». Создание категории

    В блоке «Используемые поля» пользователь может либо удалить не нужные ему поля, либо при помощи «перетаскивания» (drag-drop) поменять порядок, в котором нужно будет заполнять поля при создании статьи. А в блоке «Добавить поле» пользователь сможет выбрать из выпадающего списка нужное ему поле и, с помощью кнопки «добавить», добавить его.

    Пользователь сам решает, какие поля нужны, а какие — нет.

    «Шаблон краткой и полной записи» нужен для отображения этих записей. Пользователь может создать для каждой категории свой шаблон, и эти категории будут отображаться по-своему. Например, краткий вид категории «финансы» будет иметь структуру: название, картинка, краткая запись; а вид категории под названием «спорт» будет иметь структуру: название и краткая запись. Таким образом, пользователь сам подстраивает под себя сайт.

    После создания или изменения категории, пользователю отобразится сообщение о успехе, а также список всех тегов, которых нужно будет использовать в шаблоне.

    1.2.4. Создание записей

    При создании записей пользователю нужно заполнить требуемые поля, которые он выбрал в разделе «Категории». После заполнения требуемых полей и нажатия на кнопку «Опубликовать», пользователь перенаправится на страницу успешного завершения создания записи.

    1.2.5 «Записи». Код

    Чтобы получить все записи, на нужной вам странице (как правило, это страница index.php) нужно прописать тег {entry}. Теперь на месте этого тега на сайте будут отображаться все записи.

    Шаблон записи состоит из двух файлов: shortentry.php и fullentry.php. Пользователь может сам создать свой шаблон вывода краткой и полной записи в разделе «Категории».

    Кол-во записей на странице, положение пагинации, кеширование и иные настройки вы можете изменить в разделе «Настройки системы» / «Статьи»

    1.2.5.1 «Записи». Код. Альтернативный вывод

    Кроме стандартного вывода всех записей при помощи тега {entry}, пользователь может выводить записи иным, более гибким способом. Альтернативный вывод будет иметь вот такой вид:

    
    {altentry id="1,2,5-8" cat="2,3,5-8" author="admin" days="5" template="default" access="global" pagination="off" from="1" limit="10" sort="date" order="desc" cache="yes"}
    

    где:

  • id — ID записи
  • cat — категория записи
  • author — авто записи
  • days — за какие последние дни отображать запись
  • template — шаблон записи
  • access — на каких страницах отображать записи
  • pagination — включение или отключение пагинации
  • form — с какой статьи начинается отображение
  • limit — кол-во отображаемых статей
  • sort — сортировка новостей (по дате, по кол-ву просмотров)
  • order — порядок сортировки (desc или asc)
  • cache — кеширование.
  • В свою очередь, access делится на:

  • global - во всех разделах
  • main - на главной странице
  • cat - при просмотре категории
  • showfull - при просмотре полной новости
  • search - при просмотре результатов поиска
  • Чтобы использовать несколько access, воспользуйтесь знаком «/». (cat/main/search)

    А sort делится на:

  • date - сортировка записей по дате
  • reads - сортировка новостей по количеству просмотров
  • title - сортировка новостей по алфавиту
  • rand - сортировка новостей в случайном порядке
  • Таким образом, чтобы, допустим, отобразить блок с пятью популярными новостями на сайте, нужно в нужном вам месте прописать код:

    {altentry template="popular.php" section="global" pagination="off" from="1" limit="5" sort="reads" order="desc" cache="yes"}

    1.3 «Контент»

    Контент — это какая-то информация на сайте, которая время от времени может меняться, и чтобы каждый раз не менять код сайта можно вывести какую-либо часть контента в систему. Это может быть какой-либо заголовок, картинка или какой-то текст.

    К примеру, у нас есть блок на сайте, в котором есть контакты нашей фирмы. В том случае, если у нас изменится либо телефон, либо адрес нашего офиса, мы может за пару минут изменить эту информацию на сайте.

    Существует 3 типов контента:

  • Строка
  • Несколько строк
  • Загрузка файлов
  • Группа
  • Строка представляет собой просто какой-либо небольшой отрывок текста или вовсе слово. Обычно строку используют для изменения какой-либо краткой информации на сайте. К примеру: адрес, телефон, заголовок и т.д.

    Несколько строк (WYSIWYG) — блок из нескольких строк с подключенным визуальным редактором. Его обычно используют для изменения какого-то крупного отрывка текста.

    Загрузка файлов нужна для хранения каких-либо файлов на сайте. С помощью этого контента очень легко хранить какие-либо изображения или документы.

    Группа. Здесь вы можете создать группу. Нужно будет только указать родительскую группу (если она нужна, описание и название.

    1.3.1 «Контент». Главная страница.

    На главной странице вы можете видеть все имеющиеся у вас контентные блоки, которые можно отредактировать, а также контентные группы, кнопку «Добавить» и «Сохранить».

    Контентный блок представляет собой прямоугольник, в котором есть название редактируемого контента, редактируемое поле и описание контента (если оно было). Так же у контентного блока имеются управляющие элементы — это стрелки вверх и вниз для перемещения блоков, кнопка для редактирования контентного блока и кнопка для его удаления.

    На главной странице вы можете произвести все правки, однако, чтобы сохранить все изменения, нужно нажать на соответствующую кнопку «Сохранить». Все изменения не сохраняются автоматически. Это сделано для оптимизации работы системы.

    1.3.2. «Контент». Группы

    На главной странице над всеми контентными блоками отображается раздел со всеми группами. Нажав на одну из групп, вы можете увидеть их дочерние группы, если такие существуют. Визуально это выглядит, как небольшие прямоугольники со скругленными углами.

    Также вы видите группы в списке всего контента. Визуально это выглядит так: родитель имеет вид прямоугольника с названием и описанием, а в нём уже будут располагаться контентные блоки. Создание группы происходит через кнопку «Создать».

    При создании контента, есть возможность поместить контент в группу. Это никаким образом не отобразится на кодовой составляющей, однако упростит сортировку и поиск полей по админ-панели. Максимальное кол-во родителей не может быть больше 3.

    1.3.3. «Контент». Создание контента

    Чтобы создать контент, пользователю нужно заполнить 5 полей:

  • Тип
  • Родительская группа
  • Название
  • Описание
  • Переменная
  • После заполнения требуемых полей и нажатия на кнопку «Создать», пользователь перенаправится на страницу успешного завершения создания контента.

    1.3.4. «Контент». Код

    При создании нового контента вам нужно будет указать переменную. Переменная — это слово на латинском языке, которое преобразовывается в тег и его нужно прописать в шаблоне записей. Тег имеет такой вид:

    {cnt_переменная}

    То есть, если пользователь укажет переменную, допустим, «header», то в шаблоне записи нужно будет использовать такой тег:

    {cnt_header}

    И на месте этого тега будет отображен текст, который был указан в разделе «Контент» К примеру, если нам нужно создать изменяемый логотип сайта, то мы можем создать поле «Загрузка файлов», указать у него переменную logo, а в шаблоне сайта прописать

    <img src=”{cnt_logo}”>

    Тогда через админ панель вы всегда сможете заменить логотип

    1.4 «Переключатели»

    Это еще один тип контента, который представляет собой переключатель с выбором: включить/выключить. Переключатели обычно используются для включения или отключения каких-либо блоков на сайте.

    Допустим, у вас есть блок «Отзывы», и по какой-то причине вам нужно этот блок отключить. Тогда вы можете воспользоваться переключателем и внести блок «Отзывы» в тег. Таком образом, когда переключатель активирован, тогда блок «Отзывы» есть, когда не активирован — блока нет.

    1.4.1 «Переключатели». Главная страница.

    На главной странице вы можете видеть все существующие переключатели, кнопку «Сохранить» и кнопку «Создать»

    1.4.2 «Переключатели». Создание.

    Создание переключателя не особо отличается от создания контента. Вам также нужно указать название переключателя, переменную и описание. Групп и типов у переключателей нет. После заполнения требуемых полей и нажатия на кнопку «Создать», пользователь перенаправится на страницу успешного завершения создания переключателя.

    1.4.3 «Переключатели». Код.

    При создании нового переключателя вам нужно будет указать переменную. Переменная — это слово на латинском языке, которое преобразовывается в тег и его нужно прописать в шаблоне записей. В переключателях 2 тега.

    Допустим, указав переменную «slider», мы можем использовать тег таким образом

    {tgl_slider}
    {/tgl_slider}

    , где в теге tlg_slder мы должны указать ту часть кода, которые мы будем включать или отключать.

    1.5 «Пользователи»

    В движке присутствует система пользователей и ролей. Ролям присваиваются привилегии или ограничения, а пользователи принимают роли. Вы можете сами создать нужный вам тип роли или выбрать уже из имеющихся.

    1.5.1 «Пользователи». Главная страница

    На главной странице вы можете видеть раздел «Роли», кнопку «Создать пользователя», а также таблицу со всеми пользователями.

    С помощью таблицы вы можете либо отредактировать пользователя, либо его удалить.

    1.5.2 «Пользователи». Роли

    Система ролей помогает просто расставить привилегии. К примеру, можно ограничить у одной роли, такой как «Пользователь», доступ к админ панели, а другой роли дать право публиковать записи без подтверждения.

    1.5.2.1 «Пользователи». Роли. Главная страница.

    На главной странице изображена таблица со всеми существующими ролями, а также кнопка «Создать роль».

    1.5.2.2 «Пользователи». Роли. Создание роли.

    Все существующие настройки ролей вы можете увидеть на скриншоте:

    1.5.3. «Пользователи». Создание пользователя.

    Создание пользователя — очень простой процесс. Нужно лишь указать его роль, Псевдоним (логин), пароль и email. После успешного создания пользователя, вас оповестят об этом соответствующим сообщением.

    1.6. «Настройки системы».

    Настройки системы содержат в себе 4 раздела:

  • Основные
  • Безопасность
  • Оптимизация
  • Файлы
  • Статьи
  • Настройки созданы исключительно для того, чтобы упростить работу с системой.

    1.6.1 «Настройки системы». Основные

    1.6.2 «Настройки системы». Безопасность

    1.6.3 «Настройки системы». Оптимизация

    1.6.3 «Настройки системы». Файлы

    1.6.4 «Настройки системы». Статьи

    2. Парный тег ограничения вывода «access»

    Парный тег «access» служит для того, чтобы выводить нужную вам информацию на определённых страницах. Допустим, если вам нужно вывести небольшой блок «Популярные новости» исключительно на главной странице, а, чтобы на страницах категорий или на страницах просмотра полной новости этот блок не появлялся, то для этого и существует тег access

    2.1 «Access». Код.

    Тег имеет парный тип и записывается таким образом:

    {access=”main”}Какой-то контент, который должен отображаться только на главной странице{/access}

    access имеет 5 возможных вариантов:

  • global - во всех разделах
  • main - на главной странице
  • cat - при просмотре категории
  • showfull - при просмотре полной новости
  • search - при просмотре результатов поиска
  • Чтобы использовать несколько разделрв, воспользуйтесь знаком «/».

    {access=”cat/main/search”}Контент{/access}

    2.2 «Access». «notaccess».

    Существует также полная противоположность тегу “access” — “notaccess”. Работает точно также, но наоборот: выводит контент везде, кроме заданных разделов.

    3. Парный тег ограничения вывода {cat}

    Парный тег «cat» служит для того, чтобы выводить нужную вам информацию в определённых категориях. Допустим, если вам нужно вывести небольшой блок «Новые новости» исключительно в пятой категории, а, чтобы на остальных страницах этот блок не появлялся, то для этого и существует тег cat

    3.1 «Cat». Код.

    Тег имеет парный тип и записывается таким образом:

    {cat=”1”}Какой-то контент, который должен отображаться только в категории №1{/cat}

    где «1» — это номер категории. Чтобы использовать несколько категорий, можно записывать их через запятую {cat=”1,5,8”}, а если вы хотите указать диапазон категорий, то вы можете воспользоваться дефисом {cat=”1-8”}

    3.2 «Cat». «nocat».

    Существует также полная противоположность тегу “cat” — “notcat”. Работает точно также, но наоборот: выводит контент везде, кроме заданных категорий

    4. Парный тег ограничения вывода {login} и {notlogin}

    Парный тег «login» и «notlogin» служит для того, чтобы выводить нужную вам информацию только для авторизованных пользователей или неавторизованных пользователей.

    4.1 «login» и «notlogin». Код.

    Тег имеет парный тип и записывается таким образом:

    {login}Какой-то контент, который должен отображаться только для авторизованных{/login}
    {notlogin}Контент, который отобразится для неавторизованных пользователей{/notlogin}
    Вернуться на сайт PROBEL