WordPress.org

Plugin Directory

ThreadTandem — публикация записей и синхронизация комментариев с Telegram

ThreadTandem — публикация записей и синхронизация комментариев с Telegram

Описание

ThreadTandem связывает один сайт WordPress с одним ботом Telegram, одним каналом и привязанной к нему группой обсуждений.
Каждая опубликованная запись сохраняет постоянную связь со своим анонсом и обсуждением в Telegram.
ThreadTandem разрабатывается независимо, не связан с Telegram и не одобрен им.

Возможности:

  • Выбирайте ссылки с предпросмотром или картинки с описанием. В первом режиме отправляется анонс обычным текстом с видимым URL статьи, а Telegram создаёт карточку по общедоступной странице. Во втором режиме миниатюра записи или первая картинка из текста загружается с описанием обычным текстом и ссылкой.
  • Настраивайте текст ссылки на статью. На русскоязычных сайтах по умолчанию используется «Читать статью» даже без установленного языкового пакета плагина.
  • Импортируйте новые текстовые публикации канала и подписи к медиафайлам в черновики WordPress через фоновую очередь.
  • Получайте до 100 накопленных событий после сбоя доставки: плагин подтверждает только события, надёжно сохранённые в очереди, а затем восстанавливает вебхук.
  • Просматривайте несвязанные публикации в разделе «Настройки > ThreadTandem» на вкладке «Синхронизация записей»: исключайте их, привязывайте к существующим статьям или ставьте записи сайта в очередь на отправку.
  • Для связанных статей основным источником остаётся WordPress; изменения из Telegram обновляют только импортированные черновики, которые ещё не редактировались на сайте. После привязки исходный черновик сохраняется.
  • Отключение публикации в Telegram для отдельной записи. Черновики, личные и защищённые паролем записи не публикуются в Telegram.
  • Управление публикацией через боковую панель редактора блоков в WordPress 7.1 с поддержкой классического редактора.
  • Копирование текстовых ответов из связанных обсуждений Telegram в стандартные комментарии WordPress.
  • Отправка одобренных комментариев с сайта в то же обсуждение с ответом на соответствующее родительское сообщение.
  • Продолжение обсуждения с вложенными ответами на обеих платформах без повторной отправки импортированных комментариев в Telegram.
  • Новые комментарии из Telegram по умолчанию ожидают проверки. Правила WordPress для борьбы со спамом и модерации продолжают действовать.
  • Повторная отправка отредактированного текста из Telegram на проверку, даже если предыдущий вариант был одобрен.
  • Идентификация пользователей по ID Telegram, а не по именам. Без вымышленных адресов электронной почты и автоматического создания учётных записей WordPress.
  • Обработка отправки через очередь в базе данных с обнаружением дубликатов, временным закреплением заданий за обработчиком, задержками при ограничении частоты запросов и наглядной диагностикой.
  • Сохранение исходящих заданий с неизвестным результатом для ручной проверки без автоматической отправки возможных дубликатов.
  • Настройка отдельного HTTPS-сервера Bot API и необязательного внешнего URL вебхука.
  • Английский интерфейс и встроенный русский перевод, включая элементы управления в редакторе блоков. Также поддерживаются языковые пакеты WordPress.org.

Входящая синхронизация поддерживает текстовые записи и комментарии. Подписи к медиафайлам можно импортировать как текст без загрузки вложений. Загрузка входящих вложений, вход через Telegram, темы форумов, автоматический импорт истории и команды модерации в Telegram не поддерживаются.
Длинные анонсы и комментарии с сайта сокращаются с учётом ограничений Telegram; полный исходный текст остаётся на сайте.
По умолчанию используются ссылки с предпросмотром. Если картинки нет, вместо публикации с фото отправляется ссылка с предпросмотром. Локальные постеры JPEG/PNG размером до 10 МБ загружаются напрямую. В существующий текстовый анонс можно добавить фото без изменения идентификатора сообщения. При переключении на предпросмотр ссылок или удалении постера уже отправленное фото сохраняется вместе с обсуждением. Смена формата не запускает повторную отправку архива; чтобы поставить обновление существующего анонса в очередь, нажмите «Отправить» на странице синхронизации. Предпросмотр ссылок зависит от Telegram и требует общедоступного URL статьи.

Внешний сервис: Telegram

ThreadTandem использует Telegram Bot API, по умолчанию по адресу https://api.telegram.org. Вам понадобятся учётная запись Telegram, токен бота и права администратора канала и группы обсуждений. Можно указать другой HTTPS-адрес Bot API; в этом случае те же запросы будут отправляться на него.

