• Добро пожаловать на новый компьютерный форум BestForum! Примите и Вы активное участие в его развитии! Компьютерный форум Bestforum посвящен как начинающим пользователям компьютерной и коммуникационной техники, так и специалистам и профессионалам в сфере ИТ технологий. Зарегистрироваться на форуме

Уведомление на email о добавлении нового комментария в компоненте K2

Юрий

Administrator
Команда форума
Регистрация
25 Дек 2015
Сообщения
109
Симпатии
2
Возраст
36
Адрес
Киев
#1
В компоненте K2, который много кто использует в качестве основного для публикации материалов, есть встроенные комментарии. Но до сих пор разработчик не внедрил функцию отправки уведомления на email администратора при добавлении нового комментария.
Исправим данную ситуацию.

На момент написания статьи, версия Joomla 3.5.0

И так, начнем.
Ищем /components/com_k2/models/item.php
Открываем на редактирование, ищем строку
PHP:
$response->message = JText::_('K2_COMMENT_ADDED_AND_WAITING_FOR_APPROVAL');
После нее добавляем:
PHP:
$mainframe = &JFactory::getApplication();
$mail = &JFactory::getMailer();
$senderEmail = $mainframe->getCfg('mailfrom');
$senderName = $mainframe->getCfg('fromname');
$mail->setSender(array($senderEmail, $senderName));
$mail->setSubject(JText::_('K2_COMMENT_REPORT'));
$mail->IsHTML(true);     
$body = "
".JText::_('ТЕМА').": ".($row->title = $item->title)."
".JText::_('ТЕМА').": ".($row->link = $item->link)."
".JText::_('ИМЯ').": ".($row->userName)."
".JText::_('ДАТА').": ".($row->commentDate)."
".JText::_('E-MAIL').": ".($row->commentEmail)."
".JText::_('K2_COMMENT').": ".nl2br($row->commentText)."
";       
$mail->setBody($body);
$mail->ClearAddresses();
$mail->AddAddress($params->get('commentsReportRecipient',
$mainframe->getCfg('mailfrom')));
$mail->Send();
Уведомление о добавлении новых комментариев будет приходить на почту, которая указана в настройках комментариев компонента в поле "Получатель жалоб на комментарии".