JMiur [E]

Cuando hablamos de JSON y las diferentes opciones para leer los datos de nuestro sitio o de cualquier otro, siempre nos referimos a los feeds y el feed por defecto de nuestro blog tiene la siguiente dirección:

http://miblog.blogspot.com/feeds/posts/default

no importa si usamos o no usamos Feedburner ya que este es un servicio que los "gerencia" pero el feed es siempre el mismo y lo genera Blogger.

Eventualmente, también se accede a él desde otra URL:

http://www.blogger.com/feeds/blogID/posts/default

blogID es un número que podemos ver en la  barra de recciones del navegador cuando accedemos al escritorio; por ejemplo:

http://www.blogger.com/posts.g?blogID=12345678

Los feeds de Blogger tienen un API y por lo tanto, podemos agregar parámetros (query) y, de ese modo, especificar lo que queremos que nos muestre, de este modo lo limitamos o filtramos ciertos datos.

La sintaxis para todos los parámetros ellos es siempre la misma, el primero se coloca antecediéndolo con el carácter ? y si hay más, se adicionan con el carácter & o & si es que los ponemos directamente en la plantilla.

http://miblog.blogspot.com/feeds/posts/default?parametro=valor&parametro=valor

En principio, el orden de esos parámetros es indistinto y el API de Blogger admite los siguiente:

alt indica el formato
  • alt=atom es el formato por defecto
  • alt=rss lo muestra en formato RSS 2.0
  • alt=json lo muestra en formato JSON
estos otros se usa para leerlos mediante JavaScript:
  • alt=json-in-script
  • alt=atom-in-script
  • alt=rss-in-script
y este otro, simplemente lo describe:
  • alt=atom-service

category es el parámetro que nos permite leer una etiqueta individual

http://miblog.blogspot.com/feeds/posts/default?category=NOMBRE

o bien:

http://miblog.blogspot.com/feeds/posts/default/-/NOMBRE

a diferencia de otros API del mismo Google, en Blogger no parece haber forma de combinar etiquetas o excluirlas.

max-results establece la cantidad máxima de resultados a ser leidos (por defecto 25) y su valor máximo es 500. Esto devolvería las últimas cinco entradas:

http://miblog.blogspot.com/feeds/posts/default?max-results=5

y esto, las últimas 10 en la categoría NOMBRE:

http://miblog.blogspot.com/feeds/posts/default/-/NOMBRE?max-results=10

orderby ordena los resultados y la verdad, las diferencias entre los valores parecen algo confusas; puede ser:
  • lastmodified (es el valor por defecto)
  • starttime
  • updated

start-index nos permite cargar los datos a partir de un determinado lugar; por defecto, el valor es 1 y es el parámetro que podríamos utilizar para "paginar" algo:

esto leería las últimas 20 entradas:

http://miblog.blogspot.com/feeds/posts/default?start-index=1&max-results=20

esto leería las 20 entradas siguientes:

http://miblog.blogspot.com/feeds/posts/default?start-index=21&max-results=20

published-min y published-max establecen los límites entre fechas de publicación que deben ser escritas en formato RFC 3339 algo que no es sencillo de hacer aunque hay algunos scripts que nos ayudan. Esto, leería los feeds del mes de diciembre del 2010:

http://miblog.blogspot.com/feeds/posts/default?published-min=2010-12-01T00:00:00&published-max=2010-12-31T23:59:59

updated-min, updated-max son similares a lo anterior pero, debe agregarse que el orden sea updated (sigo diciendo que no tengo idea de la diferencia):

http://miblog.blogspot.com/feeds/posts/default?updated-min=2010-12-01T00:00:00&updated-max=2010-12-31T23:59:59&orderby=updated

callback es utilizado cuando el prámetro alt es por json-in-script para indicar el nombre de la función a ser ejecutada

http://miblog.blogspot.com/feeds/posts/default?callback=mifuncion

