Hola a todos,
tengo un problema muy extraño con los comentarios. Hice una primera instalación de mi sitio web con drupal 7.8 (o 9, no recuedo bien) y he ido actualizando a las distintas versiones según han ido saliendo. El problema es que en la última actualización a las 7.12 los comentarios están fallando de una forma muy rara. Cuando un usuario (anónimo o logado, da igual) entra en un nodo, la información del action del formulario de comentarios se carga bien. Pero en cuanto navega a otro nodo, esta no se refresca y sigue apuntando al primer nodo que se visitó. Esto ocurre hasta que se fuerza alguna acción de refresco de la sesión (o se hace logout, o se cierra el navegador, ...).
Como digo, esto ha empezado desde la última versión de drupal, aunque no se si por el propio core o por algún módulo de los que se han actualizado a raíz de esto.
Yo pienso que tiene algo que ver con las sesiones de usuarios, que no se están refrescando correctamente al cambiar de nodo. Lo que no se es dónde puedo mirar.
Alguien tiene idea de qué podría estar pasando o por dónde puedo investigar?
Muchas gracias por adelantado
Comments
Panels
Hola,
siguiendo con mi investigación, he visto que si desactivo el módulo de Panels (tengo la última versión, la 7.x-3.0) el tema del action en los comentarios funciona correctamente. Lo malo es que el resto del sitio se estropea, así que no es solución :-(
Alguien tendría alguna idea de qué puedo hacer para solucionarlo? O a lo mejor se puede hacer algo para controlar cómo se genera el formulario de comentarios... Esto último sería una opción?
Parche
Por si os interesa, creo que he solventado (mejor dicho, parcheado) el problema.
Como indicaba, la pista de que el problema viene por un mal refresco de las variables de caché parece haber sido acertada. Lo que he hecho es forzar el refresco de la caché justo antes de llamar a renderizar el formulario de comentarios:
print render($page['content']);
cache_clear_all('*', 'cache', TRUE);
print render($content['comments']);
Ya se que es una solución chapucera, pero al menos está funcionando. La solución definitiva creo que depende del módulo CTools, porque encontré algún caso similar entre los bugs abiertos.