web-dev-qa-db-fra.com

Twitter Tweet Button ne compte pas

J'utilise le bouton officiel Tweet de Twitter pour permettre aux utilisateurs de partager mon site.

Le bouton lui-même fonctionne très bien, mais le compteur ne fonctionne pas et reste à zéro tout le temps. (après avoir tweeté, il est incrémenté côté client, mais si vous appuyez sur F5, il sera à nouveau nul)

Ceci est mon code très simple pour inclure le bouton:

<a href="http://Twitter.com/share" class="Twitter-share-button" data-url="http://www.whattheplace.com/Show/1/" data-count="vertical">Tweet</a>
<script type="text/javascript" src="http://platform.Twitter.com/widgets.js"></script>

L’URL spécifiée ( http://www.whattheplace.com/Show/1/ ) est une URL classique renvoyant une page Web avec le code HTTP 200, c’est-à-dire qu’aucune redirection ou une solution similaire ne pourrait peut-être confondre Twitter.

J'ai préparé un petit exemple sur http://www.whattheplace.com/static/tweetbutton.html où vous pouvez voir le problème. Sur la "vraie" page à http://www.whattheplace.com , le bouton Tweet est enveloppé par AddThis, mais le problème est exactement le même.

Je pense que cela pourrait avoir quelque chose à voir avec le nouveau raccourcisseur d'URL de Twitter (t.co), mais je ne peux pas le prouver et cela semble bien fonctionner sur les pages d'autres personnes.

20
ChrisM

Il y a quelques problèmes possibles liés à cela. L'une d'elles est que si le lien est raccourci, Twitter ne l'ajoutera pas à moins que vous ajoutiez la propriété ur "counturl". 

En outre, Twitter ne compte pas les tweets provenant de comptes protégés (comptes qui ne partagent pas leurs tweets). 

S'il vous plaît laissez-moi savoir si rien de tout cela n'offre la solution.

À votre santé!

15
Claudiu

Il faut également garder à l’esprit que les comptes Tweet ne sont pas précis en temps réel. Ils sont mis en cache et mis à jour de manière asynchrone. Voir http://dev.Twitter.com/pages/Tweet_button_faq#count-api-increment

13
mpelzsherman

J'ai eu de la chance de passer de la méthode du paramètre URL à la méthode des attributs de données.

function twtrButton(url, text, configs){
  // Create a link
  var params = {
    rel: 'canonical',
    'data-count': 'horizontal',
    href: 'http://Twitter.com/share/'
  };
  if (url) {
    params['data-url'] = url;
    params['data-counturl'] = url;
  }
  if (text) {
    if(text.length > 90){
      text = text.substring(0, 90);
      text += '...';
    }
    params['data-text'] = text;
  }
  if (configs) {
    if (configs.via) {
      params['data-via'] = configs.via;
    }
    if (configs.related) {
      params['data-related'] = configs.related;
    }
  }
  var link = $('<a>', params).addClass('Twitter-share-button');
  return link;
}

Cet extrait suppose que jQuery est 1.5 ou supérieur.

2
jessebeach

ce n'est pas data-url, puisque c'est l'URL raccourcie ... vous n'avez pas à vous soucier de l'inclure, je ne pense pas. set data-counturl = THE_PAGES_ACTUAL_URL, quel que soit le raccourcisseur utilisé, le nombre de votre URL réelle est incrémenté et affiché. alors quelque chose comme ça ... data-counturl="<?php echo $_SERVER['PHP_SELF']; ?>" 

--- humm ... tant pis, j'ai parlé trop tôt ...

1
nalin

Je pense que vous manquez data-via = "#"

<a href="http://Twitter.com/share" class="Twitter-share-button" data-url="http://www.whattheplace.com/Show/1/" data-count="vertical" data-via="#">Tweet</a><script type="text/javascript" src="http://platform.Twitter.com/widgets.js"></script>

Si vous en savez plus sur cet ajout, je suis sûr que vous devriez le "mélanger" avec le bouton Twitter lui-même, vous ne devriez pas utiliser quelque chose comme:

<!-- AddThis Button BEGIN -->
<div class="addthis_toolbox addthis_default_style">
<a class="addthis_button_facebook_like" fb:like:layout="button_count"></a>
<a class="addthis_button_Tweet"></a>
<a class="addthis_counter addthis_pill_style"></a>
</div>
<script type="text/javascript">var addthis_config = {"data_track_clickback":true};</script>
<script type="text/javascript" src="http://s7.addthis.com/js/250/addthis_widget.js#username=viralizate"></script>
<!-- AddThis Button END -->

Je ne trouve pas la question suffisamment claire, j'espère que cela aidera quand même! Si vous expliquez plus, je serai ravi de la modifier! - si je connais la réponse;)

Bonne chance!

Trufa

1
Trufa

J'ai eu ce problème aussi et j'ai découvert qu'il était lié à la valeur de la balise de lien "canonique" que j'avais définie. Il était réglé sur http: // www.iphone4simulator.com mais le bouton Tweet partageait http://iphone4simulator.com parce que j'avais configuré mes serveurs DNS pour supprimer la chaîne www de l'adresse. Dès que j'ai changé la valeur de l'URL canonique dans le balisage, le bouton a fonctionné comme un charme!

1
Ritesh Manchanda

vous devez utiliser à la fois "data-count" ET "data-url" si vous souhaitez afficher un nombre et si un raccourcisseur d'URL est impliqué (et il y en a toujours un):

  data-url="http://dev.Twitter.com/pages/Tweet_button"
  data-count="vertical"
1
Bob