Мы будем Вам признательны, если Вы поддержите проект Open SLAED и используя Ваши возможности, разместите наш пресс-релиз на страницах своих сайтов, проектов, форумов, блогов. Текст пресс-релиза, возможно, видоизменить под Ваш формат, не искажая смысл. Пресс-релиз можно взять на данной странице.
Не для кого не секрет что некоторые сайты для экономии своего трафика и размера используемого места на сервере применяют удалённые изображения с других сайтов, тем самым поглощают чужой трафик и повышают нагрузку на сервер. Что бы этому воспрепятствовать, предлагаю к использованию следующие методы.
На случай если необходимо запретить использовать любые изображения сайта
1. Войдите в панель управления системой, отдел: Панель администратора >> Редактор
2. В файл конфигураций правил преобразований ЧПУ на серверном уровне: .htaccess
После:
Добавьте следующую запись:
Заместо: slaed укажите своё имя домена.
Заместо: net укажите своё окончание домена.
Заместо: http://www.slaed.net/images/logos/Logo_Web_2_2.gif укажите ссылку на ваш логотип или изображение которое будет отображаться на том сайте который использует Ваше изображение.
Для того, что бы запретить использовать изображения только определённой директории
1. Создайте файл: .htaccess со следующим содержанием:
Заместо: slaed укажите своё имя домена.
Заместо: net укажите своё окончание домена.
Заместо: http://www.slaed.net/images/logos/Logo_Web_2_2.gif укажите ссылку на ваш логотип или изображение которое будет отображаться на том сайте который использует Ваше изображение.
2. Загрузите созданный файл в директорию, использования изображений которой должны быть запрещены.
Для работы этих методов, сервер Вашего хостера должен поддерживать работу с .htaccess, Mod Rewrite должен быть установлен и активирован.
Для проверки информации о системных настройках PHP рекомендуем воспользоваться стандартной функцией phpinfo(). Она выводит большое количество информации о текущем статусе PHP. Сюда входит информация об опциях компиляции PHP и о расширениях, версии PHP, информация сервера и окружения (если скомпилирован как модуль), окружение PHP, версия ОС, пути, master и локальные переменные опций конфигурации, шапки HTTP и PHP License.
Поскольку каждая система настроена по-своему, phpinfo() обычно используется для проверки установок конфигурации и доступности предопределённых переменных в данной системе. Также phpinfo() является важной отладочной утилитой, так как содержит все данные EGPCS (Environment, GET, POST, Cookie, Server).
Создайте файл: info.php
Файл должен иметь следующее содержание:
Загрузите созданный файл в директорию Вашего сайта.
Чтобы создать собственный блок для сайта, построенного с использованием 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 - Содержание блока.
В 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.
Чем меньше используется уникальных стилей (шаблонов) оформления для блоков, тем быстрее формируется и выдаётся пользователю страничка вашего сайта.