Pregunta

Me gustaría integrar mi alimentación en tumblr a mi página web. Parece que tumblr tiene una API para esto, pero no estoy muy seguro de cómo usarlo. Por lo que entiendo, solicito a la página, y Tumblr devuelve un archivo XML con el contenido de mi blog. Pero ¿cómo luego hacer este XML en HTML significativa? Debo analizarlo con php, convirtiendo las etiquetas relevantes en las cabeceras y así sucesivamente? Me digo que no puede ser tan doloroso. Cualquier persona tiene ideas?

¿Fue útil?

Solución

Puede utilizar PHPTumblr , una envoltura API escrita en PHP que hace que los mensajes Recuperación de una brisa.

Otros consejos

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>

Si usted va a http://yourblog.tumblr.com/api/read donde "yourblog" debe sustituirse por el nombre de su blog (tenga cuidado, si usted aloja su blog de Tumblr en un dominio personalizado, como yo, que utilice) verás la versión XML de su blog. Surge muy sucia para mí en Firefox, por alguna razón, así que uso Chrome, prueba un par de otro navegador, que va a ayudar a ver el archivo XML bien formado, con sangría y tal.

Una vez que buscas en la versión XML de su blog, notará que cada puesto tiene un montón de datos en un atributo = orientación "valor". 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 muestro el que usé, y colocar el código en la parte inferior de este post lo que sólo puede adaptar eso a sus necesidades. Observe el tipo = parte "link"? O el id = "11576453174"? Estos son los valores que vas a utilizar para extraer 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 que aquí pone de datos (como el título de la entrada y un texto posterior) del archivo XML en variables de PHP, y luego a aquellos ecos variable a lo largo con un poco de HTML para crear un div que cuenta con un fragmento de un blog. Éste ofrece el puesto de texto más reciente. Siéntase libre de usarlo, simplemente entrar y cambiar esa primera URL a su propio blog. Y luego elegir cualquiera de los valores que quiere de su archivo XML.

Por ejemplo, digamos que quieres, no es el más reciente, pero el segundo puesto más reciente "foto". 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 usar una y si tiene varios parámetros.

Si quieres hacer algo más elaborado, debes contar con la documentación de la API tumblr aquí: http://www.tumblr.com/docs/en/api/v2

Espero que esto era útil!

Hay dos formas principales de hacerlo. En primer lugar, se puede analizar el código XML, sacando el contenido de las etiquetas de las que necesita (algunas maneras de hacer esto dependiendo de si se utiliza un analizador SAX o DOM). Esta es la solución rápida y sucia.

También puede utilizar un transformación XSLT para convertir la fuente XML directamente en el html que querer. Esto es más complicado ya que tienes que aprender la sintaxis de plantillas XSLT, que es un poco detallado.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top