Question

Je voudrais intégrer mon alimentation à mon tumblr site. Il semble que l'API a une tumblr pour cela, mais je ne suis pas tout à fait sûr de savoir comment l'utiliser. D'après ce que je comprends, je demande la page, et renvoie un fichier tumblr xml avec le contenu de mon blog. Mais comment puis-je faire alors ce xml en html sens? Dois-je analyser avec php, tourner les balises pertinentes dans les en-têtes et ainsi de suite? Je me dis que ce ne peut être que douloureux. Quelqu'un at-il des idées?

Était-ce utile?

La solution

Vous pouvez utiliser PHPTumblr , une enveloppe API écrite en PHP qui fait récupérer vos un jeu d'enfant.

Autres conseils

Il y a un javascript qui comprennent ce que cela maintenant, disponible Tumblr (vous devez vous connecter pour le voir): http: //www.tumblr.com/developers

Il serpente jusqu'à être quelque chose comme ceci:

<script type="text/javascript" src="http://{username}.tumblr.com/js"></script>

Si vous allez à http://yourblog.tumblr.com/api/read où « yourblog » devrait être remplacé par le nom de votre blog (attention, si vous hébergez votre blog Tumblr sur un domaine personnalisé, comme je le fais, l'utiliser), vous verrez la version XML de votre blog. Il arrive vraiment en désordre pour moi sur Firefox pour une raison quelconque, donc j'utiliser Chrome, essayez quelques autre navigateur, ça vous aidera à voir le fichier XML bien formé, échancrée et tel.

Une fois que vous cherchez la version XML de votre blog, notez que chaque poste a un tas de données dans un attribut = orientation « valeur ». Voici un exemple de mon 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">

Alors, il y a beaucoup de façons de le faire, je vais vous montrer celui que j'utilisé, et laisse tomber mon code sur le bas de ce post afin que vous puissiez simplement adapter à vos besoins que. Notez que le type = partie « lien »? Ou l'id = "11576453174"? Ce sont les valeurs que vous allez utiliser pour extraire des données dans votre script PHP.

Voici l'exemple:

<!-- 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="" />
    '; 
?>

Alors, c'est en fait assez simple. Le script PHP place ici des données (comme le titre de poste et le texte post) à partir du fichier xml dans les variables php, puis echos sur les variables ainsi que certains html pour créer un div qui présente un extrait d'un billet de blog. Celui-ci comporte le plus récent message texte. Ne hésitez pas à l'utiliser, allez juste et changer cette première URL pour votre propre blog. Et puis choisir ce que les valeurs que vous voulez dans votre fichier xml.

Par exemple, disons que vous voulez, pas la plus récente, mais le deuxième poste le plus récent « photo ». Vous devez changer le request_url à ceci:

$request_url = "http://wamoyo.com/api/read?type=photo&start=1"

Ou disons que vous voulez le plus récent poste avec une balise spécifique

$request_url = "http://wamoyo.com/api/read?tagged=events";

Ou disons que vous voulez un poste spécifique, il suffit d'utiliser l'identifiant

$request_url = "http://wamoyo.com/api/read?id=11576453174";

Donc tout ce que vous avez à faire est amure sur le? avec ce paramètre et utiliser un et si vous avez plusieurs paramètres.

Si vous voulez faire quelque chose colombophile, vous aurez besoin des documents de api ici tumblr: http://www.tumblr.com/docs/en/api/v2

Espérons que cela a été utile!

Il y a deux façons principales de le faire. Tout d'abord, vous pouvez analyser le xml, tirant sur le contenu des balises dont vous avez besoin (quelques façons de le faire selon que vous utilisez un analyseur SAX ou DOM). Ceci est la solution rapide et sale.

Vous pouvez également utiliser un pour convertir la source XML directement au HTML vouloir. Ceci est plus impliqué puisque vous devez apprendre la syntaxe des modèles de xslt, qui est un peu bavard.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top