Автоматизация отправки тем Discourse на страницу Facebook с помощью Zapier

По этой теме есть много обсуждений, которые вы можете найти здесь: Search results for 'zapier' - Discourse Meta
Однако я хотел бы обсудить это подробнее.
Вот мой скрипт в Zapier для публикации новых тем на странице Facebook.

  • Я использую RSS вместо API Discourse в Zapier. Я пробовал использовать API, но возникла проблема: контент был слишком длинным, и я столкнулся с заблокированными URL-адресами. Поэтому я решил обрезать текст или сделать его кратким. В итоге я перешёл на RSS для описания.
    Я использую обрезку вместо краткого резюме (я пока использую API для создания краткого резюме и проверю его эффективность перед применением, но сначала обрезал текст).

Шаги







Результат

Ссылка на скрипт: Anytime a feed is created in RSS by Zapier, page stream in Facebook Pages. | Zapier

Как вы видите, я использую https://api.thuvienmuasam.com/rss/?url=https://thuvienmuasam.com/latest.rss вместо https://thuvienmuasam.com/latest.rss.

Поскольку описание содержит HTML-теги, я пробовал форматировать его в HTML и Markdown, но при публикации в Facebook текст всё равно отображался в исходном виде.
Может быть, стоит попробовать запрос вроде https://meta.discourse.org/latest.rss?excerpt=true с параметром excerpt=true?

Почему я не использую встроенный API? Я не нашёл поля для короткого описания, только поле с полным контентом, но при публикации он отображался в виде необработанного HTML. Это трудно читать и слишком длинно. Я хочу, чтобы пользователи переходили на сайт для просмотра полной версии.

:point_right: Есть ли другое решение для вывода статей с параметром excerpt=true при использовании USER API?

4 лайка

@simon, скорее всего, это ваш человек. Он наш эксперт по Zapier.

3 лайка

Краткие содержания тем не передаются в Zapier через официальную интеграцию Zapier с Discourse. Также краткие содержания не отправляются из Discourse, если вы подключаете веб-хук Discourse к Zapier, добавляя его в триггер веб-хука (подробности о настройке этого процесса можно найти здесь: Trigger a Zapier task with Discourse Webhooks). Однако вы можете создавать краткие содержания из необработанного содержимого поста непосредственно в Zapier. Вот как я настроил это с помощью триггера «Новый пост в Discourse»:

Сначала настройте триггер «Новый пост в Discourse». Подробная информация о настройке доступна здесь: Use the Zapier Discourse Zap Templates. После конфигурации шаг триггера должен выглядеть примерно так:

Затем добавьте шаг «Formatter by Zapier». Выберите событие «Текст». В опции «Преобразование» выберите «Обрезать». В качестве входных данных укажите «Необработанное содержимое» из вашего шага триггера и установите значение «Макс. длина» на количество символов, которое вы хотите отображать в посте. После конфигурации шаг «Текст» должен выглядеть примерно так:

В финальном шаге действия «Создать публикацию на странице Facebook» выберите необработанное значение, возвращаемое из шага «Текст»:

Обратите внимание, что если вы используете либо официальную интеграцию Discourse, либо веб-хук Discourse вместо RSS-канала, постоянная ссылка на тему не будет установлена автоматически. Вы можете сформировать постоянную ссылку в поле ввода «URL ссылки» шага действия, используя slug темы и ID темы, передаваемые из вашего начального шага триггера:

Подробности о создании постоянной ссылки, а также о добавлении шага фильтрации приведены в этой теме: Use the Zapier Discourse Zap Templates. В этом руководстве не описано, как обрезать необработанное содержимое поста. Эта информация полезна, поэтому я добавлю её туда.

Описанный мной подход также работает при подключении веб-хука Discourse к Zapier с помощью триггера веб-хука Zapier.

2 лайка

Спасибо большое, я также следовал вашему предыдущему посту о том, что конфигурация была успешной.
Но для кастомизации я думаю, что URL-адрес вроде https://api.thuvienmuasam.com/rss/?url=https://meta.discourse.org/latest.rss поможет мне с более персональной настройкой.

2 лайка