[3.2][3.3] Как можно получить заголовок сообщения при его создании?
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB3.1.x/3.3.x | FAQ | Как задавать вопросы | Как устанавливать расширения
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение
).
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB3.1.x/3.3.x | FAQ | Как задавать вопросы | Как устанавливать расширения
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение

[3.2][3.3] Как можно получить заголовок сообщения при его создании?
Хочу доработать своё расширение по стоп-словам, чтобы оно и заголовок сообщения анализировало, но никак не пойму как его получить? Может, кто подскажет. Знаю, что в antibot42 это реализовано, но не могу там разобраться... ((
Последний раз редактировалось Джим 03.10.2025 20:51, всего редактировалось 1 раз.
-
- Поддержка
- Сообщения: 12847
- Стаж: 14 лет 1 месяц
- Благодарил (а): 160 раз
- Поблагодарили: 2326 раз
Re: [3.2][3.3] Как можно получить заголовок сообщения при его создании?
Общая инструкция: искать по файлам форума слово extract, особенно по более-менее подходящим под задачу, и смотреть нет ли где нужной переменной, переданной в событие
И конкретней:
posting.php
Строки 937-940
То есть нужен $post_data ниже тех строк. И ближайшее событие попадается в районе 1086 строки
Всё, из
И конкретней:
posting.php
Строки 937-940
Код: Выделить всё
if ($submit || $preview || $refresh)
{
$post_data['topic_cur_post_id'] = $request->variable('topic_cur_post_id', 0);
$post_data['post_subject'] = $request->variable('subject', '', true);
Код: Выделить всё
$vars = array(
'post_data',
'mode',
'post_id',
'topic_id',
'forum_id',
'submit',
'preview',
'save',
'load',
'cancel',
'refresh',
'message_parser',
'error',
);
extract($phpbb_dispatcher->trigger_event('core.posting_modify_message_text', compact($vars)));
core.posting_modify_message_text
можно брать $post_data = $event['post_data'];
и что-то делать с $post_data['post_subject']
-
- phpBB Guru
- Сообщения: 17039
- Стаж: 19 лет 4 месяца
- Откуда: Красноярск
- Благодарил (а): 564 раза
- Поблагодарили: 1732 раза
Re: [3.2][3.3] Как можно получить заголовок сообщения при его создании?
Также можно взять из события
core.posting_modify_post_data
через $post_data['post_subject']
.-
- Поддержка
- Сообщения: 12847
- Стаж: 14 лет 1 месяц
- Благодарил (а): 160 раз
- Поблагодарили: 2326 раз
Re: [3.2][3.3] Как можно получить заголовок сообщения при его создании?
rxu, на той строке заголовок новой темы/сообщения ещё не получен