¿Cómo sincronizar el recuento de vistas de temas con el discurso?

Hola a todos:

He creado una VUE SPA con la API de Discourse para usarla en WordPress y me preguntaba si hay alguna forma de enviar una solicitud POST para actualizar el recuento de vistas del tema en Discourse cuando un usuario abre el tema en WordPress.

2 Me gusta

Hola Alex,

Tengo curiosidad por saber un poco más sobre esto. ¿Puedes compartir algo?

Ver las publicaciones extraídas por el plugin WP Discourse no crea nuevas vistas en Discourse, sin embargo, si utilizas el punto final show estándar en topics_controller y pasas la verificación resaltada a continuación, la “vista” se rastreará. Ten en cuenta que el uso de una clave API significará que hay un current_user.

Nota

Una cosa a tener en cuenta al leer ese código es que TopicView no es realmente el droide que estás buscando (es un modelo que maneja los datos serializados cuando se muestra un tema). El modelo real de “vista de tema” es TopicViewItem.

3 Me gusta

Hola @angus,

Gracias por tu perspectiva. Investigaré la base de código para las vistas de temas.

Con respecto a la aplicación SPA:

Originalmente teníamos un plugin de foro en Wordpress, que crea su propio tipo de publicación para preguntas y respuestas, así como categorías y etiquetas. Al configurar el SSO con el plugin WP Discourse, habilité Webhooks en Discourse para sincronizar temas con Wordpress con ese tipo de publicación, y usé la incrustación para las respuestas.

En este punto, el frontend del foro es aburrido ya que cada elemento de pregunta que depende de sus datos de WP solo puede mostrar el título y el autor, y me gustaría mostrar también el póster, las vistas, los me gusta y el estado de las respuestas. No tenía sentido para mí modificar ese plugin.

Con una SPA, obtener y mostrar datos sería mucho más rápido y flexible. Muestra los últimos temas paginados y una barra lateral con los temas principales, incluida la capacidad de filtrar/buscar.

Originalmente, en la vista de detalles del tema, quería manejar también la visualización de las respuestas. Por alguna razón, las respuestas incrustadas estaban mostrando el nombre de usuario del póster en lugar del nombre completo.

También me encontré con problemas con los emojis y otros recursos que son relativos al sitio de Discourse, así que volví a usar las incrustaciones.

Otro problema fue el SEO, pude manejarlo con el hook wp_head en WordPress.

1 me gusta