Así como hay feeds pare entradas, también los hay para los comentarios y, ene se caso, la URL es la siguiente:

http://miblog.blogspot.com/feeds/comments/default

o bien:

http://www.blogger.com/feeds/blogID/comments/default

siendo válidos las mayorias de los parámetros anteriores.

Si quisiéramos leer los comentarios de una entrada específica deberíamos usar el ID del post que es el que vemos cuando lo editamos:

http://miblog.blogspot.com/feeds/1075572725338955545/comments/default

32 comentarios:

Domin-Omega  

Muchos sitios web usan el formáto rss para sus feeds. Conoce de algún script de terceros o algún lugar donde me pueda orientar sobre la mejor manera de manipular sus contenidos aunque el sitio no disponga de una api que se comunique directamente con javascript.
Mi intención es poder darle una estructura y formato a la información que nos brinda, para sí mostrarlo, por ejemplo, en el widget de un blog...
¿Existirá algún método más ortodoxo que leer el árbol doom y separar pieza por pieza?

Responder
JMiur  

Puedes mirar este enlace aunque con JavaScript, el proceso será más o menos eso que describes, sea visible o no si es que lo hace hace una librería externa como jQuery u otra. En general, la forma de leer feeds de manera simple es siempre via PHP.

En todo caso, si el feed soporta JSON como lo hace Blogger, allí todo es más sencillo.

Responder
Santi Folch  

Excelente Miur, gran referencia acabas de añadir.

Responder
JAIME  

Hola JMiur, no encuentro algun post apropiado para hacerte esta consulta q no tiene nada q ver con los feeds. Mira, cuando creo un menu vertical le doy un ancho general. Cada link tiene cantidades distintas de letras, por lo q en algunos casos el link es corto y otros son largos. El problema es q necesito q el efecto hover funcione igual en todos sin necesidad de pasar el mousse solo en las letras. Cuando pasas el mousse por el link siempre cambia de color de fondo no importa donde lo pases, pero para q cambie el color de las letras solo sucede si pasas el mousse por encima de ellas. Yo he visto q hay menus de este tipo q cambian todo (background y color de letras) sin necesidad de pasar el mousse EXACTAMENTE en las letras como sucede por ejemplo en los menus desplegables de los exploradores. Estuve buscando info pero no encuentro, gracias.

Responder
JMiur  

Habría que ver el ejemplo concreto. En general, suponiendo que cada item de ese menú es algo así:

<li>
<a href="xxx"> un item </a>
</li>

el efecto hover en LI sería:
li:hover { background-color: white; } /* cambiará el color de fondo a blanco */

el efecto hover en A sería:
li a { color: red; } /* cambiará el color del texto a rojo*/

y estas tres reglas harán que cambien ambas cosas:
li:hover { background-color: white; }
li a { color: red; }
li:hover a { color: red !important; }

Responder
Yeyas  

Yo uso este css para el over de un link de un menu cualquiera:

menu li:hover{background:xxxxxx; text-decoration:none;}
menu a:hover{color: tttttt; text-decoration:none;}

o a veces este:

menu li a:hover{color: #fff; background: tttttt; text-decoration: none;}

y me funciona bien, pero mi problema es q el cambio en "a" solo sucede cuando pasas el cursor por las letras y no cuando pasas por un espacio libre pero siempre dentro del casillero del link.

Un ejemplo en la side bar de este blog: http://ryeyas.blogspot.com/ (para q cambien las letras a negro solo sucede si pasas el cursor por las letras pero mientras no choques con ellas no pasa nada, solo cambia el color de fondo, el problema es cuando los anchos son muy grandes y queda mucho espacio libre en un link de pocas letras)

Nota: de las tres reglas q pones la segunda no seria una orden para efecto over (?) y la tercera no sabia q tambien funcionaba poniendo la "a" despues del "hover" (?) ... no creo q tu te equivoques pero entre en duda, gracias.

Responder
JMiur  

Yeyas:
Sería la misma respuesta que para el comentario anterior. Efectivamente, en li a debería decir li a:hover.

De todos modos, si lo que quieres es que cambie el color del enlace al pasar el cursor encima de la lista, sólo te falta poner la tercera regla:

.sidebar li:hover a { color: red; }

con el color que quieras, claro y allí, !important, depende de como esten ordenadas todas las propiedades; no es obligatorio que esté salvo, cuando no funciona :-)

