Los síntomas son distintos, pero el origen de la enfermedad es el mismo. De momento ya tengo conocimiento de dos. Uno es el que ayer comentaba J.Miur respecto a la desaparición del nuevo estilo que hasta ahora estaba insertado en la plantilla. Eso ha provocado que las modificaciones que pudieras haber hecho directamente en esa parte ya no estén y que los comentarios se vean de aquella manera.
La solución es volver a regenerar el estilo, pero si todavía no te lo han borrado de tu plantilla puedes aplicar una pequeña modificación preventiva que se explica en el anterior enlace de Vagabundia.
El segundo problema es el de la paginación de comentarios en posts con más de 200. Aquí lo que ocurre es que no se puede acceder a dichas páginas, siendo imposible ver nada a partir del que hace 201.
Pero también alguien -que no fui yo- ha encontrado una manera de arreglar esto. Se trata de un pequeño JavaScript que aprovechando las variables data oportunas y las direcciones que maneja Blogger para mostrar las distintas páginas, reproduce el sistema de paginación.
Aclaro que no restaura lo que sea que se haya perdido, sino que directamente construye las páginas y los enlaces a ellas con un código alternativo.
Ese alguien es el editor de Simplex Design y a continuación voy a intentar traducir lo mismo que allí podréis encontrar. Cuando no he probado algo lo advierto y esta es una de esas veces porque no tengo el sistema antiguo en ningún post con más de 200 comentarios, aunque siguiendo la lógica del código, debería funcionar y bien.
Y como hace tiempo que no lo digo, recuerdo que los experimentos se hacen con gaseosa y que para hacerlos con tu plantilla real, antes siempre deberías guardar una copia de seguridad por si se te va una tecla de más y borras algo importante accidentalmente.
Recomponer paginación de comentarios
1. Escritorio ► Pantilla ► Editar HTML ► Continuar ► Expandir plantillas de artilugios
2. Añadir estas líneas antes de ]]></b:skin>
#commentpaging {float:right;}
#commentpaging a {margin-right:5px;}
#commentpaging a {margin-right:5px;}
3. Añadir el JavaScript antes de <body> (supongo que también sirve antes de </head>)
<script type='text/javascript'>
//<![CDATA[
function commentpagination(url,comment){
var posturl= url;
var comment = comment;
cmpage = Math.ceil(comment/200);
document.write('<a href="'+posturl+'?commentPage=1">Primeros</a>');
for (var i = 1; i <= cmpage; i++) {
document.write('<a href="'+posturl+'?commentPage='+i+'">'+i+'</a>');
}
document.write('<a href="'+posturl+'?commentPage='+cmpage+'">Últimos</a>');
}
//]]>
</script>
//<![CDATA[
function commentpagination(url,comment){
var posturl= url;
var comment = comment;
cmpage = Math.ceil(comment/200);
document.write('<a href="'+posturl+'?commentPage=1">Primeros</a>');
for (var i = 1; i <= cmpage; i++) {
document.write('<a href="'+posturl+'?commentPage='+i+'">'+i+'</a>');
}
document.write('<a href="'+posturl+'?commentPage='+cmpage+'">Últimos</a>');
}
//]]>
</script>
4. Encuentra la línea <b:includable id='comments' var='post'> y justo a continuación insertas la llamada al script
<b:includable id='comments' var='post'>
<span id='commentpaging'>
<script type='text/javascript'>commentpagination("<data:post.url/>","<data:post.numComments/>");</script>
</span>
<span id='commentpaging'>
<script type='text/javascript'>commentpagination("<data:post.url/>","<data:post.numComments/>");</script>
</span>
5. Graba los cambios.
Actualización: Una mejora propuesta por J.Miur para que no salga la paginación cuando sólo hay una página, sería añadir una condición que saltaría la impresión en ese caso. En verde lo que habría que añadir:
...
cmpage = Math.ceil(comment/200);
if(cmpage>1) {
....... document.write ....... etc etc
}
cmpage = Math.ceil(comment/200);
if(cmpage>1) {
....... document.write ....... etc etc
}
Cómo funciona
Primero este script toma el número de comentarios del post y lo divide por 200. Redondea el resultado al entero mayor y así se sabe cuantas páginas hay que construir. Por ejemplo, si una entrada tiene 250 comentarios: 250:200=1,25 ► 2 páginas. De esta manera, la primera página tendrá 200 comentarios y la segunda 50.
La dirección a una página de comentarios tiene la estructura:
http://dirección del post.html?commentPage=número de página
Por ejemplo, en la página del autor, la página 2 de comentarios sería así:
http://www.thesimplexdesign.com/2011/02/simplexenews-latest-version-fixed.html?commentPage=2
Una vez conseguidos el número total de páginas de comentarios y la estructura de la dirección de cada página, el siguiente paso es muy simple, sólo escribimos debajo los enlaces a todas las páginas que pudiera haber con un bucle.
¿Vemos otro post al azar por si le encuentras utilidad?














