2010-09-27 9 views
20

J'utilise le Tweet Button from Twitter officiel pour permettre aux utilisateurs de partager mon site.Twitter Tweet Le bouton ne compte pas

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

C'est mon code très simple d'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 régulière retournant une page web avec le code HTTP 200, c'est-à-dire aucune redirection ou similaire qui 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 au 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 shortener d'URL de Twitter (t.co), mais je ne peux pas le prouver et il semble fonctionner sur les pages d'autres personnes très bien.

Répondre

1

J'ai aussi eu ce problème et j'ai découvert qu'il était lié à la valeur de la balise de lien "canonique" que j'avais définie. Il a été mis à http: // www.iphone4simulator.com mais le bouton tweet partageait http://iphone4simulator.com car j'avais défini 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 à ce dernier, le bouton a fonctionné comme un charme!

+0

Merci, mais cela ne semble pas être le problème. J'ai préparé un nouvel exemple sur http://whattheplace.com/static/tweetbutton.html J'ai cliqué sur tous les boutons de tweet, mais seuls les deux derniers (ceux qui pointent vers un fichier .html) compteront. Je ne vois pas quelle est la différence entre les deux dernières et les troisième et quatrième URL car les deux sont des documents HTML valides sans redirection (les deux premières redirections d'URL pouvant expliquer pourquoi elles ne fonctionnent pas). – ChrisM

1

Je pense que vous manque de données 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 son rappe autour de l'ajout de cette im tout à fait sûr que vous devez « mélanger » avec le bouton Twitter lui-même, shouldn't vous soyez en utilisant 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 assez claire, j'espère que ça aide quand même! si vous expliquez plus loin je serai heureux de l'éditer! - si je connais la réponse;)

Bonne chance!

Trufa

+0

J'ai essayé le data-via mais j'ai juste ajouté un "via @ #" au texte du tweet qui est correct dans ce que je pense qu'il devrait faire selon la documentation (http://dev.twitter.com/pages/tweet_button). Mais je crains de ne pas comprendre votre deuxième recommandation. Le problème est indépendant de AddThis, il arrive aussi avec le bouton Tweet brut. – ChrisM

15

Il existe quelques problèmes possibles liés à cela. L'un d'entre eux est que si le lien est raccourci, Twitter ne l'ajoutera pas sauf si vous ajoutez la propriété url "counturl". En outre, Twitter ne tient pas compte des 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 offre la solution.

À la votre!

+1

Je l'ai essayé avec data-counturl sur http://whattheplace.com/static/tweetbutton.html (les deux boutons en bas) avec le compte Twitter non protégé @chrism_test mais cela n'a toujours pas fonctionné. :-( – ChrisM

1

vous devez utiliser les deux « comptage de données » et « data-url » si vous voulez afficher un compte et il y a un raccourcisseur url impliqué (et il y a toujours):

data-url="http://dev.twitter.com/pages/tweet_button" 
    data-count="vertical" 
1

ce n'est pas des données -url, puisque c'est l'url raccourcie ... tu n'as pas à t'inquiéter y compris ce que je ne pense pas. Définissez data-counturl = THE_PAGES_ACTUAL_URL de manière à ce que, quel que soit le raccourcisseur utilisé, le compte de votre URL réelle soit incrémenté et affiché. donc quelque chose comme ça ...data-counturl="<?php echo $_SERVER['PHP_SELF']; ?>"

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

+2

Ceci est la partie importante.La propriété 'data-counturl' doit pointer vers la DESTINATION FINALE ÉLARGI – Dex

2

J'ai eu la chance de passer de la méthode des paramètres d'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 1.5 ou supérieur.

Questions connexes