Хук позволяет дополнять/изменять наборы кнопок в быстрых меню. Это кнопки вида «Цитировать», «Редактировать» и т. д. (внутри сообщений).
Расположение
index.template.php
if (!empty($list_class))
call_integration_hook('integrate_' . $list_class . '_quickbuttons', array(&$list_items));
Хук вызывается в случае, если параметр $list_class (имя класса) при вызове функции template_quickbuttons не пуст.
Использование
Сначала определяемся, какой набор кнопок меняем. Примеры:
- Кнопки внутри каждого сообщения — хук integrate_post_quickbuttons
- Кнопки внутри каждого личного сообщения — хук integrate_pm_quickbuttons
- Кнопки внутри созданного самостоятельно набора — хук integrate_{ваш_класс}_quickbuttons и т. д.
Затем подключаем нужный хук и переопределяем/добавляем желаемые кнопки. Например, добавим внутри каждого поста кнопку-ссылку на произвольный сайт:
<?php
if (!defined('SMF'))
die('No direct access...');
class YourModName
{
// В этой функции подключаем используемые хуки
public function hooks()
{
add_integration_function('integrate_post_quickbuttons', __CLASS__ . '::postQuickButtons#', false, __FILE__);
}
public function postQuickButtons(&$list_items)
{
$list_items['my_button'] = array(
'label' => 'Перейти на сайт',
'href' => 'https://dragomano.ru',
'icon' => 'home',
'show' => true
);
}
}
С другими подобными хуками работа полностью аналогичная. Примеры кнопок смотрите в исходных файлах движка.