Навигация
Главная
Новости
Форум
Статьи

Регистрация

Кампании в игре
–Битва за Британию
–Сталинград
–Высадка в Сицилии
–Корсуньский котел
–Арденны
–Берлин

Авиация сторон
   –СССР
   –Германия
   –Великобритания
   –США
–Италия

Медиафайлы
–Обои
   –Видео
       –Скриншоты

Мануалы и руководства

Вопросы и ответы

Файловый архив

Опросы
Купить игру
Заказать цифровую версию игры
Партнеры
Система управления блоками, её функции и возможности
Система управления блоками, её функции и возможности При написании этой статьи учитывались функциональные возможности системы начиная с версии SLAED CMS 1.8 Pro. В SLAED CMS 2 Lite функция работы со свободными блоками урезана.

Общие сведения

В SLAED CMS есть два вида блоков:
- Стандартные (обычные).
- Свободные (fly, плавающие).

Создать новый стандартный блок можно через Панель администратора:
- Блоки и баннеры >> Управление блоками >> Добавить новый блок
- По ссылке http://www.ваш_сайт.com/admin.php?op=BlocksNew

Стандартные блоки могут размещаться (опция «Позиция»):
- Слева
- По центру вверху
- По центру внизу
- Справа
- Верхний баннер
- Нижний баннер

Стандартный блок может быть включён (опция «Отображать блок в модулях») в одном или в нескольких выбранных модулях, он может отображаться во всех модулях или только на главной страничке сайта.

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

Оформление внешнего вида блоков с помощью шаблонов

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

  • Файл block-center.html отвечает за верхние центральные блоки.
  • Файл block-down.html отвечает за нижние центральные блоки.
  • Файл block-left.html отвечает за левые блоки.
  • Файл block-right.html отвечает за правые блоки.
  • Файл block-all.html отвечает за все остальные блоки, которые могут использоваться отдельно от стандартных.

    Можно создать уникальное оформление для любого блока, находящегося в директории blocks/ (block-Name.php; Name — это имя блока). В директории themes/Ваша_тема/ создаём файл шаблона с именем block-Name.html. В этом шаблоне делаем уникальное оформление для блока block-Name.php. Пример: нужно сделать уникальное оформление для блока block-Voting.php. В этом случае создаём файл шаблона в директории themes/Ваша_тема/ с названием block-Voting.html. Система найдёт этот файл шаблона автоматически, а затем будет использовать его только для оформления блока block-Voting.php.

    Стандартные блоки имеют более высокий приоритет, чем свободные блоки, поэтому если в свободном блоке отмечено чтобы он отображался хотя бы в одном модуле или в нескольких модулях или во всех модулях или на главной страничке сайта, то такой блок автоматически превращается в стандартный несмотря на то, что он отмечен как «Свободный блок» (fly block).

    Свободные блоки системы

    Свободный блок (fly) можно разместить в любом месте странички сайта, для чего требуется вставить код формирования этого свободного блока в соответствующий php-файл (в config/header.php, например). В шаблоны тем оформления (файлы *.html) нельзя вставлять код формирования свободного блока, так как в этом случае этот php-код не будет обрабатываться.

    Свободный блок описывается в php-скрипте функцией: blocks('why', 'who');
    blocks - функция создания свободного блока с параметрами: why и who.

    В зависимости от параметров why и who функция создания свободного блока может:
    - Печатать на стандартный вывод сформированный свободный блок (выводить блок на страничку).
    - Возвращать строку со сформированным свободным блоком (вывод блока в переменную для последующей вставки этого блока в html-шаблон).

    При этом этот свободный блок может быть с оформлением или без него - это зависит от параметров why.

    Значение параметров why

  • none (выводит тело блока на страничку без оформления SLAED CMS)
    $fly_block_1_1 = blocks('none', 15);
    $fly_block_1_2 = blocks('none', 'block-Menu2.php');

  • standart (выводит тело блока на страничку с оформлением SLAED CMS)
    $fly_block_2_1 = blocks('standart', 15);
    $fly_block_2_2 = blocks('standart', 'block-Menu2.php');

  • plzreturn (выводит тело блока в переменную без вывода на страничку и без оформления SLAED CMS)
    $fly_block_3_1 = blocks('plzreturn', 15);
    $fly_block_3_2 = blocks('plzreturn', 'block-Menu2.php');

  • oreturnform (тело блока в переменную без вывода на страничку, но с оформлением SLAED CMS)
    $fly_block_4_1 = blocks('oreturnform', 15);
    $fly_block_4_1 = blocks('oreturnform', 'block-Menu2.php');

    * 15 - Это номер блока в базе данных (Номер блока можно посмотреть в панели администратора в строке №).

    Значение параметров 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

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

    <?php
    blocks('none', 15);
    ?>


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

    <?php
    blocks('none', 'block-Menu2.php');
    ?>


    Пример 2

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

    <?php
    blocks('standart', 15);
    ?>


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

    <?php
    blocks('standart', 'block-Menu2.php');
    ?>


    Пример 3

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

    <?php
    global $BlockGlob;
    ob_start();
    blocks('plzreturn', 15);
    $BlockGlob['15'] = ob_get_clean();
    ?>


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

    <?php
    global $BlockGlob;
    $BlockGlob['Menu2'] = blocks('plzreturn', 'block-Menu2.php');
    ?>


    Пример 4

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

    <?php
    global $BlockGlob;
    ob_start();
    blocks('oreturnform', 15);
    $BlockGlob['15'] = ob_get_clean();
    ?>


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

    <?php
    global $BlockGlob;
    $BlockGlob['Menu2'] = blocks('oreturnform', 'block-Menu2.php');
    ?>


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

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

    <?php
    global $BlockGlob;
    $BlockGlob['Menu2'] = blocks('plzreturn', 'block-Menu2.php');
    ?>


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

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

    <?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, то применяется оно. Оформление для блока берётся из:

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

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

    - themes/Ваша_тема/block-center.html
    - themes/Ваша_тема/block-down.html
    - themes/Ваша_тема/block-left.html
    - themes/Ваша_тема/block-right.html

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

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

    echo '<fieldset><legend>'.$title.'</legend><div>'.$content.'</div></fieldset>';

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

    Свободные (fly) блоки

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

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

    2) Если существует общее для всех свободных блоков оформление (файл шаблона themes/Ваша_тема/fly-block.html), то применяется оно.

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

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

    echo '<fieldset><legend>'.$title.'</legend><div>'.$content.'</div></fieldset>';

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

    Чем меньше используется уникальных стилей (шаблонов) оформления для блоков, тем быстрее формируется и выдаётся пользователю страничка вашего сайта.
  • [ Назад | Начало | Наверх ]
    Powered by SLAED CMS © 2005-2008 SLAED. All rights reserved.