Хук integrate_pre_load_theme

SMF 2.1

Этот хук появился в SMF 2.1 и предназначен для переопределении идентификатора темы на пользовательских страницах.

Расположение

Load.php

call_integration_hook('integrate_pre_load_theme', array(&$id_theme));

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

Использование

Как подключить

Рассмотрим пример:

<?php

if (!defined('SMF'))
    die('Hacking attempt...');

class YourModName
{
    // В этой функции подключаем используемые хуки
    public static function hooks()
    {
        add_integration_function('integrate_pre_load_theme', __CLASS__ . '::preLoadTheme', false, __FILE__);
    }

    public static function preLoadTheme(&$id_theme)
    {
        // Вручную указываем ID нужной нам темы оформления
        $id_theme = 2;
        var_dump($id_theme);
    }
}

В примере выше мы вручную задали $id_theme = 2 и теперь на любой странице форума будет принудительно использоваться шаблон с соответствующим идентификатором. Данный хук пригодится авторам модов и тем оформления, позволяя, например, быстро включать нужный шаблон, не заходя в настройки.

Поделиться
Отправить