Responder
JAIME  

Ok, funcionó!!, pero hay algo q no es como lo esperaba :( , el vinculo solo funciona estando el cursor en las letras... crees q se pueda arreglar para q el vinculo funcione no solamente estando el cursor en las letras sino en zonas sin letras???

Gracias JMiur !!!

Responder
JMiur  

Es exactamente eso lo que pasará.

Si lo que quieres es que el enlace sea de un tamaño equivalente al que en este momento tiene la etiqueta LI, entonces debe ser un bloque y debes darle un tamaño (widht height) y allí colocar el fondo y los efectos hover.

Responder
JAIME  

sos un GENIO!!!!!! ya esta, millon de gracias, quedo como queria, te sigo leyendo :D

Responder
Karla  

Uy JMiur Excelente!, había leído sobre las sintaxis para mostrar etiquetas específicas de los feed en blogger, pero no conocía todos lo parámetros, esto es muy, pero muy útil...

Gracias JMiur y que tengas un estupendendo fin de semana ;)

Responder
JMiur  

Gracias, Karla. Igualmente.

Responder
Felipe  

Un parámetro que me gusta mucho, sobre todo para ver los feeds antes de emplearlos es usar prettyprint=true ..se ve mas bonito y organizado, jejeje. :)

Responder
Juan Carlos  

Muchas gracias por tu blog. Me está ayudando mucho a mejorar el aspecto del mio y que su visita resulte mas agradable.

Lo que me estoy encontrando con un problema con el feed: cuando entran les aparece en ingles y no consigo por ningún lado que el idioma por defecto sea castellano:
http://feeds.feedburner.com/EsteMundoEsTanGrande

Además, veo que en tu feed es posible suscribirse a muchos mas servicios ¿Como puedo hacer lo mismo en el mio?

Gracias por adelantado

Responder
Juan Carlos  

Ah, otra cosa: veo que en tu feed te da la opción de suscribirte por mail, y creo que es otra opción interesante a tener.

Responder
JMiur  

Si buscas en la etiqueta Feedburner verás varias entradas con las respuestas.

El idioma, el incluir otros servicios y la suscripción por mail son todas opciones que debes configurar en la misma cuenta de Feedburner.

Responder
Lamunix  

Gracias

Responder
Jorge Luis  

Jmiur y es posible que exista un parametro de busqueda? e intentado con el parametro "q=" pero no me funciona.

Responder
JMiur  

No. Ese parámetro no es accesible:

Blogger does not support the q (text search) and author parameters.

Blogger API Feeds

Responder
Somos los Ex-Alumnos del Colegio Eugenio Diaz Castro  

Hola buenas tardes, miren yo soy nuevo en esto de los blogs y encuentro este blog muy desarrollado.

Quisiera por este medio, simplemente consultarles unas cositas a ustedes que son expertos.

solo quiero que en mi blog las personas puedan comentar y que esos comentarios estén a la vista en la pagina principal,busco en Internet y me hablan de un elemento feed, pero en mi menú de gagget no esta.

Quisiera que simplemente usuarios de correos de google pudieran comentar (por que nuestros amigos no son usuarios de blogger).

También quisiera que las personas pudieran suscribirse para recibir entradas en su e-mail.

todo eso que les comento ustedes lo tiene aquí, y no he podido encontrar una información bien clara sobre este sentido.
Si me pueden colaborar, pueden enviarme un correo al e-mail equinetro2@gmail.com