ThreadTandem обращается к Telegram при проверке подключения, управлении вебхуком и обработке включённых заданий синхронизации. Плагин передаёт токен бота, идентификаторы чатов и сообщений, заголовки опубликованных записей, отрывки и ссылки. Если синхронизация комментариев включена, также передаются тексты одобренных комментариев с сайта и отображаемые имена их авторов. Адреса электронной почты и IP-адреса авторов комментариев не передаются.

Telegram передаёт публикации канала и сообщения обсуждения на ваш вебхук. Если импорт из канала включён, новые текстовые публикации и подписи к медиафайлам сохраняются в черновиках вместе с идентификаторами канала и сообщения и датами. Подходящие текстовые ответы сохраняются в WordPress с отображаемыми именами, числовыми идентификаторами отправителей, идентификаторами чатов и сообщений и связями между ответами. Перед включением импорта сообщите об этом участникам, в том числе участникам закрытых групп. Форма комментариев уведомляет посетителей сайта, что одобренные комментарии и имена их авторов также появятся в Telegram.

Условия использования Telegram: https://telegram.org/tos
Политика конфиденциальности Telegram: https://telegram.org/privacy
Документация Bot API: https://core.telegram.org/bots/api

ThreadTandem — независимая интеграция, не связанная с Telegram или WordPress.org. Плагин не содержит аналитики и рекламы.

Переводы

Помогите перевести ThreadTandem: https://translate.wordpress.org/projects/wp-plugins/threadtandem-sync-for-telegram/.
Языковые пакеты WordPress.org устанавливаются автоматически, когда для языка сайта доступен одобренный перевод.
Исходный язык плагина — английский. Русский перевод включён в плагин и выбирается по языку сайта или профиля пользователя WordPress без отдельной загрузки.

Скриншоты

Установка

  1. Загрузите каталог threadtandem-sync-for-telegram в wp-content/plugins/ или установите ZIP-архив через «Плагины > Добавить новый > Загрузить плагин».
  2. Активируйте ThreadTandem на отдельном сайте. Активация для всей сети не поддерживается.
  3. Откройте «Настройки > ThreadTandem». Сохраните токен отдельного бота и ID канала, @username или общедоступную ссылку, например https://t.me/username.
  4. Добавьте бота в администраторы канала с правом публикации сообщений. Для синхронизации комментариев привяжите к каналу группу обсуждений и назначьте бота администратором этой группы.
  5. Включите нужные функции, сохраните настройки и нажмите «Проверить подключение». По умолчанию публикация записей и синхронизация комментариев отключены.
  6. Зарегистрируйте вебхук. Ваш сайт должен быть доступен Telegram по общедоступному HTTPS-адресу. ThreadTandem не заменяет вебхук, используемый другой интеграцией.
  7. Опубликуйте тестовую запись. Откройте раздел «Очередь и диагностика» или нажмите «Обработать очередь сейчас».
  8. Оставьте ответ под публикацией в Telegram, проверьте импортированный комментарий в WordPress, а затем ответьте с сайта, чтобы проверить обмен сообщениями.

Необязательная константа TREDA_BOT_TOKEN в wp-config.php имеет приоритет над токеном из базы данных. Сохранённый токен никогда не выводится обратно в форму настроек. Защищайте резервные копии базы данных так же, как другие учётные данные сайта.

Требуется WordPress 6.2 или новее для безопасной подстановки идентификаторов таблиц базы данных в запросы. Таблицы комментариев, метаданных комментариев и связей ThreadTandem должны использовать InnoDB для импорта с поддержкой транзакций.

Часто задаваемые вопросы

Обращается ли плагин к Telegram при просмотре записи?

Нет. Посетители читают обычные комментарии WordPress. Сетевые запросы выполняются через фоновую очередь или по явному действию администратора.

Почему сообщения доставляются с задержкой?

Работа WP-Cron зависит от посещений сайта. ThreadTandem планирует обработку очереди примерно раз в минуту и выполняет до трёх заданий за один запуск. Если важна предсказуемая доставка, настройте запуск wp-cron.php через серверный cron. Ограничения частоты запросов и отсутствие связи с родительским сообщением могут задерживать отдельные задания.

Что делать, если результат отправки неизвестен?

