Para integrar datos externos en Discourse, probablemente necesitarás un plugin para hacerlo correctamente, de modo que puedas almacenar los datos en caché en el servidor y programar actualizaciones, evitando delegar esta tarea al cliente, lo que ralentizaría considerablemente la carga de las páginas.
Te recomiendo comenzar por entender cómo escribir plugins: Developing Discourse Plugins - Part 1 - Create a basic plugin
El conocimiento del sistema de temas es muy útil: Developing Discourse Themes & Theme Components
El sistema de widgets: A tour of how the Widget (Virtual DOM) code in Discourse works
La API de WordPress si tu sitio web fuente es WordPress: REST API Handbook | Developer.WordPress.org
Nokogiri para extracción de datos: https://nokogiri.org/