Suivez les fils RSS
 

Des livres incontournables pour tout maîtriser

  • CSS avancées - vers HTML5 et CSS3
  • HTML5
  • CSS2
  • PHP5 avanc�
  • Memento MySQL
  • Memento CSS 3
  • Memento XHTML
  • WordPress 3 100% pratique
  • jQuery et jQuery UI
Auteur
jmlapam
#
Citer
Bazinga !
2148 Posts
Salut,

Sur mon site j'utilise l'API status de twitter pour ramener mes tweets.
J'ai limité le nombre de tweets dans la time line à 5 dans mon code, mais je n'ai pratiquement jamais les 5 en question, c'est soit 2 soit 3 ...



Cela ne me dérange pas plus que cela mais j'aimerais comprendre pourquoi.
Merci d'avance.
Jm.

Don't <li> !

http://jmperso.eu 
^
PanPan50
#
Citer
63 Posts
Est-ce que tu retweets souvent ? Regarde de ce côté !

http://www.guillaumeavoine.com/ 
^
jmlapam
#
Citer
Bazinga !
2148 Posts
OUi exact les retweets ne sont pas pris en compte
Je vais regarder de ce côté merci


EDIT: Cela vient effectivement de là, pourtant leur widget insère les retweets faut que je vois si je peux l'intégrer à mon bout de PHP.
Modifié par jmlapam (07 Feb 2012 - 18:52)

Don't <li> !

http://jmperso.eu 
^
erwan21a
#
Citer
2 Posts
Bonjour,

Je me permet de compléter cette discussion plutôt que d'en créer une autre parce que la base du problème est la même.

J'utilise l'API de Twitter afin de récupérer mes tweets puis le script Blogger.js afin de traiter les informations. Un petit coup de css et c'est parfaitement intégré à mon site.
Seulement, je ne récupère que les tweets que j'ai mon même rédigé et j'aimerais également afficher les retweets que je fais.

Après avoir consulté la documentation de l'API Twitter (içi : https://dev.twitter.com/docs/api/1/get/statuses/user_timeline) j'ai trouvé l'argument include_rts qui d'après ce que j'ai compris devrais résoudre la chose.
Seulement ça ne fonctionne pas, les retweets ne sont toujours pas pris en compte....


Voila le json que j'utilise (sans mon vrai pseudo) :
<script type="text/javascript" src="http://twitter.com/statuses/user_timeline/MONPSEUDO.json?callback=twitterCallback2&count=11&include_rts=true"></script>


Le script Blogger.js à peine modifié :
function twitterCallback2(twitters) {
  var statusHTML = [];
  for (var i=0; i<twitters.length; i++){
    var username = twitters.user.screen_name;
    var status = twitters[i].text.replace(/((https?|s?ftp|ssh)\:\/\/[^"\s\<\>]*[^.,;'">\:\s\<\>\)\]\!])/g, function(url) {
      return '<a href="'+url+'">'+url+'</a>';
    }).replace(/\B@([_a-z0-9]+)/ig, function(reply) {
      return  reply.charAt(0)+'<a href="http://twitter.com/'+reply.substring(1)+'">'+reply.substring(1)+'</a>';
    });
    statusHTML.push('<li><span>'+status+'</span> <a class="date_twitter" href="http://twitter.com/'+username+'/statuses/'+twitters[i].id_str+'">'+relative_time(twitters[i].created_at)+'</a></li>');
  }
  document.getElementById('twitter_update_list').innerHTML = statusHTML.join('');
}

function relative_time(time_value) {
  var values = time_value.split(" ");
  time_value = values[1] + " " + values[2] + ", " + values[5] + " " + values[3];
  var parsed_date = Date.parse(time_value);
  var relative_to = (arguments.length > 1) ? arguments[1] : new Date();
  var delta = parseInt((relative_to.getTime() - parsed_date) / 1000);
  delta = delta + (relative_to.getTimezoneOffset() * 60);

  if (delta < 60) {
    return 'il y a moins d\'une minute';
  } else if(delta < 120) {
    return 'il y a quelques minutes';
  } else if(delta < (60*60)) {
    return 'il y a ' + (parseInt(delta / 60)).toString() + ' minutes';
  } else if(delta < (120*60)) {
    return 'il y a environ une heure';
  } else if(delta < (24*60*60)) {
    return 'il y a ' + (parseInt(delta / 3600)).toString() + ' heures';
  } else if(delta < (48*60*60)) {
    return '1 day ago';
  } else {
    return 'il y a ' + (parseInt(delta / 86400)).toString() + ' jours';
  }
}


Merci de votre petit coup de main. smile
[/i][/i][/i]

^
erwan21a
#
Citer
2 Posts
Bon, il faut apparemment passer par home_timeline et non pas user_timeline.

Mais
http://twitter.com/statuses/home_timeline/MONPSEUDO.json?callback=twitterCallback2&amp;count=11
ne fonctionne pas. La syntaxe pour le home_timeline doit différer...

^