Мы будем Вам признательны, если Вы поддержите проект Open SLAED и используя Ваши возможности, разместите наш пресс-релиз на страницах своих сайтов, проектов, форумов, блогов. Текст пресс-релиза, возможно, видоизменить под Ваш формат, не искажая смысл. Пресс-релиз можно взять на данной странице.
Всё сделано сналёта - уверен что есть ошибки.
Переделывать под картинки 16x16 не долго, но лениво. Поэтому накидал несколько картинок 16x19 в папку ./images/tree соответствующих ./images/blocks 16x16 (были готовые). Но можно использовать этот блок как шаблон для написания своих. Дерево сохраняет в куках состояние узлов (открыто/закрыто) и при переотрисовке дерево не меняет конфигурацию.
Можно и поучавствовать в доработке...
Использован класс xTree
Построение дерева ведётся в стиле VB
Блок администратора, версия 1.3
===============================
Позволяет администратору быстро переходить к наиболее используемым разделам админпанели, что ускоряет обновление сайта.
Выдает статистику по кол-ву поступивших в публикацию новостей, файлов, сайтов, вопросов, а также о недоступных файлах и ссылках.
Функция наблюдения позволит админам видеть, кто из них на сайте, где, какой IP и многое другое.
Новое в версии 1.3
===============================
1. Функция наблюдения (см. описание выше)
2. Новый пункт 'Загрузить файл' - поможет быстро перейти на страницу загрузки файлов (картинок)
3. Возмижность настраивать конфигурацию блока (в коде самого блока)
4. Возможность отключать ненужные или не используемые пункты из конфига
5. Немного переписан и оптимизирован код блока (7 запросов в базу)
И еще много мелких исправлений и дополнений...
Установка
===============================
1. Скопировать block-Admin.php в корень сайта в папку blocks.
2. Обязательно прочитать файл Lang-files.txt для установки языков.
3. Зайти в админку => Блоки и баннеры => Добавить новый блок и выбрать из списка блок Admin.
4. Не забудьте сделать его видимым только для админов.
5. Пользоваться :)
Создатели
==============================
Идея и воплащение: AntDima (antdima@mail.ru)
Тестирование: Lustrik (madlustrik@mail.ru)
А также спасибо за помощь: Serg_pnz (print58@yandex.ru)
Поддержка данного блока проходит на форуме в топике http://www.slaed.net/forum/index.php?showtopic=5258
Блок для быстрого вызова наиболее частых функций админки. К примеру: Добавить файл, Добавить новость, Новых файлов, Недоступных файлов и т.п.
Новое в версии 1.1:
-Новые пункты: "Добавить новость", "Новых новостей".
-Использование языковых файлов (Русский, Английский, Немецкий).
-Полностью переписан код блока.
-Измененны позиции некоторых пунктов.
-Все пункты собранны в одну таблицу.
-Изменена ширина тега для нормального отображения в Опере.
Установка:
1. Скопировать block-Admin.php в корень сайта в папку blocks
2. Зайти в админку => Блоки и баннеры => Добавить новый блок => и выбрать из списка блок Admin
3. Не забудьте сделать его видимым только для админов.
Обсуждение происходит на форуме Slaed.Net
http://www.slaed.net/forum/index.php?showtopic=4642
Очень простой блок Топ пользователей. Переделан из Топа Новостей. Для работы блока в системе должны быть установлены группы, а так же назначены пункты за действия на сайте.
Инструкция:
1. Залить блок в ../blocks/
2. В админке >> Группы >> Добавить новую группу пользователей >> Система пунктов
Блок мини чата. Установка:
1. Выложите все файлы в корень вашего сайта.
2. На файл /blocks/chat.txt поставьте CHMOD 666.
3. Идите в Админ. Панель и инсталируйте блок.
После появления в SLAED CMS 1.4 Meteora возможности прикреплять к блоку определенный модуль, где он будет показываться, мне пришло в голову, что было бы неплохо иметь свой собственный центральный блок для модуля Files. Блок просто показывает список новых и популярных файлов.
Кидаем файл в blocks/, в админке ставим блоку галочку напротив "Files". И теперь посетители сайта легко узнают о новых и оценят популярные файлы вашего сайта. Количество позиций настраивается в самомо файле блока.
Идея состоит в том, чтобы дать пользователю полную свободу действий при формировании темы оформления системы. Обычно управление формирование внешнего вида сайта ложится на систему, сама тема оформления влияет на этот процесс лишь косвенно, то есть она пассивна. Мы уже делали шаги в сторону интерактивности тем оформления вставляя переменные в HTML код и обрабатывая их, но тем не менее заставить тему управлять сайтом было невозможно. Кроме того, оформление сайта разбросанное по отдельным файлам не позволяло выстроить общей картины и затрудняло разработку тем. Даже человеку знакомому с HTML достаточно сложно, было, нарезать готовый HTML шаблон на куски.
Продолжая в том же духе, уместно будет сказать о том, что внешний вид сайта очень сильно зависит от разработчиков системы, другими словами существуют жестко вшитые куски, которые достаточно сложно менять или перемещать, чтобы изменить некоторые из них нужно править саму систему, что прямо скажем не всем и не всегда удобно. Для примера можно назвать такие вещи как табличная структура, модуль, лицензия, генерация страниц, левые правые верхние нижние блоки, а также банеры.
Другими словами задача стояла такая
1. Создать симбиоз ядра системы и темы оформления, когда не только ядро жестко задает правила поведения и отображения элементов системы, но и тема активно управляет видимостью и управлением элементов.
2. Позволить дизайнеру воплощать любые дизайнерские идеи без оглядки на ядро. То есть, хочет чтобы, верхние блоки отображались слева, правые и левые блоки были расположены вместе справа - нет проблем.
3. Не тормозить продвинутых пользователей в реализации различных способов форматирования текста, таких как HTML - различных версий. XHTML и даже XML, то есть наиболее полно реализовать CMS, так как CMS - это система управления контентом, а вот отображение этого контента может быть любым.
4. Решив задачу 2 и 3 увести систему от табличного дизайна и подготовить к отображению на различных устройствах, таких как мобильных, наладонных и так далее...
5. Жестко разграничить понятия оформление и данные.
Итог
Выполнив все поставленные задачи, мы можем смело сказать, что система не будет тянуть пользователей назад, даже тогда когда все дружно решат перейти на DIV, никаких изменений в движке не потребуется нужно будет только поправить дизайн.
Реализация и как всё работает
В пользовательской теме оформления должен присутствовать файл index.html. Это обычный HTML файл, предназначенный для формирования внешнего вида системы. Соответственно надобность в файлах: header.html, footer-close.html и footer-open.html отпадает.
Синтаксис, простейший файл оформления будет иметь вид:
Естественно, верстальщик и дизайнер могут наполнить его любым HTML оформлением и применить все возможные и известные приемы верстки. Как мы видим, табличная структура отсутствует, и мы можем все построить на дивах (DIV) или переписать код в XHTML.
В данном случае и в целом все понятно, просто и наглядно. Остается только объяснить какие переменные вида {%XXXX%} за что отвечают. Расставить эти переменные естественно можно по всему файлу, в каком угодно порядке.
{%HEAD%} - Стандартное формирование шапки - меты и титлы, а также содержание, которое присутствует в системе по умолчанию.
{%MODULE%} - Нарезка для модуля, который должна подставить система.
{%LICENSE%} - Копирайты системы.
{%BLOCKS banner%} или {%BLOCKS b%} - Верхний банер.
{%BLOCKS left%} или {%BLOCKS l%} - Левые блоки.
{%BLOCKS center%} или {%BLOCKS c%} - Верхние блоки.
{%BLOCKS down%} или {%BLOCKS d%} - Нижние блоки.
{%BLOCKS right%} или {%BLOCKS r%} - Правые блоки.
{%BLOCKS foot%} или {%BLOCKS f%} - Нижний банер.
{%BLOCKS time%} или {%BLOCKS t%} – Время генерации страницы.
{%BLOCKS none,ХХХ%} или {%BLOCKS n,ХХХ%} - Произвольный блок системы или свободный блок без оформления, где ХХХ - это либо ID блока, либо название файла блока.
{%BLOCKS standart,ХХХ%} или {%BLOCKS s,ХХХ%} - Произвольный блок системы или свободный блок с оформлением свободного блока, где ХХХ - это либо ID блока, либо название файла блока.
{%BLOCKS message%} или {%BLOCKS m%} – Сообщение на главной странице.
{%BLOCKS variables%} – Анализатор переменных.
{%BLOCKS query%} – Анализатор запросов в базу данных.
Новая система оформления тем будет доступна, начиная с версии SLAED CMS 2 Pro.
Чтобы создать собственный блок для сайта, построенного с использованием SLAED, достаточно простейших знаний HTML и PHP, а также соблюдение их синтаксиса. Кроме этого потребуется правильная постановка задачи и внимательность. В данной статье мы рассмотрим варианты ручного создания файловых блоков. В качестве примера ниже приведены коды, созданные для использования на всех версиях системы SLAED.
Для начала необходимо создать файл в директории блоков blocks/ Для того, что бы система идентифицировала данный файл как файловый блок, название файла должно быть такого типа: block-ваше_название.php В самом файле, для вывода информации необходимо использовать переменную $content за место стандартных методов echo или print, это единственная отличительная особенность которую нужно учитывать. Всё остальное реализуется при помощи стандартных методов и функций PHP и HTML. При реализации блоков учитывайте, любой PHP код должен начинаться c <?php и заканчиваться ?>
Ниже мы рассмотрим варианты реализации блоков на примерах реализованных в коде, с комментариями участков.
Пример 1
Пример 2
В примерах ниже мы рассмотрим варианты вывода информации в блок из других файлов.
Для работоспособности примеров:
1. Создаём файл demo.txt в директории blocks/ Директория значения не имеет, файл может находиться на другом сайте. Важно указать точный путь к файлу!
2. В файле напишите произвольный текст на своё усмотрение. Содержание данного файла может быть любым.
В качестве содержание файла demo.txt предлагаю использовать изначальный текст:
Пример 3
Пример 4
После того как файловый блок создан и находится в директории blocks/ необходимо добавить и активировать его в панели администратора системы, в отделе блоков: Панель администратора >> Блоки и баннеры >> Добавить новый блок
Заголовок – Указываем название для блока
Ссылка на канал RSS – Оставляем пустым
Время обновления – Оставляем как есть
Имя файла – Выбираем созданный файловый блок
Содержание – Оставляем пустым
Позиция – Выбираем на своё усмотрение
Отображать блок в модулях - Выбираем на своё усмотрение
Язык - Выбираем на своё усмотрение
Активировать? – Да
Время работы, в днях – 0 без ограничений
После истечения – Если без ограничений, оставляем как есть
Кто это будет видеть? - Выбираем на своё усмотрение
1. Файл block-center.html отвечает за верхние центральные блоки.
2. Файл block-down.html отвечает за нижние центральные блоки.
3. Файл block-left.html отвечает за левые блоки.
4. Файл block-right.html отвечает за правые блоки.
5. Файл block-all.html отвечает за все остальные блоки, которые могут использовать в отдельности от стандартных.
Создание оформления персонально для каждого блока
Вы можете создать уникальное оформление, персонально для каждого блока системы. В зависимости от названия имеющегося блока, который находится в корневой директории блоков blocks/. Если это необходимо, в папке темы оформления создаём файл оформления с названием файлового блока, для которого он будет использоваться, но с измененным окончанием .php на .html. В созданный файл и вносим свой вид оформления.
Пример: Нужно сделать уникальное оформление для блока block-news.php
В таком случае создаём файл оформления в директории темы с названием block-news.html
Система определит его автоматически и будет использовать для персонального оформления блока block-news.php
Создание оформления для группы блоков персонально для каждого модуля
Вы можете создать уникальное оформление групп блоков, персонально для каждого модуля системы.
Пример: Нужно сделать уникальное оформление левых блоков для модуля news
В таком случае создаём файл оформления в директории темы с названием block-left-news.html
Система определит его автоматически и будет использовать для персонального оформления левых блоков модуля news
Создание оформления для группы блоков для главной страницы
Вы можете создать уникальное оформление групп блоков, для главной страницы.
Пример: Нужно сделать уникальное оформление левых блоков для главной страницы
В таком случае создаём файл оформления в директории темы с названием block-left-home.html
Система определит его автоматически и будет использовать для персонального оформления левых блоков главной страницы проекта.
Используемые переменные
$title - Заголовок блока.
$content - Содержание блока.
За основное оформление системы отвечает файл index.html предназначенный для формирования структуры и порядка отражения модулей, блоков и других компонентов системы. Естественно, верстальщик и дизайнер могут наполнить его любым HTML оформлением и применить все возможные и известные приемы верстки. Возможно уникальное использование основного шаблона персонально для главной страницы проекта, независимо от установленного модуля, а так же персонально для каждого модуля и категории системы.
Создание основного шаблона оформления персонально для главной страницы
Вы можете создать уникальное оформление, персонально для главной страницы проекта в не зависимости от модуля, установленного на главной.
Пример: Нужно сделать уникальное оформление для главной страницы проекта
В таком случае создаём файл оформления в директории темы с названием index-home.html
Система определит его автоматически и будет использовать для главной страницы проекта.
Создание основного шаблона оформления персонально для каждого модуля
Вы можете создать уникальное оформление, персонально для каждого модуля системы. В зависимости от названия имеющегося модуля, который находится в корневой директории modules/
Пример: Нужно сделать уникальное оформление основного шаблона для модуля news
В таком случае создаём файл оформления в директории темы с названием index-news.html
Система определит его автоматически и будет использовать для модуля news.
Создание основного шаблона оформления персонально для каждой категории модуля
Вы можете создать уникальное оформление, персонально для каждой категории модуля системы. В зависимости от названия имеющегося модуля и номера категории. Номер категории можно посмотреть в панели администратора системы: Панель администратора >> Категории
Пример: Нужно сделать уникальное оформление основного шаблона для категории под номером 5 модуля news
В таком случае создаём файл оформления в директории темы с названием index-news-cat-5.html
Система определит его автоматически и будет использовать для категории номер 5 модуля news.
Стандартные переменные
Ниже представлено описание переменных вида {%XXXX%} и за что они отвечают. Расставить эти переменные можно по всему файлу, в каком угодно порядке.
{%HEAD%} - Стандартное формирование шапки - меты и титлы, а также содержание, которое присутствует в системе по умолчанию.
{%BLOCKS banner%} или {%BLOCKS b%} - Верхний баннер.
{%BLOCKS left%} или {%BLOCKS l%} - Левые блоки.
{%BLOCKS message%} или {%BLOCKS m%} - Сообщение на главной странице.
{%BLOCKS center%} или {%BLOCKS c%} - Верхние центральные блоки.
{%MODULE%} - Нарезка для модуля, который должна подставить система (На месте этого участка будет отображаться содержание модуля системы).
{%BLOCKS down%} или {%BLOCKS d%} - Нижние центральные блоки.
{%BLOCKS right%} или {%BLOCKS r%} - Правые блоки.
{%BLOCKS foot%} или {%BLOCKS f%} - Нижний баннер.
{%LICENSE%} - Копирайты системы.
{%BLOCKS time%} или {%BLOCKS t%} - Время генерации страницы.
{%BLOCKS variables%} - Анализатор переменных.
{%BLOCKS query%} - Анализатор запросов в базу данных.
Дополнительные переменные
{%BLOCKS none,ХХХ%} или {%BLOCKS n,ХХХ%} - Произвольный блок системы или свободный блок без оформления, где ХХХ - это либо ID блока, либо название файла блока.
{%BLOCKS standart,ХХХ%} или {%BLOCKS s,ХХХ%} - Произвольный блок системы или свободный блок с оформлением свободного блока, где ХХХ - это либо ID блока, либо название файла блока.
В SLAED CMS реализована и успешно используется универсальная система блоков, которая даёт гибкую возможность их использования. В отличие от стандартных блоков системы (Блоки создаваемые в базе данных, Файловые блоки или HTML Блоки) которые мы можем использовать независимо друг от друга, персонально для каждого модуля системы или контингента посетителей, в желаемом месте, мы имеем свободные, независимые блоки. Данный тип блоков можно использовать в любых местах, шаблонах или модулях системы.
Общие сведения
В системе есть два вида блоков:
- Стандартные (обычные).
- Свободные (fly, плавающие).
Создать новый стандартный блок можно через:
- Панель администратора >> Блоки и баннеры >> Управление блоками >> Добавить новый блок
Стандартные блоки могут размещаться (опция «Позиция»):
- Слева
- По центру вверху
- По центру внизу
- Справа
- Верхний баннер
- Нижний баннер
Стандартный блок может быть включён (опция «Отображать блок в модулях») в одном или в нескольких выбранных модулях, он может отображаться во всех модулях или только на главной страничке сайта.
Вновь созданный стандартный блок можно использовать для вывода RSS-новостей, для чего выбирается соответствующий RSS/RDF файл.
Оформление внешнего вида блоков с помощью шаблонов
Стандартные блоки системы
Файл block-center.html отвечает за верхние центральные блоки.
Файл block-down.html отвечает за нижние центральные блоки.
Файл block-left.html отвечает за левые блоки.
Файл block-right.html отвечает за правые блоки.
Файл block-all.html отвечает за все остальные блоки, которые могут использоваться отдельно от стандартных.
Можно создать уникальное оформление для любого блока, находящегося в директории blocks/ (block-name.php; name - это имя блока). В директории templates/ваша_тема/ создаём файл шаблона с именем block-name.html. В этом шаблоне делаем уникальное оформление для блока block-name.php. Пример: нужно сделать уникальное оформление для блока block-voting.php. В этом случае создаём файл шаблона в директории templates/ваша_тема/ с названием block-voting.html. Система найдёт этот файл шаблона автоматически, а затем будет использовать его только для оформления блока block-voting.php.
Стандартные блоки имеют более высокий приоритет, чем свободные блоки, поэтому если в свободном блоке отмечено чтобы он отображался хотя бы в одном модуле или в нескольких модулях или во всех модулях или на главной страничке сайта, то такой блок автоматически превращается в стандартный несмотря на то, что он отмечен как «Свободный блок» (fly block).
Свободные блоки системы
Свободный блок (fly) можно разместить в любом месте странички сайта, для чего требуется вставить код формирования этого свободного блока в соответствующий php-файл (в config/config_header.php, например). В шаблоны тем оформления (файлы *.html) нельзя вставлять код формирования свободного блока, так как в этом случае этот php-код не будет обрабатываться.
Свободный блок описывается в php-скрипте функцией: blocks("why", "who");
blocks - функция создания свободного блока с параметрами: why и who.
В зависимости от параметров why и who функция создания свободного блока может:
- Печатать на стандартный вывод сформированный свободный блок (выводить блок на страничку).
- Возвращать строку со сформированным свободным блоком (вывод блока в переменную для последующей вставки этого блока в html-шаблон).
При этом этот свободный блок может быть с оформлением или без него - это зависит от параметров why.
Значение параметров why
none (выводит тело блока на страничку без оформления)
$fly_block_1_1 = blocks("none", 15);
$fly_block_1_2 = blocks("none", "block-menu2.php");
standart (выводит тело блока на страничку с оформлением)
$fly_block_2_1 = blocks("standart", 15);
$fly_block_2_2 = blocks("standart", "block-menu2.php");
plzreturn (выводит тело блока в переменную без вывода на страничку и без оформления)
$fly_block_3_1 = blocks("plzreturn", 15);
$fly_block_3_2 = blocks("plzreturn", "block-menu2.php");
oreturnform (тело блока в переменную без вывода на страничку, но с оформлением)
$fly_block_4_1 = blocks("oreturnform", 15);
$fly_block_4_1 = blocks("oreturnform", "block-menu2.php");
* 15 - Это bid, номер блока в базе данных (Номер блока можно посмотреть в панели администратора в строке №).
Значение параметров who
bid блока (номер блока в базе данных; таблица slaed_blocks, поле bid; это так называемый без файловый блок, то есть код этого блока находится не в php-файле в директории blocks, а в базе данных в таблице slaed_blocks в поле content)
$fly_block_5_1 = blocks("none", 15);
$fly_block_5_2 = blocks("standart", 15);
$fly_block_5_3 = blocks("plzreturn", 15);
$fly_block_5_4 = blocks("oreturnform", 15);
block-name.php (имя php-файла блока; name - это имя блока)
$fly_block_6_1 = blocks("none", "block-menu2.php");
$fly_block_6_2 = blocks("standart", "block-menu2.php");
$fly_block_6_3 = blocks("plzreturn", "block-menu2.php");
$fly_block_6_4 = blocks("oreturnform", "block-menu2.php");
Чтобы пользоваться созданным свободным блоком нужно, чтобы этот блок был активным. На этом блоке должна быть только одна отметка - «Свободный блок», в противном случае этот блок будет стандартным.
Для формирования эксклюзивного оформления для свободного блока нужно создать файл шаблона этого блока с именем:
- fly-block-15.html (15 - это номер блока в базе данных (таблица slaed_blocks, поле bid));
- fly-block-name.html (name - это имя блока).
Пример 1
Нужно создать свободный блок с параметрами:
- Вывод тела свободного блока на страничку.
- Без оформления.
- По номеру блока в базе данных.
- C использованием имени блока.
Пример 2
Нужно создать свободный блок с параметрами:
- Вывод тела свободного блока на страничку.
- С оформлением.
- По номеру блока в базе данных.
- С использованием имени блока:
Пример 3
Нужно создать свободный блок с параметрами:
- Вывод тела свободного блока в переменную.
- Без оформления.
- По номеру блока в базе данных
- С использованием имени блока:
Пример 4
Нужно создать свободный блок с параметрами:
- Вывод тела свободного блока в переменную.
- С оформлением.
- По номеру блока в базе данных.
- С использованием имени блока.
Для вывода на страничку переменной, содержащей в себе тело свободного блока, нужно сделать следующее:
Открываем файл config/config_header.php и в него вставляем код:
В любое место шаблона (в templates/ваша_тема/index.html, например) вставляем массив $BlockGlob[menu2] (Обратите внимание на отсутствие кавычек внутри квадратных скобок!) На страничку вместо $BlockGlob[menu2] будет выведен блок menu2, код которого содержится в файле blocks/block-menu2.php.
Для корректного вывода на страничку свободного блока, который из базы данных запрашивается по bid из таблицы slaed_blocks, при включённом модуле rss_info (вывод новостей в формате RSS) нужно в php-файл config/config_header.php записать:
Свободный блок может выводиться на странички сайта на всём сайте, если его код встроен в тему оформления, или он может выводиться в каком-то определённом модуле, если его код встроен в код этого модуля.
Свободный блок не может быть обработан системой как стандартный блок, но стандартный блок может быть обработан системой как свободный блок. Пример: блок modules, имеющий bid 1 (таблица slaed_blocks), можно вывести на страничку ещё раз как свободный блок, и тогда на этот блок накладываются все те ограничения, которые наложены на блок modules (показывать только на главной страничке сайта или только в одном модуле или в выбранных модулях или во всех модулях).
Использование уникального стиля оформления для блоков
Стандартные блоки
1) Если существует эксклюзивное оформление для блока block-name.php, то применяется оно. Оформление для блока берётся из:
- Файла templates/ваша_тема/block-name.html по имени блока (name).
- Из файла templates/ваша_тема/block-15.html, где 15 - это номер блока (поле bid в таблице slaed_blocks).
2) Если существует оформление для верхних/нижних или левых/правых блоков, то применяется оно. Оформление для блока берётся из:
3) Если не существуют шаблоны, описанные в п. 1) и п. 2), то для оформления блока применяется шаблон templates/ваша_тема/block-all.html.
4) Если шаблон templates/ваша_тема/block-all.html отсутствует, то применяется встроенное оформление блоков (файл function/template.php):
Тэги fieldset и legend описаны в стилевом файле templates/ваша_тема/style.css.
Свободные (fly) блоки
1) Если существует эксклюзивное оформление для свободного блока fly-block-name.php, то применяется оно. Оформление для блока берётся из:
- Файла templates/ваша_тема/fly-block-name.html по имени блока (name).
- Из файла templates/ваша_тема/fly-block-15.html, где 15 - это номер блока (поле bid в таблице slaed_blocks).
2) Если существует общее для всех свободных блоков оформление (файл шаблона templates/ваша_тема/fly-block.html), то применяется оно.
3) Если не существуют п. 1) или п. 2), то применяется файл шаблона templates/ваша_тема/block-all.html.
4) Если шаблон templates/ваша_тема/block-all.html отсутствует, то применяет встроенное оформление блоков (файл function/template.php):
Тэги fieldset и legend описаны в стилевом файле templates/ваша_тема/style.css.
Чем меньше используется уникальных стилей (шаблонов) оформления для блоков, тем быстрее формируется и выдаётся пользователю страничка вашего сайта.
Для изготовления своих тем оформления системы, не требуются знания языка программирования PHP. Все действия производятся в формате разметки HTML. При создании своей, рекомендуется брать за основу стандартную тему «Standart» предварительно копируя её и меняя название папки на своё. После чего заходим в директорию темы или в отдел шаблонов панели администратора и редактируем компоненты под свои нужды.
Ссылки на графику в теме
При использовании ссылок, допустим на графику, название темы в ссылке менять не обязательно. Директория темы определяется автоматически. Для этого используется переменная $ThemeSel. Прописываем только путь к графическому файлу.
Пример ссылки: templates/$ThemeSel/images/ваша_картинка.gif
Графические файлы темы оформления
Директории темы оформления: images/ используется как архив, где хранятся все графические элементы темы оформления сайта. При изготовлении своей темы, для исключения путаницы, рекомендуется использовать данную директорию для хранения графических элементов.
Файлы оформления элементов дизайна в основной директории
Файл темы оформления: style.css отвечает за оформление элементов дизайна всего сайта и позволяет контролировать практически любые элементы. С помощью данного файла можно сделать практически что угодно - от разметки колонок, размера шрифтов, цветовой гаммы до кнопок и всплывающих окон.
Основной шаблон оформления системы
За основное оформление системы отвечает файл index.html предназначенный для формирования структуры и порядка отражения модулей, блоков и других компонентов системы. Естественно, верстальщик и дизайнер могут наполнить его любым HTML оформлением и применить все возможные и известные приемы верстки.
Создание основного шаблона оформления персонально для главной страницы
Вы можете создать уникальное оформление, персонально для главной страницы проекта в не зависимости от модуля, установленного на главной.
Пример: Нужно сделать уникальное оформление для главной страницы проекта
В таком случае создаём файл оформления в директории темы с названием index-Home.html
Система определит его автоматически и будет использовать для персонального оформления главной страницы проекта.
Создание основного шаблона оформления персонально для каждого модуля
Вы можете создать уникальное оформление, персонально для каждого модуля системы. В зависимости от названия имеющегося модуля, который находится в корневой директории modules/
Пример: Нужно сделать уникальное оформление содержания для модуля News
В таком случае создаём файл оформления в директории темы с названием index-News.html
Система определит его автоматически и будет использовать для персонального оформления модуля News.
Ниже представлено описание переменных вида {%XXXX%} и за что они отвечают. Расставить эти переменные можно по всему файлу, в каком угодно порядке.
Используемые переменные
{%HEAD%} - Стандартное формирование шапки - меты и титлы, а также содержание, которое присутствует в системе по умолчанию.
{%MODULE%} - Нарезка для модуля, который должна подставить система (На месте этого участка будет отображаться содержание модуля системы).
{%LICENSE%} - Копирайты системы.
{%BLOCKS banner%} или {%BLOCKS b%} - Верхний баннер.
{%BLOCKS left%} или {%BLOCKS l%} - Левые блоки.
{%BLOCKS center%} или {%BLOCKS c%} - Верхние центральные блоки.
{%BLOCKS down%} или {%BLOCKS d%} - Нижние центральные блоки.
{%BLOCKS right%} или {%BLOCKS r%} - Правые блоки.
{%BLOCKS foot%} или {%BLOCKS f%} - Нижний баннер.
{%BLOCKS time%} или {%BLOCKS t%} - Время генерации страницы.
{%BLOCKS none,ХХХ%} или {%BLOCKS n,ХХХ%} - Произвольный блок системы или свободный блок без оформления, где ХХХ - это либо ID блока, либо название файла блока.
{%BLOCKS standart,ХХХ%} или {%BLOCKS s,ХХХ%} - Произвольный блок системы или свободный блок с оформлением свободного блока, где ХХХ - это либо ID блока, либо название файла блока.
{%BLOCKS message%} или {%BLOCKS m%} - Сообщение на главной странице.
{%BLOCKS variables%} - Анализатор переменных.
{%BLOCKS query%} - Анализатор запросов в базу данных.
Оформление выводимой информации в модулях
Описание компонентов
Файл basic.html отвечает за оформление содержащейся информации в модулях, а так же информации при подробном просмотре.
Создание оформления компонентов
Вы можете создать уникальное оформление материала, персонально для каждого модуля системы. В зависимости от названия имеющегося модуля, который находится в корневой директории modules/
Пример: Нужно сделать уникальное оформление содержания для модуля News
В таком случае создаём файл оформления в директории темы с названием basic-News.html
Система определит его автоматически и будет использовать для персонального оформления содержания модуля News.
Вы можете создать уникальное оформление, персонально для каждой функции модуля. В зависимости от названия используемой функции непосредственно в модуле.
Пример: Нужно сделать уникальное оформление содержания для функции подробного просмотра view модуля News
В таком случае создаём файл оформления в директории темы с названием index-News-view.html
Система определит его автоматически и будет использовать для персонального оформления функции view подробного просмотра модуля News.
Дополнительно к этому в систему внедрена переменная $conf['template'] которую можно использовать в функциях модуля при создании своих названий для компонентов оформления. Такие шаблоны так же будут, определятся системой в автоматическом режиме.
Используемые переменные
$arg[0] - Номер категории в базе данных
$arg[1] - Изображение категории и ссылка на неё
$arg[2] - Заголовок категории
$arg[3] - Номер компонента в базе данных
$arg[4] - Заголовок
$arg[5] - Содержание
$arg[6] - Нижняя строка новости, куда входят: Подробнее, дата, автор, прочитано, комментарии
$arg[7] - Подробный просмотр
$arg[8] - Автор публикации
$arg[9] - Дата публикации
$arg[10] - Количество прочтений
$arg[11] - Количество комментариев
$arg[12] - Рейтинг
$arg[13] - Распечатка
$arg[14] - Редактирование
$arg[15] - Размер
$arg[16] - Версия
$arg[17] - Скачать/Посетить
$arg[18] - Сообщить о недоступном файле/ссылке
$arg[19] - E-Mail
$arg[20] - Сайт
Оформление блоков системы
Описание оформления блоков
1. Файл block-center.html отвечает за верхние центральные блоки.
2. Файл block-down.html отвечает за нижние центральные блоки.
3. Файл block-left.html отвечает за левые блоки.
4. Файл block-right.html отвечает за правые блоки.
5. Файл block-all.html отвечает за все остальные блоки, которые могут использовать в отдельности от стандартных.
Создание оформления блоков
Вы можете создать уникальное оформление, персонально для каждого блока системы. В зависимости от названия имеющегося блока, который находится в корневой директории блоков blocks/. Если это необходимо, создаём идентичное название файла оформления для блока, но с изменением окончания с .php на .html. Куда и вносим свой вид оформления.
Пример: Нужно сделать уникальное оформление для блока block-News.php
В таком случае создаём файл оформления в директории темы с названием block-News.html
Система определит его автоматически и будет использовать для персонального оформления блока block-News.php
Вы можете создать уникальное оформление групп блоков, персонально для каждого модуля системы.
Пример: Нужно сделать уникальное оформление левых блоков для модуля News
В таком случае создаём файл оформления в директории темы с названием block-left-News.html
Система определит его автоматически и будет использовать для персонального оформления левых блоков модуля News
Вы можете создать уникальное оформление групп блоков, для главной страницы.
Пример: Нужно сделать уникальное оформление левых блоков для главной страницы
В таком случае создаём файл оформления в директории темы с названием block-left-Home.html
Система определит его автоматически и будет использовать для персонального оформления левых блоков главной страницы проекта.
Используемые переменные
$title - Заголовок блока
$content - Содержание блока
Оформление комментариев
Описание оформления комментариев
Файл comment.html отвечает за оформление комментариев в модулях.
Создание оформления комментариев
Вы можете создать уникальное оформление комментариев, персонально для каждого модуля системы. В зависимости от названия имеющегося модуля, который находится в корневой директории modules/
Пример: Нужно сделать уникальное оформление комментариев для модуля News
В таком случае создаём файл оформления в директории темы с названием comment-News.html
Система определит его автоматически и будет использовать для персонального оформления комментариев модуля News.
Используемые переменные
$carg[0] - Номер комментария в базе данных
$carg[1] - Ник пользователя с функцией вставки в форму комментария
$carg[2] - Верхняя правая информационная строка
$carg[3] - Аватар пользователя
$carg[4] - Содержание комментария
$carg[5] - Рейтинг пользователя
$carg[6] - Нижняя правая информационная строка
$carg[7] - Пункты пользователя
$carg[8] - Дата комментария
$carg[9] - Номер комментария
$carg[10] - Дата регистрации пользователя
$carg[11] - Пол пользователя
$carg[12] - Ник пользователя
$carg[13] - Сайт пользователя
$carg[14] - E-Mail пользователя
$carg[15] - ICQ номер пользователя
$carg[16] - AIM Адрес пользователя
$carg[17] - Yahoo Messenger пользователя
$carg[18] - MSN Messenger пользователя
$carg[19] - Редактировать пользователя
$carg[20] - Удалить пользователя
Оформление модулей системы
Описание оформления модулей
1. Файл table-open.html отвечает за оформление верхней части модуля и других отделов, где используется функция OpenTable();
2. Файл table-close.html отвечает за оформление нижней части модуля и других отделов, где используется функция CloseTable();
Создание оформления модулей
Вы можете создать уникальное оформление, персонально для каждого модуля системы. В зависимости от названия имеющегося модуля, который находится в корневой директории modules/
1. Для верхней части модуля, table-open-Название_модуля.html
2. Для нижней части модуля, table-close-Название_модуля.html
Пример: Нужно сделать уникальное оформление для модуля News
В таком случае создаём файл оформления в директории темы с названием table-open-News.html и table-close-News.html
Система определит их автоматически и будет использовать для персонального оформления модуля News.
Вы можете создать уникальное оформление, персонально для каждой функции модуля. В зависимости от названия используемой функции непосредственно в модуле.
Пример: Нужно сделать уникальное оформление содержания для функции подробного просмотра view модуля News
В таком случае создаём файл оформления в директории темы с названием table-open-News-view.html и table-close-News-view.html
Система определит их автоматически и будет использовать для персонального оформления функции view подробного просмотра модуля News.
Дополнительно к этому в систему внедрена переменная $conf['template'] которую можно использовать в функциях модуля при создании своих названий для компонентов оформления. Такие шаблоны так же будут, определятся системой в автоматическом режиме.
Оформление сообщений на главной странице
Описание оформления сообщений
Файл message-box.html отвечает за сообщения на главной странице
Используемые переменные
$title - Заголовок сообщения
$content - Содержание сообщения
Оформление страницы печати
Описание оформления страницы печати
Файл prints.html отвечает за оформление страниц печати в модулях.
Создание оформления страниц печати
Вы можете создать уникальное оформление для страниц печати, персонально для каждого модуля системы. В зависимости от названия имеющегося модуля, который находится в корневой директории modules/
Пример: Нужно сделать уникальное оформление страницы печати для модуля News
В таком случае создаём файл оформления в директории темы с названием prints-News.html
Система определит его автоматически и будет использовать для персонального оформления страниц печати модуля News.
Используемые переменные
$charset - Кодировка страницы
$ThemeSel - Название темы оформления
$title - Содержание заголовка кода страницы
$homeurl - Адрес сайта
$sitename - Название сайта
$site_logo - Логотип сайта
$ptitle - Содержание заголовка
$text - Информация
$url - Ссылки на статью и сайт
Оформление заголовка с поиском
Описание оформления заголовка с поиском
Файл search.html отвечает за оформление заголовков с поиском в модулях.
Создание оформления заголовка с поиском
Вы можете создать уникальное оформление заголовка с поиском, персонально для каждого модуля системы. В зависимости от названия имеющегося модуля, который находится в корневой директории modules/
Пример: Нужно сделать уникальное оформление заголовков с поиском для модуля News
В таком случае создаём файл оформления в директории темы с названием search-News.html
Система определит его автоматически и будет использовать для персонального оформления заголовка с поиском модуля News.
Вы можете создать уникальное оформление заголовков с поиском, персонально для каждого модуля системы. В зависимости от названия используемой функции непосредственно в модуле.
Пример: Нужно сделать уникальное оформление заголовка с поиском для функции подробного просмотра view модуля News
В таком случае создаём файл оформления в директории темы с названием search-News-view.html
Система определит его автоматически и будет использовать для персонального оформления функции view заголовков с поиском модуля News.
Дополнительно к этому в систему внедрена переменная $conf['template'] которую можно использовать в функциях модуля при создании своих названий для компонентов оформления. Данные шаблоны так же будут, определятся системой в автоматическом режиме.
Используемые переменные
$sarg[0] - Выводимое название модуля
$sarg[1] - Оригинальное название модуля
$sarg[2] - Ссылки навигации модуля
$sarg[3] – Ссылка: Главная
$sarg[4] – Ссылка: Лучшие
$sarg[5] – Ссылка: Популярные
$sarg[6] – Ссылка: Список
$sarg[7] – Ссылка: Добавить
$s_search - Название поиска
Оформление заголовков во всей системе
Описание оформления заголовков
Файл title.html отвечает за оформление заголовков. Как правило, они используются модулями системы для отображения их названий.
Создание оформления заголовков
Вы можете создать уникальное оформление заголовков, персонально для каждого модуля системы. В зависимости от названия имеющегося модуля, который находится в корневой директории modules/
Пример: Нужно сделать уникальное оформление заголовка для модуля Voting
В таком случае создаём файл оформления в директории темы с названием title-Voting.html
Система определит его автоматически и будет использовать для персонального оформления заголовка модуля Voting.
Вы можете создать уникальное оформление заголовка, персонально для каждой функции модуля. В зависимости от названия используемой функции непосредственно в модуле.
Пример: Нужно сделать уникальное оформление заголовка для функции просмотра view модуля Voting
В таком случае создаём файл оформления в директории темы с названием title-Voting-view.html
Система определит его автоматически и будет использовать для персонального оформления функции view заголовка модуля Voting.
Дополнительно к этому в систему внедрена переменная $conf['template'] которую можно использовать в функциях модуля при создании своих названий для компонентов оформления. Такие шаблоны так же будут, определятся системой в автоматическом режиме.
Используемые переменные
$text - Содержание заголовка
Оформления ошибок, предупреждений и информации
Описание оформления ошибок
Файл warning.html отвечает за оформление ошибок, предупреждений и вывода важной информации в системе.
Создание оформления ошибок
Вы можете создать уникальное оформление ошибок, персонально для каждого модуля системы. В зависимости от названия имеющегося модуля, который находится в корневой директории modules/
Пример: Нужно сделать уникальное оформление ошибок для модуля News
В таком случае создаём файл оформления в директории темы с названием warning-News.html
Система определит его автоматически и будет использовать для персонального оформления ошибок модуля News.
Вы можете создать уникальное оформление, персонально для каждой функции модуля. В зависимости от названия используемой функции непосредственно в модуле.
Пример: Нужно сделать уникальное оформление ошибок для функции подробного просмотра view модуля News
В таком случае создаём файл оформления в директории темы с названием warning-News-view.html
Система определит его автоматически и будет использовать для персонального оформления функции view ошибок модуля News.
Дополнительно к этому в систему внедрена переменная $conf['template'] которую можно использовать в функциях модуля при создании своих названий для компонентов оформления. Такие шаблоны так же будут, определятся системой в автоматическом режиме.
Используемые переменные
$text - Информация
$toredirect - Дальнейший, автоматический переход, так называемый «Редирект».
Я встречал много вопросов связанных с интеграцией обычных шаблонов под шаблоны SLAED CMS. У многих нету ни денег, ни опыта. В бесплатной помощи отказываю, в результате чего все плохие, никто не помогает. Для создания шаблонов последних версий SLAED CMS требуются только знания HTML и CSS. Нестандартный шаблон можно сделать и без внутренних изменений системы, т.е. без вмешательства php, для этого существуют переменные в шаблонизаторе системы
Если внимательно прочитать слова Гроссмана "Сложные проблемы всегда имеют простые, легкие для понимания неправильные решения", то можно понять, что на первый взгляд это всё трудно, но поняв сутьсмысл это можно будет щелкать как орешки. Вернемся к самой статье. Лично я выделяю два вида интеграций: 1 - внедрение в стандартную тему (интеграция на существующую тему), 2 - преобразование HTML (интеграция с нуля).
Очень важную роль играет то, какой шаблон Вы выбрали. Не каждый шаблон можно интегрировать без головные боли. Некоторые авторы шаблонов создают их так, что они не пригодны даже даже для использования их как обычных HTML шаблонов без полной смены структуры.
Когда Вы подобрали HTML, выбираем наиболее доступные для Вас способ интеграции:
Внедрение в стандартную тему (интеграция на существующую тему)
Этот способ включает в себя замены в стандартной темы index.html, и доработкой в style.css, ну а так же где потребуется в остальных файлах .html чтобы придать законченный вид шаблону.
1) Для начала нужно проанализировать структуру HTML шаблона.
2) Далее пожалуй самый сложный этап: из шаблона нужно удалить так называемое лишние (java-срипты, коментарии, лищние рисунки), при этому не нарушая структуру сайта, что является очень частой ошибкой начинающих, в результате чего итоговый templates будет кривой (не правильная структура сайта).
3) Заменяем index.html в стандартном шаблоне SLAED CMS (Default)
4) Включаем страницу и видим «Daring copyrights of system, you break the license of use!». Не надо пугаться, на данном этапе так и должно быть.
5) Изменяем путь до изображений. Перед изображением вписывает такой путь: "/templates/$ThemeSel/images/"
6) Слудующий этап будет заключаться в внедрении переменных. index.html должно содержать следующие: {%HEAD%}, {%BLOCKS left%}, {%BLOCKS message%}, {%BLOCKS center%}, {%MODULE%}, {%BLOCKS down%}, {%BLOCKS foot%}, {%BLOCKS time%}, {%LICENSE%}, {%BLOCKS variables%}, {%BLOCKS query%}.
7) Подстраиваем остальные .html файлы под дизайн.
8) Самым последнем моментом ювелирная работа с style.css (кстати часть style.css можно вырвать из <head> начального HTML шаблона)
Преобразование HTML (интеграция с нуля)
Этот вид более трудоемкий и требует больших знаний. Но он даст Вам желаемый результат. Как говорится «Без труда, не вытащишь и рыбку из пруда». Суть этого вида заключается в том, что Вы практически «создаете» тему. Если быть точнее то Вы вставляете код шаблона в index.html бедующей темы, а остальные части сайта прорабатываете сами.