БлогWordpressИзменение заголовков писем-уведомлений в WordPress

Изменение заголовков писем-уведомлений в WordPress

Всем привет. На днях столкнулся с одной проблемой. Вернее столкнулся я с ней давно, а вот решить ее руки дошли только сейчас 🙂 . Проблема состояла в слудущем — мне на почту часто приходят письма-уведомления о комментариях на блоге и письма из обратной связи. Вот так, например, в моем почтовом клиенте выглядят уведомления о комментариях к статье (кликабельно):

уведомление о комментарии wordpress

Как видите, в начале темы письма идет название сайта. Название моего сайта занимает практически весь экран, и на название статьи, к которой оставлен комментарий, места не хватает. И это притом, что почтовый клиент развернут на весь экран. Естественно, название своего блога я знаю наизусть, и лишний раз напоминать мне его полностью ни к чему.  Поэтому у меня в голове давно зрела идея убрать полное название сайта из темы письма, чтобы сразу было видно название статьи, к которой оставили отзыв.

Если вам тоже не дает покоя эта мелочь, читайте дальше 🙂

Все настройки писем, приходящих от WordPress, включая их тексты и темы, находятся в файле pluggable.php, который располагается в папке wp-includes.

Прежде чем вносить изменения в этот файл, советую сохранить его копию у себя на компьютере на всякий случай, если что-то пойдет не так.

Итак, открываем файл pluggable.php. Здесь, начиная со строки 1021 идут сами тексты писем, приходящие при регистрации, при появлении нового комментария, трекбека или пингбека. Сами тексты я меня не стал.

Чуть ниже идут строки, начинающиеся с переменной $subject, это

$subject = sprintf( __(‘[%1$s] Comment: «%2$s»‘), $blogname, $post->post_title );

$subject = sprintf( __(‘[%1$s] Trackback: «%2$s»‘), $blogname, $post->post_title );

$subject = sprintf( __(‘[%1$s] Pingback: «%2$s»‘), $blogname, $post->post_title );

Эти строчки как раз и отвечают за формирование темы письма. Тот набор символов, который находится в квадратных скобках (выделен жирным), как раз и отвечает за вывод названия сайта. Как раз это нам и нужно редактировать.

Если вы хотите полностью удалить название сайта, тогда удалите эти символы вместе с квадратными скобками. Я же решил оставить только домен своего блога в названии, чтобы отличать его от других, так как иногда на почту приходят уведомления о комментариях на других блогах.

Я заменил [%1$s] на [Seostage.ru]. Можно и без квадратных скобок, их я оставил только для красоты. Если вы сохраните файл в таком виде, то надпись Comment не переведется на русское Новый комментарий к записи, поэтому прописываем эту надпись вручную.

В итоге моя строчка теперь выглядит так:

 $subject = sprintf( __('[Seostage.ru] Новый комментарий к записи "%2$s"'), $blogname, $post->post_title ); 

Измените так же и другие строки. Не забудьте после изменений сохранить кодировку, чтобы не было арабской вязи.

кодировка в wordpress

Теперь уведомления о комментариях у меня имеют такой вид:

https://lh5.googleusercontent.com/-qHo9w46ci0U/URkq8KxDAnI/AAAAAAAAA6M/vPQ3d1rcucA/s911/2013-02-11_210757.png

Результат налицо , я удовлетворен 🙂 Если уведомления о комментариях у вас на блоге вообще не отправляются, читайте эту статью. Удачи!

Понравилась статья? Подписывайтесь на мой RSS канал rss канал, следите за мной в Твиттере , или получайте статьи по почте:

13 отзывов к записи "Изменение заголовков писем-уведомлений в WordPress"

  1. Сергей

    Отличное дополнение для блога. Я думаю, что многие захотят его применить. После установки комментарии смотрятся намного привлекательней. 💡

  2. Андрей

    Классная статья, впервые такую вижу. Хотя я считаю это слишком муторно все. Лучше сразу нормальны заголовок сделать, а потом в случае чего, поменять.

  3. Вячеслав

    Не знал что так можно сделать! Спасибо!

  4. mishuta 2012

    окадывается эта проблема довольно просто решается — спасибо за разьяснения 🙂

  5. Денис

    интересная штука 🙂 нужно обязательно попробовать

  6. Юрий

    Почтовый ящик у вас на сайте находится? Только его так можно редактировать? Что то я не совсем понял, о чем тут речь.

    • Seostager
      нет, не имеет значения, где находится ящик. так можно делать с любой почтой. здесь мы просто меняем шаблон писем.
  7. Oksana

    А как такую же проблему решить в письме уведомлении о регистрации нового пользователя? Не могу найти ничего подобного в pluggable.php. Заранее спасибо за подсказку

    • Seostager
      За формирования письма о новых пользователях отвечает функция wp_new_user_notification, введите ее в поиске по файлу pluggable, она находится примерно в районе 1600 строки.
  8. Борис

    Спасибо за помощь. Походил по рекламе — всё, что могу сделать в благодарность.

  9. Сосновоборск

    А где настраивается почта (прописывается моя почта чтобы комменты и сообщения на нее шли)?
    Везде сменил, но почта идет почему то на старый имэйл:(

    • Seostager
      обычно e-mail прописывается в настройки -> общие и в вашем профиле админа
  10. jawhien

    Не стоит редактировать файлы CMS

Оставить свой отзыв


  • Использую
  • По месяцам
  • GoGetLinks - лучшая биржа для продажи и покупки вечных ссылок.
  • Beget - один из лучших хостингов России по всем показателям.
  • Sape - ссылки все еще работают. Лучшая биржа временных ссылок и не только.
  • 2domains - очень дешевые домены для ваших сайтов. Надежный сервис - пользуюсь сам.
  • Блогун - лучший сервис для размещения постовых и обзоров на блоге.