Ник:
Пароль:

Download Open SLAED

Open SLAED 1.1 Open SLAED 1.1

Поиск по сайту

Поиск

Рекламные ссылки

Open SLAED
Мы будем Вам признательны, если Вы поддержите проект Open SLAED и используя Ваши возможности, разместите наш пресс-релиз на страницах своих сайтов, проектов, форумов, блогов. Текст пресс-релиза, возможно, видоизменить под Ваш формат, не искажая смысл. Пресс-релиз можно взять на данной странице.
Статьи
Система управления блоками, её функции и возможности
Использование и изготовление блоков В 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

    Нужно создать свободный блок с параметрами:
    - Вывод тела свободного блока на страничку.
    - Без оформления.
    - По номеру блока в базе данных.

    Код
    blocks("none", 15);


    - C использованием имени блока.

    Код
    blocks("none", "block-menu2.php");


    Пример 2

    Нужно создать свободный блок с параметрами:
    - Вывод тела свободного блока на страничку.
    - С оформлением.
    - По номеру блока в базе данных.

    Код
    blocks("standart", 15);


    - С использованием имени блока:

    Код
    blocks("standart", "block-menu2.php");


    Пример 3

    Нужно создать свободный блок с параметрами:
    - Вывод тела свободного блока в переменную.
    - Без оформления.
    - По номеру блока в базе данных

    Код
    global $BlockGlob;
    ob_start();
    blocks("plzreturn", 15);
    $BlockGlob["15"] = ob_get_clean();


    - С использованием имени блока:

    Код
    global $BlockGlob;
    $BlockGlob["Menu2"] = blocks("plzreturn", "block-menu2.php");


    Пример 4

    Нужно создать свободный блок с параметрами:
    - Вывод тела свободного блока в переменную.
    - С оформлением.
    - По номеру блока в базе данных.

    Код
    global $BlockGlob;
    ob_start();
    blocks("oreturnform", 15);
    $BlockGlob["15"] = ob_get_clean();


    - С использованием имени блока.

    Код
    global $BlockGlob;
    $BlockGlob["menu2"] = blocks("oreturnform", "block-menu2.php");


    Для вывода на страничку переменной, содержащей в себе тело свободного блока, нужно сделать следующее:

    Открываем файл config/config_header.php и в него вставляем код:

    Код
    global $BlockGlob;
    $BlockGlob["menu2"] = blocks("plzreturn", "block-menu2.php");


    В любое место шаблона (в templates/ваша_тема/index.html, например) вставляем массив $BlockGlob[menu2] (Обратите внимание на отсутствие кавычек внутри квадратных скобок!) На страничку вместо $BlockGlob[menu2] будет выведен блок menu2, код которого содержится в файле blocks/block-menu2.php.

    Для корректного вывода на страничку свободного блока, который из базы данных запрашивается по bid из таблицы slaed_blocks, при включённом модуле rss_info (вывод новостей в формате RSS) нужно в php-файл config/config_header.php записать:

    Код
    global $BlockGlob;
    $BlockGlob["menu2"] = blocks("plzreturn", "block-menu2.php");
    ob_start();
    blocks("none", 15);
    $BlockGlob["15"] = ob_get_clean();


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

    Свободный блок не может быть обработан системой как стандартный блок, но стандартный блок может быть обработан системой как свободный блок. Пример: блок modules, имеющий bid 1 (таблица slaed_blocks), можно вывести на страничку ещё раз как свободный блок, и тогда на этот блок накладываются все те ограничения, которые наложены на блок modules (показывать только на главной страничке сайта или только в одном модуле или в выбранных модулях или во всех модулях).

    Использование уникального стиля оформления для блоков

    Стандартные блоки

    1) Если существует эксклюзивное оформление для блока block-name.php, то применяется оно. Оформление для блока берётся из:

    - Файла templates/ваша_тема/block-name.html по имени блока (name).
    - Из файла templates/ваша_тема/block-15.html, где 15 - это номер блока (поле bid в таблице slaed_blocks).

    2) Если существует оформление для верхних/нижних или левых/правых блоков, то применяется оно. Оформление для блока берётся из:

    - templates/ваша_тема/block-center.html
    - templates/ваша_тема/block-down.html
    - templates/ваша_тема/block-left.html
    - templates/ваша_тема/block-right.html

    3) Если не существуют шаблоны, описанные в п. 1) и п. 2), то для оформления блока применяется шаблон templates/ваша_тема/block-all.html.

    4) Если шаблон templates/ваша_тема/block-all.html отсутствует, то применяется встроенное оформление блоков (файл function/template.php):

    Код
    echo "<fieldset><legend>".$title."</legend><div>".$content."</div></fieldset>";


    Тэги 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):

    Код
    echo "<fieldset><legend>".$title."</legend><div>".$content."</div></fieldset>";


    Тэги fieldset и legend описаны в стилевом файле templates/ваша_тема/style.css.

    Чем меньше используется уникальных стилей (шаблонов) оформления для блоков, тем быстрее формируется и выдаётся пользователю страничка вашего сайта.

    Автор: Кирилл Мезинцев
  • Дополнительно по данной категории

    24.03.2008 - Создание собственного файлового блока
    Нет комментариев. Почему бы Вам не оставить свой?
    Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.

    Юридическая консультация

    Регистрация ООО

    Сотовые Аксессуары

    Опрос

    Установлен ли на Вашем хостинге Zend Optimizer?

    Да
    Нет
    Не знаю
    А что это?


    Результаты
    Другие опросы

    Всего голосов: 1298
    Комментарии: 44
    Счетчик посещения страниц и уникальных посетителей в сутки SLAED CMS - Content Management System Экспорт новостей в формате RSS Anti Spam