Время ожидания может истечь уже после того, как Telegram принял сообщение. ThreadTandem помечает такой результат как «Результат неизвестен» и не повторяет отправку автоматически. Прежде чем запускать повторную отправку в панели администратора, проверьте Telegram. Повторная отправка вручную может создать дубликат; автоматическая сверка результатов не предусмотрена.

Можно ли использовать локальную установку WordPress?

Проверка API и отправка сообщений могут работать локально. Для входящих событий Telegram нужен общедоступный HTTPS-адрес конечной точки REST API. Настройка внешнего URL вебхука сама по себе не создаёт туннель. Прокси-сервер должен сохранять тело запроса и заголовок X-Telegram-Bot-Api-Secret-Token.

Можно ли использовать собственный сервер Bot API?

Да, в дополнительных настройках можно указать HTTPS-адрес API. Он будет использоваться для всех запросов. Правила безопасных HTTP-запросов WordPress могут блокировать частные IP-адреса и нестандартные порты. Адреса с протоколом HTTP, учётными данными или параметрами запроса не допускаются.

Какие комментарии импортируются?

Только текстовые сообщения из указанной в настройках группы обсуждений, которые относятся к точно сопоставленной ветке записи или цепочке ответов. Если родительское сообщение ещё не сопоставлено, комментарий ожидает обработки и не привязывается к другой записи. Сообщения ботов, команды, медиафайлы и посторонние сообщения чата не импортируются. Если сайт разрешает комментировать только зарегистрированным пользователям, импорт комментариев от авторов из Telegram невозможен.

Синхронизируются ли модерация и удаление на обеих платформах?

Комментарии с сайта отправляются только после одобрения. При отмене одобрения, пометке как спам, перемещении в корзину или удалении комментария с сайта плагин пытается удалить его копию, опубликованную ботом в Telegram. Telegram может отклонить удаление из-за прав доступа или давности сообщения; ошибка отобразится в очереди.

Модерация или удаление комментария, импортированного из Telegram, затрагивает его копию в WordPress. Исходное сообщение участника в Telegram при этом не удаляется. Telegram не сообщает клиентам Bot API об удалении обычных сообщений в группах, поэтому такое удаление не может автоматически удалить копию в WordPress.

Можно ли сменить бота или канал?

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

Какие данные сохраняются?

После успешной обработки входящего задания его содержимое сообщения очищается. Записи о завершённых и неудачных входящих заданиях удаляются через семь дней. Тексты комментариев хранятся как обычное содержимое сайта, а связи между сообщениями сохраняются до удаления данных интеграции. В руководстве по политике конфиденциальности есть рекомендуемый текст о ThreadTandem. Дополнительные метаданные отправителя учитываются инструментами WordPress для работы с персональными данными по адресу электронной почты, если у комментария указан соответствующий адрес. Telegram не передаёт адреса электронной почты авторов, которые пишут только в Telegram. Для запроса доступа к данным или их удаления таким авторам нужно обратиться к администратору сайта и подтвердить свою личность.

Что произойдёт при деактивации или удалении ThreadTandem?

Деактивация останавливает запланированную обработку очереди и сохраняет данные. Перед удалением плагина отключите вебхук. По умолчанию данные интеграции сохраняются при удалении. Чтобы при удалении плагина удалить настройки, таблицы и метаданные интеграции ThreadTandem, снимите флажок «Сохранять данные интеграции при удалении плагина». Сами записи и комментарии WordPress останутся. Копии в Telegram и другие данные, хранящиеся во внешних сервисах, автоматически не удаляются.

Отзывы

31.10.2026
Oh, it sends posts to Telegram perfectly, and there’s comment synchronization.
Посмотреть 1 отзыв

Участники и разработчики

«ThreadTandem — публикация записей и синхронизация комментариев с Telegram» — проект с открытым исходным кодом. В развитие плагина внесли свой вклад следующие участники:

Участники

«ThreadTandem — публикация записей и синхронизация комментариев с Telegram» переведён на 1 язык. Благодарим переводчиков за их работу.

Перевести «ThreadTandem — публикация записей и синхронизация комментариев с Telegram» на ваш язык.

Заинтересованы в разработке?

Посмотрите код, проверьте SVN репозиторий, или подпишитесь на журнал разработки по RSS.

Журнал изменений

