Маркер в шаблонах страниц SMF форума

Заголовок этой короткой статьи может показаться размытым и лишенным практической пользы. Но это не так. Маркер, в данном контексте, — специальный код, который мы можем использовать, чтобы дать знать другому php скрипту какой именно шаблон форума SMF генерирует страницу (шаблон главной страницы — BoardIndex.template, шаблон списка тем MessageIndex.template и т.п.). 

Где это можно использовать? Предположим, что у вас на форуме установлен Ad Management mod (расширение, позволяющее показывать рекламу в самых разных местах форума). Задача, к примеру, такова: нужно показать рекламу в «подвале» только на главной странице, либо на всех страницах, кроме главной. Может случиться, что нужно разместить информационное сообщение на странице отправки личного сообщения и т.п. Что мы должны сделать? Находим нужный нам шаблон в папке /Themes/Ваша_тема (если его там нету, копируем из папки /Themes/default). Мы будем добавлять маркер на главную страницу в файле BoardIndex.template.php.

В самый конец файла добавляем функцию:

function is_main_page() {

}

Теперь нам только остается добавить условный оператор в объявление Ad Management:

if (function_exists('is_main_page')) { echo 'Ваш код';}

для показа рекламы только на главной странице, либо

if (!function_exists('is_main_page')) { echo 'Ваш код';}

для показа рекламы на всех страницах, кроме главной.

P.S. Не забудьте выбрать тип рекламного объявления PHP вместо HTML при добавлении нового рекламного блока.

Понравилась запись? Ставь лайк!
Loading more content...