Как добавить комментарии Telegram на WordPress сайт
Сейчас я покажу на простом примере, как вы можете встроить обсуждения Telegram поста из любого публичного канала на свой сайт под управлением WordPress.
Коротко о Discussion Widget
За основу берем стандартный Telegram Discussion Widget.
Для встраивания сообщения вместе со всеми обсуждениями вам понадобится только ссылка на сообщение с комментариями/
Если у вас есть сайт со статьями и Telegram канал, где вы публикуете ссылки на эти статьи, вы можете использовать этот виджет для отображения обсуждений из этого канала на вашем сайте.
В этом случае вам понадобится только ссылка на канал. Обсуждения будут доступны на вашем сайте, как только вы опубликуете ссылку в вашем канале/группе.
Этот вариант мы и рассмотрим.
Как добавить виджет на сайт
Добавляем метатег telegram:channel
, он не обязательный, но необходим как заголовок вашего канала при просмотре поста через Instant View. Вписываем туда название вашего канала:
<meta property="telegram:channel" content="@wordpress_digest" />
Внимательно проверяем, чтобы на странице в обязательном порядке присутствовал метатег rel:canonical
и чтобы ссылка в нём в точности соответствовала ссылке, котрую вы будете публиковать в вашу группу в Telegram:
<link rel="canonical" href="https://wp-digest.com/news/soobshhestvo-wordpress-russia-v-telegram/" />
Настраиваем Discussion Widget (задаём название вашего канала, цвета, размеры и количество комментариев) на странице с конструктором виджетов.
Вставляем полученный код виджета при помощи сниппета, указанного ниже. Код можно добавить в functions.php вашей активной дочерней темы. Либо тег <script>
можно напрямую вставить в шаблон вместо функции comments_template()
(но делать так я крайне не рекомендую):
<?php
add_filter(
'the_content',
function( string $content ): string {
$content .= '
<script async
src="https://telegram.org/js/telegram-widget.js?21"
data-telegram-discussion="wordpress_digest"
data-comments-limit="30"
data-colorful="1"></script>
';
return $content;
},
9999999
);
Результат
Заходим на сайт и наблюдаем такую картину:
а что не телега?
Тут на сайте несколько тысяч комментариев, которые по-немногу пополняются, не хочется терять эту аужиторию и историю блога аж с 2003 года. Как раскурю API телеги до конца — сделаю гибридные комменты.
Было бы гораздо эффективней, если бы Телега дала возможность парсинга комментариев из канала в БД Вордпресс.
Это было бы дело!
А виджетов, наподобие этого — валом.
Нафиг они нужны, эти лишние виджеты и кнопки-ссылки на Телегу.
Телега дает api — кладите в базу WordPress, кто мешает?
Спасибо, очень полезно, а нет возможности встроить диалоги тет-а тет? Ну как техподдержка чтоли, типа pfka[dot]ru только бесплатно
Без подключения API Telegram и программиста — нет. Сайт по вашей ссылке — лютая дичь )
В чем именно дичь? дизайн самого сайта или что? чат вроде работает неплохо, мы его юзали несколько месяцев, но вот сделали платно, ищем варианты..
Как сделать, чтобы интерфейс был на русском?
В документации ничего про языки не указано.
Привет, добавил фильтр чтоб вывод на странице записей и нужных cpt
‘the_content’,
function( string $content ): string {
if (is_singular(‘post’) || is_singular(‘project’)) {
$content .= ‘
Проблема сейчас в том, что комментарии автоматом не появляются на сайте ((( Не знаю, с чем это связано. Приходится руками вписывать ссылку на пост в кастомное поле ACF.