Hola! Estoy personalizando un blog de blogger y me he metido en una ratonera. Antes de contar nada, os dejo link al blog de pruebas donde ver el resultado actual con el código tal y como os lo muestro a continuación:
http://mai-plantilla.blogspot.co.at/p/blog-page_11.html
Y este es el código de la discordia:
<script>
function labelthumbs(e) {
document.write('<ul class="' + outerclass + '">');
for (var t = 0; t < numposts; t++) {
var i = e.feed.entry[t],
n = i.title.$t,
l = i.category[0].term;
var r;
if (t == e.feed.entry.length) break;
for (var o = 0; o < i.link.length; o++)
if ("alternate" == i.link[o].rel) {
r = i.link[o].href;
break;
}
var u;
try {
u = i.media$thumbnail.url
} catch (p) {
s = i.content.$t, a = s.indexOf("<img"), b = s.indexOf('src="', a), c = s.indexOf('"', b + 5), d = s.substr(b + 5, c - b - 5), u = -1 != a && -1 != b && -1 != c && "" != d ? d : "http://2.bp.blogspot.com/-mmjt8mh87bQ/VQ6ltMr8GxI/AAAAAAAAEfo/93SmjxkwmO0/s500-c/no-image-found.jpg"
}
var m = i.published.$t,
v = m.substring(0, 4),
g = m.substring(5, 7),
h = m.substring(8, 10),
f = new Array;
f[1] = "Enero", f[2] = "Febrero", f[3] = "Marzo", f[4] = "Abril", f[5] = "Mayo", f[6] = "Junio", f[7] = "Julio", f[8] = "Agosto", f[9] = "Septiembre", f[10] = "Octubre", f[11] = "Noviembre", f[12] = "Diciembre";
var A = f[parseInt(g, 10)] + " " + h + ", " + v;
<script class='java' type='text/javascript'>//<![CDATA[
var numposts = 999;
var outerclass = "menu";
var endtag = "</li>";
var intag = "div";
//]]>
</script>
<script class='java' src='http://thermofan.blogspot.co.at/feeds/posts/default/-/Verduras%20y%20hortalizas?alt=json-in-script&callback=labelthumbs&max-
results=999'></script>
Todo funciona fenomenal. He adaptado el código de la cortinilla del menú (poner el ratón sobre Pan o Mermeladas y lo veréis) en una página independiente donde mostrar un listado con imagen y fecha de la categoría completa. El problema es que solo me lista 25 item y no consigo detectar por qué...
El código no es mío, como he dicho he tuneado el del menú superior. Lo cierto es que no tengo ni idea de programar js pero sí mucha voluntad. En esta ocasión me rindo porque no doy con la solución...
No das con ello porque si no me equivoco esa funcion no limita nada. A esa funcion se le llama con un parametro e, que es un objeto que contiene muchas cosas, entre otras cosas contiene:
...
author: Array[1]
category: Array[44]
entry: Array[25]
...
Me la juego a que lo que dices tu de los 25 items es justo entry. Dicho de otra forma, creo que tendras que buscar o configurar lo de los 25 items en otro lado. Has mirado en el panel de blogger por si se pudiera configurar dentro?
El panel de blogger descartado. Acabo de hacer una prueba en mi propio blog donde tengo funcionando otro código. Lo cierto es que el que tengo no me termina de convencer porque no consigo la limpieza y efecto del traidor_25. En cualquier caso, te dejo link de ambos listados de una misma categoría. En el que tengo actualmente, sale completa y el traidor sigue en sus 25:
He buscado por la plantilla y por las llamadas a los .js el parámetro e y me he hecho un lío del ocho porque varias funciones usan variables e y no he sabido por donde coger el tema. En mi inocencia (me gusta más autollamarme inocentilla que zoquetilla) he intentado el truco de la abuela: en la que funciona, el parámetro se llama json, no? pues cambio uno por otro, paz y después gloria... evidentemente, no funciona.
Podría redefinir entry en un nuevo parámetro? o algo similar?
http://mai-plantilla.blogspot.co.at/p/blog-page_11.html
Y este es el código de la discordia:
<script>
function labelthumbs(e) {
document.write('<ul class="' + outerclass + '">');
for (var t = 0; t < numposts; t++) {
var i = e.feed.entry[t],
n = i.title.$t,
l = i.category[0].term;
var r;
if (t == e.feed.entry.length) break;
for (var o = 0; o < i.link.length; o++)
if ("alternate" == i.link[o].rel) {
r = i.link[o].href;
break;
}
var u;
try {
u = i.media$thumbnail.url
} catch (p) {
s = i.content.$t, a = s.indexOf("<img"), b = s.indexOf('src="', a), c = s.indexOf('"', b + 5), d = s.substr(b + 5, c - b - 5), u = -1 != a && -1 != b && -1 != c && "" != d ? d : "http://2.bp.blogspot.com/-mmjt8mh87bQ/VQ6ltMr8GxI/AAAAAAAAEfo/93SmjxkwmO0/s500-c/no-image-found.jpg"
}
var m = i.published.$t,
v = m.substring(0, 4),
g = m.substring(5, 7),
h = m.substring(8, 10),
f = new Array;
f[1] = "Enero", f[2] = "Febrero", f[3] = "Marzo", f[4] = "Abril", f[5] = "Mayo", f[6] = "Junio", f[7] = "Julio", f[8] = "Agosto", f[9] = "Septiembre", f[10] = "Octubre", f[11] = "Noviembre", f[12] = "Diciembre";
var A = f[parseInt(g, 10)] + " " + h + ", " + v;
document.write('<li style="float: left; padding: 10px; background: none; width: 50%;list-style: none;"><div class="post" style="width: 100%; height: auto; display: inline-block;">'), document.write('<div class="post-media"><div class="image-wrap"><img src="' + u.replace("/s72-c/", "/s400-p/") + '" alt="' + n + '"/></div></div><div class="post-body">'), "featured-slider" == outerclass && document.write('<span class="cat"><a href="/search/label/' + l + '">' + l + '</a></span><div class="post-title"><h4><a href="' + r + '">' + n + '</a></h4></div><div class="post-meta"><span class="post-date">' + A + "</span></div></div>"), "menu" == outerclass && document.write('<div class="post-title"><h2><a href="' + r + '">' + n + '</a></h2></div><span class="post-date">' + A + "</span></div>"), document.write("</" + intag + ">" + endtag)
}
document.write("</ul>")
};
//]]>
</script>
<script class='java' type='text/javascript'>//<![CDATA[
var numposts = 999;
var outerclass = "menu";
var endtag = "</li>";
var intag = "div";
//]]>
</script>
<script class='java' src='http://thermofan.blogspot.co.at/feeds/posts/default/-/Verduras%20y%20hortalizas?alt=json-in-script&callback=labelthumbs&max-
results=999'></script>
Todo funciona fenomenal. He adaptado el código de la cortinilla del menú (poner el ratón sobre Pan o Mermeladas y lo veréis) en una página independiente donde mostrar un listado con imagen y fecha de la categoría completa. El problema es que solo me lista 25 item y no consigo detectar por qué...
El código no es mío, como he dicho he tuneado el del menú superior. Lo cierto es que no tengo ni idea de programar js pero sí mucha voluntad. En esta ocasión me rindo porque no doy con la solución...
alguien sabría ayudarme?
Gracias por adelantado
03/06/2016 09:14
...
author: Array[1]
category: Array[44]
entry: Array[25]
...
Me la juego a que lo que dices tu de los 25 items es justo entry. Dicho de otra forma, creo que tendras que buscar o configurar lo de los 25 items en otro lado. Has mirado en el panel de blogger por si se pudiera configurar dentro?
03/06/2016 10:11
El panel de blogger descartado. Acabo de hacer una prueba en mi propio blog donde tengo funcionando otro código. Lo cierto es que el que tengo no me termina de convencer porque no consigo la limpieza y efecto del traidor_25. En cualquier caso, te dejo link de ambos listados de una misma categoría. En el que tengo actualmente, sale completa y el traidor sigue en sus 25:
http://hierbasyespecias-mai.blogspot.co.at/p/con-fruta.html (actual )
http://hierbasyespecias-mai.blogspot.co.at/p/function-labelthumbse-document.html (traidor_25)
He buscado por la plantilla y por las llamadas a los .js el parámetro e y me he hecho un lío del ocho porque varias funciones usan variables e y no he sabido por donde coger el tema. En mi inocencia (me gusta más autollamarme inocentilla que zoquetilla) he intentado el truco de la abuela: en la que funciona, el parámetro se llama json, no? pues cambio uno por otro, paz y después gloria... evidentemente, no funciona.
Podría redefinir entry en un nuevo parámetro? o algo similar?