Cómo crear un foro: categorías, hilos, búsqueda y control del spam
Un foro es un conjunto de categorías, hilos dentro de ellas y respuestas dentro de los hilos, además de cuentas, búsqueda y moderación. Se diferencia de un grupo de chat porque las conversaciones se organizan por tema y siguen siendo útiles durante años: alguien puede encontrar un hilo de hace tres años con la búsqueda y aun así obtener su respuesta. Para crear uno, hay que cuidar bien la página de hilo y la búsqueda, hacer que los hilos sean legibles para los buscadores si el foro es público, y tener listas las herramientas contra el spam y de moderación antes de que se registre el primer miembro de verdad.
Lo que necesita un foro
Páginas
- Lista de categorías: la portada de la mayoría de foros, con la descripción de cada categoría y su actividad más reciente.
- Lista de hilos: los hilos de una categoría, ordenados por la última respuesta, con el número de respuestas y una marca de resuelto o fijado.
- Página de hilo: la primera publicación y todas las respuestas en orden, con citas, reacciones y un cuadro de respuesta.
- Formulario de nuevo hilo: título, categoría, texto y etiquetas opcionales.
- Búsqueda: en títulos y en el texto de las publicaciones, con filtros por categoría.
- Perfil de usuario: nombre, avatar, fecha de alta, número de publicaciones y publicaciones recientes.
- Cola de moderación: publicaciones denunciadas y publicaciones pendientes de aprobación.
Datos
| Tabla | Campos clave |
|---|---|
| Usuarios | nombre, avatar, rol, nivel de confianza, fecha de alta, estado |
| Categorías | nombre, slug, descripción, orden, quién puede publicar |
| Hilos | título, slug, categoría, autor, fijado, bloqueado, resuelto, hora de la última respuesta |
| Publicaciones | hilo, autor, texto, creación, edición, oculta |
| Reacciones | publicación, usuario, tipo |
| Denuncias | publicación, denunciante, motivo, estado, decisión del moderador |
| Suscripciones | usuario, hilo (para avisar de nuevas respuestas) |
Guardar la «hora de la última respuesta» y el «número de respuestas» en el propio hilo mantiene rápida la lista de hilos, en lugar de contar las publicaciones cada vez que se carga la página.
Permisos
- Visitantes: pueden leer las categorías públicas.
- Miembros: pueden publicar y responder, y editar sus propias publicaciones durante un tiempo limitado.
- Moderadores: pueden ocultar, mover, bloquear, fijar y fusionar hilos, y suspender usuarios.
- Administradores: gestionan categorías y roles.
Una categoría privada debe comprobarse en el servidor en cada petición: la página del hilo, los resultados de búsqueda, el RSS y los avisos necesitan la misma comprobación, o las publicaciones privadas se filtran por una puerta lateral. Consulta cómo añadir control de acceso por roles.
Decisiones y compensaciones
Respuestas planas o anidadas. Los hilos planos (respuestas en orden cronológico, con citas) son más fáciles de leer y son el estándar de la mayoría de foros. Las respuestas anidadas (en árbol, al estilo de Reddit) sirven para el debate, pero se siguen mal en el móvil. Elige planas salvo que tengas una razón para no hacerlo.
Modo de preguntas y respuestas. En foros de soporte o ayuda, deja que quien hizo la pregunta marque una respuesta como aceptada y muéstrala justo debajo de la pregunta. Esta única función hace que los hilos antiguos sean mucho más útiles.
Público para el SEO o privado. Las páginas públicas de hilos pueden atraer tráfico de búsqueda constante, pero solo si los buscadores pueden leerlas. Eso significa que cada hilo tiene su propia URL limpia, un <title> real y las publicaciones en el HTML, no cargadas después con JavaScript. Pide páginas de hilo renderizadas en servidor o pre-renderizadas si el tráfico de búsqueda te importa. Más información en SEO para webs creadas con IA.
Texto enriquecido o Markdown. El Markdown con vista previa es fácil de guardar de forma segura. Un editor visual es más amable para miembros no técnicos. En cualquier caso, limpia el HTML antes de mostrarlo, para que nadie pueda inyectar scripts en una publicación.
Búsqueda. La búsqueda de texto completo de Postgres basta para los primeros años de un foro. Un servicio de búsqueda dedicado solo merece la pena a gran escala. Consulta cómo añadir búsqueda a tu app.
Spam y moderación, antes del lanzamiento
Los foros atraen spam automatizado más rápido que casi cualquier otro tipo de web, porque cada publicación es una página pública que puede llevar un enlace. Planifícalo desde el principio:
- Niveles de confianza. Las cuentas nuevas no pueden publicar enlaces ni imágenes, y sus dos o tres primeras publicaciones esperan aprobación. Después, publican con libertad.
- Límites de frecuencia. Un tope de publicaciones por minuto y por día para las cuentas nuevas.
- Verificación del correo antes de publicar.
- Botón de denuncia en cada publicación, que alimenta una cola de moderación.
- Nofollow en los enlaces de usuarios, para que los spammers no ganen nada con los buscadores.
- Un registro de moderación, para que los moderadores vean quién hizo qué y por qué.
- Normas claras fijadas en cada categoría.
Ejemplo de primer prompt
Crea un foro público de preguntas y respuestas para aficionados al café de casa. Categorías: Máquinas, Molinillos, Técnica, Granos, Compraventa. Cualquiera puede leer; los miembros se registran con correo y contraseña y verifican su correo antes de publicar. Las páginas de hilo en /t/[slug] deben renderizarse en servidor, con un título único y una meta descripción para que los buscadores puedan leerlas. Las respuestas son planas, en orden cronológico, con citas y una reacción de me gusta. Quien abre un hilo puede marcar una respuesta como aceptada, que se muestra debajo de la pregunta. Las tres primeras publicaciones de los miembros nuevos esperan la aprobación de un moderador, y no pueden incluir enlaces hasta ser aprobadas. Los moderadores pueden ocultar, bloquear, fijar y mover hilos, ver una cola de publicaciones denunciadas, y cada acción queda registrada. Añade búsqueda en títulos y publicaciones con filtro por categoría, y avisos dentro de la app cuando haya nuevas respuestas en los hilos que sigo. Guárdalo todo en una base de datos.
Pasos de construcción
- Primero la página de hilo. Crea unas cuantas categorías y cincuenta hilos realistas. Consigue que leer, citar y responder funcione bien en el móvil.
- Listas de categorías e hilos. Ordenación por actividad reciente, hilos fijados arriba y marcas de resuelto.
- Cuentas y verificación. Consulta cómo añadir inicio de sesión a tu app.
- Moderación y niveles de confianza. Cola de aprobación, denuncias, ocultar, bloquear, mover, registro. Pruébalo como una cuenta nueva que intenta publicar un enlace.
- Búsqueda. Prueba las búsquedas que escribirían tus miembros de verdad.
- SEO. Publica, abre un hilo, mira el código fuente de la página y comprueba que las publicaciones están en el HTML. Añade un mapa del sitio con los hilos.
- Contenido real. Escribe tú los primeros veinte hilos útiles, o invita a algunos expertos. Un foro vacío no recibe su primera publicación.
Errores habituales
- Lanzarlo vacío. Nadie quiere publicar primero. Siembra preguntas y respuestas reales.
- Demasiadas categorías. Cinco categorías activas valen más que veinte tranquilas. Divídelas más adelante.
- Sin aprobación para las cuentas nuevas. Los bots de spam encuentran rápido los foros nuevos.
- HTML de publicaciones sin depurar. Un script dentro de una publicación puede secuestrar la sesión de otros usuarios. Limpia siempre el contenido de los usuarios.
- Categorías privadas que se filtran. Comprueba los resultados de búsqueda y los avisos, no solo la página del hilo.
- Contar respuestas en cada carga de página. Guarda los contadores en el hilo y actualízalos cuando cambien las publicaciones.
- Sin forma de borrar una cuenta. Decide qué pasa con las publicaciones de un miembro que se va.
Cuándo es mejor el software de foros
El software de foros de código abierto o alojado, como Discourse, ha tenido años para perfeccionar los niveles de confianza, el antispam, la integración con el correo, la moderación y los diseños móviles. Si quieres un foro de propósito general y no necesitas que sea parte de otra app, instalarlo o suscribirte a uno suele ser más rápido y seguro que crearlo. Las herramientas de chat sirven para conversaciones rápidas, pero son malas para que las respuestas sigan siendo fáciles de encontrar.
Crea el tuyo cuando el foro sea parte de tu producto (un foro de soporte dentro de tu SaaS, una sección de preguntas en un marketplace), cuando necesites datos propios asociados a los hilos (el modelo de máquina, el pedido, la lección de un curso) o cuando quieras que el diseño y las URL del foro sean totalmente tuyos. Para un espacio más amplio de miembros con perfiles y eventos, consulta cómo crear una plataforma de comunidad.
Crearlo con Mythex
En Mythex describes el foro en el chat, lo pruebas en la vista previa en directo y lo publicas en una dirección pública, con dominio propio en el plan Pro. Mythex añade una base de datos Postgres dedicada para usuarios, hilos y publicaciones cuando la app la necesita, y almacenamiento de archivos para avatares e imágenes. La pila por defecto es una app de Vite y React renderizada en el navegador, así que, para un foro público, pide páginas de hilo renderizadas en servidor (Next.js es una opción) y sigue la receta de SEO. El inicio de sesión y el correo de los miembros son «trae el tuyo»: elige un enfoque y un proveedor, guarda las claves como secretos del proyecto y el agente las conecta. Usa /test para que el agente recorra la publicación y la moderación antes de publicar, y lee nuestra lista de seguridad para apps creadas con IA antes de abrir los registros.
Preguntas
¿Qué necesita una web de foro?
Categorías, hilos con respuestas, cuentas de usuario, búsqueda y herramientas de moderación. La mayoría de foros también necesita avisos de respuestas, una forma de marcar la mejor respuesta en los hilos de preguntas y respuestas, y protección antispam para las cuentas nuevas.
¿Debe un foro ser público o privado?
Un foro público puede atraer tráfico desde buscadores, porque cada hilo es una página que la gente encuentra en Google. Un foro privado es mejor para temas sensibles o para miembros de pago. Muchos foros dejan la lectura pública y piden cuenta solo para publicar.
¿Cómo evito el spam en un foro?
Limita lo que pueden hacer las cuentas nuevas: retén sus primeras publicaciones hasta aprobarlas, bloquea los enlaces hasta que hayan estado activas un tiempo, limita la frecuencia de publicación y ofrece a los miembros un botón de denuncia. Verifica el correo al registrarse y registra las acciones de los moderadores.
¿Es mejor usar un software de foros como Discourse?
Si necesitas un foro completo y rápido, un software de foros consolidado es la opción más segura: lleva años de funciones de moderación y antispam. Constrúyelo tú cuando el foro sea parte de una app más grande o necesite datos y flujos de trabajo que el software de foros general no tiene.