1.3.0

  • Добавлен выбор между ссылками с предпросмотром и фото с описанием обычным текстом; текущие настройки по умолчанию сохраняются.
  • Локальные постеры загружаются напрямую, подписи и картинки обновляются без дубликатов сообщений; для загрузки файлов увеличено время ожидания.
  • При возврате к предпросмотру ссылок уже отправленные фото и обсуждения сохраняются; смена формата не запускает повторную отправку архива.
  • Новые анонсы отправляются по дате публикации, от старых к новым; более ранние отложенные, неудачные задания и задания с неизвестным результатом приостанавливают следующие отправки.
  • Хронологическое положение массовой отправки сохраняется между пакетами, а ранее поставленные задания отправки архива безопасно продолжаются.
  • Неудачные задания и задания с неизвестным результатом показываются первыми; в диагностике добавлены фильтры состояния и разбиение на страницы.
  • Задания, поставленные в очередь для прежнего подключения к Telegram, теперь отмечаются как неудачные с понятным сообщением вместо незаметной отметки об успешном выполнении.
  • Добавлены русские и английские переводы настроек формата публикации и подсказок об очереди.

1.2.0

  • Включены полные русские и английские переводы PHP-интерфейса и редактора блоков, в том числе дополнение недостающих строк в старых языковых пакетах.
  • Добавлена настройка текста ссылки на статью в анонсах Telegram с русским значением по умолчанию на русскоязычных сайтах.
  • Пользовательский текст ссылки применяется при создании и обновлении того же анонса через очередь.
  • Добавлен импорт публикаций канала в черновики WordPress через очередь с безопасной обработкой текста и защитой от дубликатов.
  • Добавлена страница синхронизации с привязкой публикаций, исключением и восстановлением записей и ручной отправкой через очередь.
  • Для связанных статей сайт остаётся основным источником; отредактированные вручную черновики сохраняются.
  • Добавлена подписка на события публикации и редактирования записей канала с сохранением существующей доставки комментариев.
  • В анонсы Telegram добавляется миниатюра записи или первая картинка из текста; локальные файлы JPEG и PNG загружаются напрямую.
  • Добавлена отправка архива через очередь: она находится в свёрнутой панели и требует отдельного подтверждения.
  • Адреса настроек изменены на page=threadtandem и page=threadtandem-sync; со старых адресов настроены перенаправления.

1.1.1

  • В настройках принимаются общедоступные ссылки t.me на каналы; перед проверкой и сохранением они преобразуются в соответствующий @username.
  • Проверенное подключение сохраняется, если тот же канал указан ссылкой вместо @username.
  • Ошибки подключения теперь указывают, связана ли проблема с токеном, каналом или группой обсуждений; при наличии показывается имя проверенного бота.

1.1.0

  • Плагин переименован в ThreadTandem — публикация записей и синхронизация комментариев с Telegram.
  • Используются текстовый домен threadtandem-sync-for-telegram и стандартные языковые пакеты WordPress.org.
  • При замене предыдущего плагина сохраняются настройки бота, связи публикаций, комментарии и данные очереди.

1.0.4

  • Имена авторов импортированных комментариев ведут к исходным сообщениям в Telegram и дополнены небольшим чёрным значком бумажного самолётика.
  • Удалён отдельный абзац с указанием источника под импортированными комментариями; при выводе ссылок на авторов учитывается удаление персональных данных.

1.0.3

  • Новые публикации остаются в очереди, если для сохранённых настроек подключения требуется повторная проверка прав доступа.
  • Фоновый обработчик повторно проверяет подключение перед отправкой и сообщает об ошибках в диагностике очереди.

1.0.2

  • Обновлён экран настроек: подключение, синхронизация, доставка и диагностика вынесены в отдельные разделы.
  • Добавлены адаптивный интерфейс, понятные индикаторы состояния, управление видимостью токена и копирование URL вебхука.
  • Кнопка сохранения остаётся видимой, а действия с подключением не используют несохранённые изменения.

1.0.1

  • Добавлена встроенная панель публикации в Telegram для редактора блоков WordPress с использованием актуального API редактора и совместимостью с WordPress 6.2.
  • Настройка публикации отдельной записи сохраняется через метаданные REST API с проверкой прав доступа.
  • Экспорт записей ставится в очередь после сохранения метаданных через REST API WordPress, чтобы избежать использования устаревших настроек публикации и повторного добавления заданий.
  • Сохранено управление в классическом редакторе; редакционные заметки исключены из публичных комментариев в Telegram.

1.0.0

  • Первый выпуск: публикация в канал, точная привязка обсуждений, текстовые ответы в обе стороны, стандартная модерация, надёжная очередь и настройки конфиденциальности.