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