Asgaros Forum один из немногих плагинов для создания форума на CMS WordPress, но пожалуй Asgaros Forum это лучший плагин для организации форума.
Для обычного пользователя, плагин имеет дружественный и понятный интерфейс настроек, отличный базовый стиль оформления и адаптацию под мобильные экраны.
Под капотом плагина, содержится достаточно профессионально написанный код, лёгкий и понятный для самостоятельного освоения. Так же автор плагина «Asgaros Forum» позаботился и о включении «хуков» в своё решение, для того что бы форум можно было интегрировать с другими плагинами или решениями на базе WordPress.
Ниже как раз и поговорим о некоторых таких удобных хуках:
Hook № 1: «asgarosforum_after_add_topic_submit». Срабатывает когда создана новая тема на форуме
1 2 3 4 5 6 7 8 |
add_action('asgarosforum_after_add_topic_submit', 'add_topic', 100, 6); //Пример вызова кастомной функции какого-нибудь действия function add_topic($post, $topic, $data_subject, $data_content, $redirect, $user_id) { } |
В функции-примере полезны будут переменные:
$data_subject — Содержит заголовок созданной темы
$data_content — Содержит текст введённый при создании темы
Hook № 2: «asgarosforum_after_add_post_submit». Срабатывает когда был добавлен новый ответ(сообщение) в тему
1 2 3 4 5 6 7 8 |
add_action('asgarosforum_after_add_post_submit', 'add_post', 100, 6); //Пример вызова кастомной функции какого-нибудь действия function add_post($post, $topic, $data_subject, $data_content, $redirect, $user_id) { } |
Передаваемые в этом случае переменные аналогичны «хуку» — asgarosforum_after_add_topic_submit
Hook № 3: «asgarosforum_after_delete_post». Срабатывает когда было удалено сообщение в теме
1 2 3 4 5 6 7 8 |
add_action('asgarosforum_after_delete_post', 'delete_post', 100, 6); //Пример вызова кастомной функции какого-нибудь действия function delete_post($post_id) { } |
$post_id — в этом случае будет содержать ИД удалёного сообщения из темы
Hook № 4: «asgarosforum_after_delete_topic». Срабатывает когда было удалена тема
1 2 3 4 5 6 7 8 |
add_action('asgarosforum_after_delete_topic', 'delete_topic', 100, 1); //Пример вызова кастомной функции какого-нибудь действия function delete_topic($topic_id) { } |
$topic_id — в этом случае будет содержать ИД удалённой темы
Автор плагина разместил гораздо больше хуков чем описано в этом посте. В следующим записях мы продолжим разбор плагина Asgaros.
PS: Сам плагин доступен для скачивания в официальных репозитариях WordPress и абсолютно бесплатен.