Responder
JMiur  

En Blogger, los comentarios no pueden ser mostrados en la página principal; sólo son visibles en las páginas individuales.

El elemento Feed está en todos; revisa bien; se encunetra más o menos por la mitad de la lista aunque no serviría para eso.

En la Configuración | Comentarios, allí verás: Persona que puede realizar los comentarios y en tu caso, deberías marcar Usuarios con cuentas de Google.

Para suscribirse por mail deberás agregar un servicio como, por ejemplo Feedburner. Fíjate en esta entrada.

Responder
Felipe  

El parámetro orderby=lastmodified parece que dejó de ser funcional, creo que su similar ahora es orderby=published
Otro que no aparece documentado -aunque poco servirá- es orderby=edited que devuelve lo mismo que orderby=updated

Responder
Felipe  

Este otro si es una novedad, no tenía ni idea que las páginas estáticas tenían feeds:
feeds/pages/default
¿Útil? Maybe :D

Responder
JMiur  

Pués, no sé qué utilidad podría tener; supongo que eso dependerá del contenido que tengan y de qué se quiere hacer con ellas. Si son realmente estáticas, no parece ser algo demasiado útil ya que su contenido no variará con el tiempo pero, puede usarse para mostrarlas resumidas o cosas similares.

Responder
Canal Android  

Muchas gracias, resulta muy interesante. Una duda: ¿se podría incluir el código http://miblog.blogspot.com/feeds/posts/default?start-index=1&max-results=1 en una entrada de blogger para que allí se mostrara directamente el contenido del primer ítem del feed?

Saludos y gracias por tu blog.

Responder
JMiur  

http://miblog.blogspot.com/feeds/posts/default?start-index=1&max-results=1
no es un código, es una dirección URL por lo tanto, así solo, no mostraría nada.

Para mostrar un post, debería usarse un script y leerla con Json con.

Responder
Daniel Fernández  

Lástima que no se pueda excluir etiquetas, me tocó traerme todo el feed para poder hacerlo. Me sirvió mucho este post, gracias por el aporte.

Responder
Felipe  

Hola de nuevo JMiur.
Ahora con los nuevos comentarios anidados de Blogger de suma al menos un nuevo parámetro para el feed de comentarios.
Me llama la atención &reverse=false que permite ordenar todos los comentarios del blog o de un post individual en forma "cronológica inversa", por así decirlo.
Otro que aparece en los nuevos scripts es v=2 pero aun no identifico para que sirve.

Responder
JMiur  

Puede ser que v=x indique la versión, quien sabe.

Responder
CuriosaHistoria  

Hola

Muy interesante tu blog, estoy buscando información por Internet y no encuentro lo que necesito ¿Sabes si se pueden pasar parámetros a las urls de blogspot?, es decir, necesito una para mostrar un determinado artículo sin los comentarios pero no sé si existe la posibilidad, busco algo así como www.miblog.blogspot.com/url-interesante?comentarios=no, o de alguna otra manera sin necesidad de quitarlos del blog.

Muchas gracias de antemano

Responder
CuriosaHistoria  

Se me ha olvidado decir que es por una aplicación android que estoy haciendo para leer un blog mío

JMiur  

Se pueden pasar parámetros y leerlos con JavaScript. Un ejemplo

Pero para hacer eso, basta marcar la opción en el editor del post.

Responder

¿Quiere dejar un comentario?

recuerde que los comentarios están siendo moderados y serán publicados a la brevedad ...

Todos los archivos y demos alojados en Fileden han sido redireccionados y deberían estar funcionando correctamente.
De todos modos, también puede accederse a ellos a través de SkyDrive

Nota: sólo los miembros de este blog pueden publicar comentarios.

Si le gusta ir a lo seguro utilice este botón para abrir los comentarios en una ventana modal en esta misma pagina.

Si añora tiempos idos, use este enlace para agregar un comentario al viejo estilo ...

 
CERRAR