Intentaré explicarlo sencillito. A grandes rasgos, phpBB separa el contenido de la web en dos tablas: posts y topics. La primera contiene el texto de los posts, y la segunda, el título de los topics y el ID del primer post del hilo.
En la vista de foro, la consulta a la base de datos se hace a la tabla topics nada más. No se necesita para nada ninguna información de la tabla posts, que como te podrás imaginar, es bastante grande (del orden de decenas de gigas). Es una consulta rápida, en plan "dame los últimos N títulos, autores y fechas de la tabla topics".
¿Qué pasa si desde la vista de foro necesitamos los primeros 1, 2 o 200 caracteres del contenido del hilo? Que no sólo tendremos que consultar la tabla pequeña y rápida topics, sino la tabla grande y pesada posts. Es decir, cada vez que tú cargues un foro, además de los 50 títulos, autores y fechas, se tendrían que solicitar 50 posts para mostrarte su contenido. Porque sí, los "tooltips" tienen que estar ya ahí en el HTML de la web, y se han tenido que obtener de la base de datos aunque tú no pases el ratón por encima, o ni siquiera sepas que existe esta función. Lo cual no es muy óptimo y probablemente acabase aumentando la carga de la web, lo que causaría que se abriesen más posts en Feedback quejándose de que EOL va lento cuando salga el chip para la PS4, y no es algo que queremos. Ten en cuenta que llevamos un E3, el ApocalyPS3 day y ahora el modchip sin dejar la web totalmente KO por cargas altas como pasaba antes. En una web como EOL tienes que medir muy bien este tipo de historias.
En este punto tenemos como mínimo dos opciones:
1) Almacenar un "resumen" del hilo en la tabla topics. No es factible porque procuramos tocar lo menos posible de la estructura actual de la base de datos, además causaría problemas al editar, y en general habría que tocar demasiado el código de phpBB.
2) Obtener dinámicamente el contenido del hilo con Javascript cuando se pasa por encima. Esto parece una mejor solución, pues sólo se obtiene para el que realmente pasa por encima. El problema es que no funcionaría bien en navegadores antiguos, móviles, o con JS desactivado. Esta opción es la que estoy manejando ahora mismo y que tendré que estudiar con detenimiento, porque aunque es fácil de hacer, es difícil de hacer bien, y que respete las modificaciones del foro (pasa como con el Tapatalk): que no se permita usar esta función para ver posts de foros de donde se está baneado, de C/V si no se tiene acceso, los posts borrados, movidos...
En resumen, mantengo lo dicho: es algo útil, interesante, y que me gustaría hacer, pero hay que mirarlo con mucha calma y tiempo, y como también he dicho, no me sobra esto último
Edit:
truster escribió:Yo lo he visto en unos cuantos foros pequeños, a lo mejor por eso, porque son pequeños y tienen pocas visitas es por lo que está implementado. Pero si dicen que en FC lo tienen también, a lo mejor ellos han encontrado una manera de no sobrecargar la base de datos, como tu dices que pasaría.
En foros pequeños claro que es más fácil. En foros como Forocoches... bueno, ellos tienen
esto