На этом сайте практически с самого начала используется плагин форума Simple Press. Вполне себе годный форум, без явных проблем и выполняющий свою главную функцию. Никогда не вдавался в какие то детали его настройки, как говорится, настроил и забыл, если работает, то не трогай)
Но вот, наконец, решил чуть добавить от себя в функционал этого форума, а именно сделать уведомления о новых ответах пользователю - автору топика. К слову, у плагина Simple Press есть целый ряд различных расширений и дополнений, которые вполне возможно и решают эту задачу, но давно прошло то время, когда я рыскал по чужим сайтам в надежде найти для себя полезный плагин, поэтому пишу сам, набиваю руку, тем более, что кода всего ничего, меньше чем это затянувшееся вступление 🙂
Собственно код:
function notify_new_reply_forum($comment){
global $wpdb;
$topic = $wpdb->get_row("SELECT * FROM ".$wpdb->prefix."sftopics WHERE topic_id = '".$comment['topicid']."'");
if($topic->user_id==$comment['userid']) return false;
add_filter('wp_mail_content_type',create_function('', 'return "text/html";'));
$headers = 'From: '.get_option('blogname').' <noreply@'.$_SERVER['HTTP_HOST'].'>' . "\r\n";
$title = 'Новый комментарий к вашему топику';
$to = get_the_author_meta('user_email',$topic->user_id);
$mess = '<h3>Добавлен новый ответ к вашей теме "'.$comment['topicname'].'".</h3>
<p>Текст ответа:</p>
<p>'.$comment['postcontent'].'</p>
<p><a href="'.$comment['url'].'">Ответить на комментарий</a></p>
<p>Это письмо было создано автоматически, не надо отвечать на него.</p>
<p>-------------------------------</p>
<p>'.get_option('blogname').'</p>';
wp_mail($to, $title, $mess, $headers);
}
add_action('sph_editor_post_create','notify_new_reply_forum');
Данная функция будет присылать письмо-уведомление автору топика каждый раз, когда кто-нибудь отпишется в этом топике, кроме самого автора.
Вам останется лишь поправить текст под себя.
Удачи!
Спасибо! А где находится файл функции у этого плагина?
Речь идет о файле functions.php вашего шаблона.