Perfecto, Oloman. Gracias por la info. Funciona perfecto :-)
ResponderSuprimirQuién más indicado para probar paginaciones que tú, que tienes miles de comentarios en tu haber :)
SuprimirGracias por hacérmelo saber.
Recién acabo de agregarlo "oficialmente" al blog porque sólo había tenido tiempo de probarlo y reafirmo que anda perfecto.
SuprimirSólo le agregaría un detalle para evitar que se muestre siempre aunque sólo haya una página:
if(cmpage>1) {
....... document.write ....... etc etc
}
Vamos avanzando ... pese a Blogger, vamos avanzando :D
Muchas gracias. Esto me a resuelto por ahora el problema de artículos con más de 200 comentarios.
ResponderSuprimirEn mi caso aún se me sigue abriendo esa molesta página en blanco al clicar Responder de los comentarios anidados. Lo curioso es que no sucede siempre. Una veces sí otras no.
Muchas gracias por todo y estupendo blog
Saludos
Nadie me ha comentado ningún problema de ese tipo. Sí que en IE, las entradas con comentarios se quedan como congeladas cuando se accede a ellas, pero eso de que ocurra al pinchar en Responder, de verdad que es la primera vez que lo leo.
SuprimirYa está solucionado. Tras no encontrar la solución decidí cambiar de Plantilla para ver si sucedía lo mismo. Y no era así, funciona perfectamente.
SuprimirSupongo que algo habrá en mi plantilla. Tiene tantas modificaciones manuales que he perdido la cuenta y no he conseguido dar con el causante del problema que hace que al clicar el Responder actúe de esa forma.
Como digo he restaurado la plantilla y ahora funciona a las mil maravillas. Y ahora tan sólo me queda ir añadiendo las modificaciones que necesito.
Por cierto muchas gracias también por la numeración de los comentarios con sub-índices. Fenomenal!!
Lo dicho muchas, gracias por todo.
Saludos
No hay de qué ;)
SuprimirHola.
ResponderSuprimirEsto crea links a páginas de comentarios, pero no te muestra los comentarios repartidos por ellas. Todos los comentarios me siguen apareciendo en la primera página. Creo que falta algún IF por ahí... ¿no?
Saludos.
David.
Este truco era para cuando incorporaron el nuevo sistema de comentarios anidados y dejó de funcionar la paginación en los antiguos. No obstante te debería funcionar si quieres una paginación igualmente. Si tienes menos de 200 comentarios te saldrán todos en la primera página. Para probar por ejemplo a mostrar de 10 en 10, habría que cambiar ese valor en el script:
Suprimircmpage = Math.ceil(comment/10);
Eso hice pero no me funciona. Creo que eso ocurre porque ese cálculo simplemente sirve para saber cuantas páginas de comentarios con link (1 2 3...) debe imprimir, pero eso no quiere decir que al pulsar en dichos links muestre los comentarios por páginas.
SuprimirPara mostrar los comentarios por páginas supongo que debería de llamarse a otro script que, dependiendo de la página que aparece en la url actual, muestre unos comentarios (los que se corresponden con dicha página) y otros no. Pero mi conocimiento de CSS es bastante pobre.
Espera, hace tiempo de esto y no me acordaba bien. Lo siento pero erré en mi respuesta.
SuprimirLas páginas las crea Blogger de 200 en 200 por lo que dividamos como dividamos, siempre tendrán 200 comentarios. Efectivamente, el script lo único que hace es averiguar las páginas que Blogger ha creado y luego muestra enlaces a la 1, 2, 3, etc. Por cierto que lo de 3 es un decir porque pienso que más de 400 comentarios debe ser poco habitual :)
Por tanto, si tienes más de 200 te servirá para algo, pero si no, este script es inútil.