Me gustaría integrar mi feed tumblr en mi sitio web. Parece que tumblr tiene una API para esto, pero no estoy muy seguro de cómo usarlo. Por lo que entiendo, solicito la página, y tumblr devuelve un archivo xml con los contenidos de mi blog. ¿Pero cómo puedo hacer de este xml un html significativo? ¿Debo analizarlo con php, convertir las etiquetas relevantes en encabezados, etc.? Me digo a mí mismo que no puede ser tan doloroso. Alguien tiene alguna idea?Integración del blog tumblr con el sitio web
Respuesta
Existen dos formas principales de hacerlo. Primero, puede analizar el xml, extrayendo el contenido de las etiquetas que necesita (algunas formas de hacerlo dependiendo de si usa un analizador SAX o DOM). Esta es la solución rápida y sucia.
También puede usar un XSLT transformation para convertir la fuente xml directamente al html que desee. Esto es más complicado ya que tiene que aprender la sintaxis para las plantillas xslt, que es un poco detallado.
Hay una inclusión de JavaScript que hace esto ahora, disponible en Tumblr (hay que iniciar sesión para verlo): http://www.tumblr.com/developers
Se termina siendo algo como esto:
<script type="text/javascript" src="http://{username}.tumblr.com/js"></script>
Esta es una manera muy fácil y funciona. También puede agregar? Num = 4 después de js para determinar cuántas publicaciones se muestran (aquí sería 4). También puede ajustar esto con css, pero la desventaja de este método es que no se muestran los tiempos – CodeVirtuoso
¿Cómo se configura el desplazamiento? El resultado comienza en –
Si bien parece que hay más opciones (consulte aquí: http://www.tumblr.com/docs/en/api/v2#posts), parece que se ignora el desplazamiento. Sin embargo, podría usar la API completa para un mejor control. – kweerious
Si usted va a http://yourblog.tumblr.com/api/read donde "yourblog" debe reemplazarse con el nombre de su blog (tenga cuidado, si aloja su blog de Tumblr en un dominio personalizado, como yo uso, use eso) verá la versión XML de su blog. Me sale realmente complicado en Firefox por alguna razón, así que uso Chrome, pruebe un par de navegadores diferentes, ayudará a ver el archivo XML bien formado, con sangría y demás.
Una vez que esté viendo la versión XML de su blog, observe que cada publicación tiene una serie de datos en una orientación attribute = "value". Aquí está un ejemplo de mi blog:
<post id="11576453174" url="http://wamoyo.com/post/11576453174" url-with-slug="http://wamoyo.com/post/11576453174/100-year-old-marathoner-finishes-race" type="link" date-gmt="2011-10-17 18:01:27 GMT" date="Mon, 17 Oct 2011 14:01:27" unix-timestamp="1318874487" format="html" reblog-key="E2Eype7F" slug="100-year-old-marathoner-finishes-race" bookmarklet="true">
Por lo tanto, hay un montón de maneras de hacer esto, te voy a mostrar el que usé, y caer mi código en la parte inferior de este post lo que sólo puede sastre que a tus necesidades Observe la parte type = "link"? O el ID = "11576453174"? Estos son los valores que usará para obtener datos en su script PHP.
Aquí está el ejemplo:
<!-- The Latest Text Post -->
<?php
echo "";
$request_url = "http://wamoyo.com/api/read?type=regular"; //get xml file
$xml = simplexml_load_file($request_url); //load it
$title = $xml->posts->post->{'regular-title'}; //load post title into $title
$post = $xml->posts->post->{'regular-body'}; //load post body into $post
$link = $xml->posts->post['url']; //load url of blog post into $link
$small_post = substr($post,0,350); //shorten post body to 350 characters
echo // spit that baby out with some stylish html
'<div class="panel" style="width:220px;margin:0 auto;text-align:left;">
<h1 class="med georgia bold italic black">'.$title.'</h1>'
. '<br />'
. '<span>'.$small_post.'</span>' . '...'
. '<br /></br><div style="text-align:right;"><a class="bold italic blu georgia" href="'.$link.'">Read More...</a></div>
</div>
<img style="position:relative;top:-6px;" src="pic/shadow.png" alt="" />
';
?>
Por lo tanto, esto es en realidad bastante simple. El script PHP aquí coloca datos (como el título del post y el texto del post) del archivo xml en variables php, y luego borra esas variables junto con algunos html para crear un div que incluye un fragmento de una publicación del blog. Esta cuenta con la publicación de texto más reciente. Siéntase libre de usarlo, solo ingrese y cambie esa primera URL a su propio blog. Y luego elija los valores que desee de su archivo xml.
Por ejemplo, digamos que desea, no es la más reciente, sino la segunda publicación de "foto" más reciente.Usted tiene que cambiar el request_url a esto:
$request_url = "http://wamoyo.com/api/read?type=photo&start=1"
O digamos que desea que el mensaje más reciente con una etiqueta específica
$request_url = "http://wamoyo.com/api/read?tagged=events";
O digamos que quieres un puesto específico, sólo tiene que utilizar el id
$request_url = "http://wamoyo.com/api/read?id=11576453174";
Así que todo lo que tiene que hacer es tachuela en el? con cualquier parámetro y use un & si tiene múltiples parámetros.
Si usted quiere hacer algo más elaborado, necesitará la documentación de la API tumblr aquí: http://www.tumblr.com/docs/en/api/v2
la esperanza que esto era útil!
Creo que también puede usar 'yourblogname.tumblr.com' en nombres de dominio personalizados. Por ejemplo, 'crystilogic.tumblr.com/api/read/json' funciona para mí, pero' crystilogic.tumblr.com' redirige a 'mixingmemory.org'. – isomorphismes
Sí, definitivamente cierto. Santo ... ¡HAHA! He aprendido mucho desde que hice esta pregunta, jajaja. Estoy haciendo cosas de node.js ahora, algo genial para ver cuánto he aprendido. Gracias stackoverflow people! – Costa
- 1. Integración del calendario de Outlook al sitio web/Otro
- 2. Integración de Magento con un sitio web estático simple
- 3. Decisiones arquitectónicas: sitio principal, foro, blog
- 4. Carpeta diferente como subcarpeta del sitio web
- 5. ¿Cómo puedo cambiar la URL de la publicación del blog de un sitio web de Jekyll?
- 6. Obtener el favicon del sitio web con JS
- 7. Problemas con el raspado del sitio web usando zombie.js
- 8. Obtener datos del sitio web
- 9. Solución de análisis web para el creador del sitio web
- 10. subcarpeta IIS en el sitio web diferente
- 11. Selección del idioma del sitio web
- 12. memcached ralentiza el sitio web
- 13. Integración completa del calendario de Google con el sitio de Rails 3
- 14. Convertir el sitio web del sistema de archivos al sitio web de IIS
- 15. Administración del sitio web: ¿está integrado en el sitio web principal o en una sección separada?
- 16. Integración de aplicaciones web con Drupal
- 17. Sitio web protegido con contraseña con JavaScript
- 18. Sitio web que habla con la aplicación del cliente?
- 19. Buenas prácticas del sitio web con protección SSL
- 20. Caché de imágenes del sitio web con Apache
- 21. Imprimir automáticamente la imagen del sitio web
- 22. Agregar un blog a una página web existente
- 23. ¿Podemos medir la complejidad del sitio web?
- 24. Integración de IIS Express Visual Studio - Cambio del nombre del sitio
- 25. Sistema de insignia del sitio web
- 26. Extracto del blog en Django
- 27. Despliegue del sitio web en Amazon AWS
- 28. ¿Vista previa del sitio web de Javascript?
- 29. Enumerando todas las publicaciones del blog (con contenido) con Jekyll
- 30. Pie de página tipo Tumblr
La pregunta menciona específicamente a php, por lo que está relacionado con la programación. –