Хук, появившийся в SMF 2.1. Помогает управлять переменными в начале загрузки страницы.
Расположение
Subs.php
call_integration_hook('integrate_theme_context');
Как видим, хук не имеет параметров; в нем доступны для использования любые переменные, определенные до его вызова.
Использование
Рассмотрим пример:
<?php
if (!defined('SMF'))
die('No direct access...');
class YourModName
{
// В этой функции подключаем используемые хуки
public function hooks()
{
add_integration_function('integrate_theme_context', __CLASS__ . '::themeContext#', false, __FILE__);
}
// Например, в Optimus через этот хук добавляются свои мета-теги
public function themeContext()
{
global $modSettings, $context;
if (!empty($modSettings['optimus_meta'])) {
$tags = unserialize($modSettings['optimus_meta']);
foreach ($tags as $name => $value) {
if (!empty($value))
$context['meta_tags'][] = array('name' => $name, 'content' => $value);
}
}
}
}
Хук вызывается сразу после определения основных метаданных SMF ($context['page_title'], $context['meta_keywords'], $context['meta_tags']
), поэтому его удобно использовать для дополнения или изменения этих переменных.