15

Conserver le nombre de tweets/like d’une page après une redirection 301

tweet-like-shareJe ne vous apprends rien: la majeure partie des boutons sociaux permettent d'afficher un compteur comptabilisant le nombre de tweets, like, +1 ou autres shares en tout genre. Mais en cas de modification de l'URL d'une page, en ayant pris soin de rediriger l'ancienne URL vers la nouvelle en 301, ces "votes" peuvent repartirent à 0... (dommage pour une page avec de nombreux like/retweets/share) Tout simplement parce qu'une nouvelle URL (référence) est créée et peu de réseaux sociaux prennent en compte les redirections permanentes (excepté Google+ et Twitter d'après un test de Daniel de Seomix). Heureusement, de nombreuses options sont disponibles pour paramétrer ces boutons de partage afin d'éviter ces cas de figure.

Par défaut, ces boutons prennent l'URL de la page en cours, page sur laquelle ils ont été installés (document.location.href), mais heureusement il est possible de forcer cette URL. En cas de redirection 301, on va forcer l'ancienne URL sur le "bouton Retweet": la comptabilisation des anciens tweets se fera encore, et les nouveaux retweets seront comptabilisés avec l'ancienne URL qui sert de référence (si les boutons sont utilisés et l'URL non copiée/collée). Au final, l'internaute arrivera toujours sur la nouvelle URL puisque la redirection 301 se fera normalement.

Voici quelques exemples: Nombre de tweets de l'URL http://www.yapasdequoi.com/ancienne-url

Bouton Twitter

On force l'ancienne URL via l'attribut data-url du lien <a href...>:

<a href="https://twitter.com/share" class="twitter-share-button" data-url="http://www.yapasdequoi.com/ancienne-url" data-via="aymerictwit" data-lang="fr">Tweeter</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>

Résultat nombre de retweets:


Bouton Like Facebook

On force l'ancienne URL via l'attribut data-href du div Facebook <div ...> après avoir inclu le Javascript SDK:

<div class="fb-like" data-href="http://www.yapasdequoi.com/ancienne-url" data-send="false" data-width="450" data-show-faces="false"></div>

Résultat Like Facebook:

Bouton +1 Google

On force l'ancienne URL via l'attribut href du bouton <g:plusone...>:

<!-- Placez cette balise là où vous souhaitez positionner le bouton +1. -->
<g:plusone annotation="inline" href="http://www.yapasdequoi.com/ancienne-url"></g:plusone>

<!-- Placez cet appel d'affichage à l'endroit approprié. -->
<script type="text/javascript">
window.___gcfg = {lang: 'fr'};

(function() {
var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
po.src = 'https://apis.google.com/js/plusone.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
})();
</script>

Résultat Google+1:



Bouton Linkedin

On force l'ancienne URL via le paramètre data-url pour le <script type="IN/Share"...>:

<script src="http://platform.linkedin.com/in.js" type="text/javascript"></script>
<script type="IN/Share" data-url="http://www.yapasdequoi.com/ancienne-url" data-counter="right"></script>

Résultat bouton Share Linkedin:


Bouton Addthis

On force l'ancienne URL via le paramètre addthis:url de chaque bouton <a class...>:

<!-- AddThis Button BEGIN -->
<div class="addthis_toolbox addthis_default_style ">
<a class="addthis_counter addthis_pill_style" addthis:url="http://www.yapasdequoi.com/ancienne-url"></a>
</div>
<script type="text/javascript" src="http://s7.addthis.com/js/250/addthis_widget.js#pubid=xa-4f31ab4604f1176b"></script>
<!-- AddThis Button END -->

Résultat bouton Addthis:

Conclusion

Cette page a été retweetée des milliers de fois ^_^:

Plus sérieusement, je vous recommande vivement la lecture de l'article de Daniel Roch (Seomix) concernant les redirections 301 et les réseaux sociaux ainsi que l'article de Sylvain Fouillaud qui avait effectué un test sur Twitter et le référencement.

N'oubliez pas non plus de participer au test SEO/SMO de @lunicrea!

Au fait, les vrais boutons de partage de cet article sont juste en dessous 😉

 

15 commentaires

  1. Arrête moi si je me trompe, mais du coup les nouveaux Tweets, +1 et autres J’aime se font toujours sur l’ancienne URL, non ?

    (Au passage, toujours pas de page Google+ ? Je suis déception :'( )

    • Oui, ils se font toujours su l’ancienne URL mais au moins les compteurs ne sont pas remis à 0. Mais ça peut effectivement poser un problème d’un point de vue poids SEO/SMO, bien que Twitter et G+ gèrent apparemment bien les 301. Par contre, il y a toujours le risque qu’une personne Tweet la nouvelle URL aussi…

    • Non, tu ne te trompes pas! Du coup, risque de voir un autre compteur de “votes” s’incrémenter à savoir celui de la nouvelle URL si les internautes n’utilisent pas les boutons modifiés… Et pour la page G+, j’y songe;)

  2. Zut je pensais que tu donnais une solution qui permettait de ne plus renseigner l’ancienne URL :s
    Je ne comprends pas pourquoi les réseaux sociaux n’intègrent pas un système permettant de signaler qu’une URL à changé, il leur suffirait de vérifier que l’URL en question renvoit une 301 et le tour serait joué !

  3. Une bonne manière de faire croire qu’on la page a plus de popularité qu’en réalité. Mais une fois qu’on clique sur le bouton “Share” la supercherie est découverte. 🙂

    Pierre

  4. Merci d’avoir pris le temps d’avoir cherché comme faire … effectivement je m’étais déjà posé cette question sans avoir eu le “courage” de mon coté !

  5. Comme je l’ai dit sur twitter, cette solution est malheureusement bancale, puisqu’on ne conserve que l’aspect visuel du nombre de votes de l’ancienne URL.

    Déjà, je ne suis pas sûr que les votes continuent à pris en compte depuis l’ancienne URL (mais c’est là toute la problématique de la redirection 301), mais surtout, cela implique que les internautes utilisent systématiquement les boutons.

    S’il partagent manuellement le contenu sur leur page Facebook, sur Twitter ou Google +, ou s’il utilisent des boutons intégrés dans leur navigateur, les votes irons vers la nouvelle URL, et ne s’afficheront donc plus dans les boutons contenus dans la page.

    Le vrai problème, c’est qu’il n’existe pour le moment aucun solution viable et sans défaut pour contourner ce défaut des redirections 301.

    • Oui le but de cet article était bien de conserver l’aspect visuel uniquement (dommage de perdre un beau compteur de RT). Mais tu as raison et je n’y avais pas pensé, les boutons de partage des navigateurs ne comptabiliseront pas l’ancienne URL. Effectivement pas de solution parfaite….

  6. Bonjour,

    Billet instructif ! Cela arrive fréquemment à mon blog et j’avoue en avoir marre de me prendre la tête avec ça donc j’ai abandonné mais je vais quand même tester la solution exposée dans cet article.

    amicalement

  7. Merci d’avoir résumé tout cela ici même si c’est un pis aller plutôt qu’une vraie solution

    J’avais fait un test avec la balise canonical qui reprend aussi les signaux sociaux (variable selon les plateformes)

    Bizarre, t’as pas eu trop de troll sur l’efficacité sur le référencement et le trustrank de la page (pour le lien nofollow celui ci est suivi mais pour le reste ?)

  8. Bonjour Aymeric,
    merci à toi de t’être penché sur la question, je vais regarder ça de plus près.
    Dommage qu’il n’existe pas encore de solution vraiment parfaite et facile à mettre en place.
    @++

  9. Une technique simple mais qui devrait, je pense, être fait automatiquement aussi par ces réseaux sociaux !
    Merci à toi.

  10. Merci pour cette astuce, c’est vrai que c’est dommage de faire les nouveaux tweets sur l’ancienne url mais ça reste pratique. J’avais le souci sur 2 pages et vais pouvoir faire la modification.
    Je ne le ferai pas à grande échelle mais pour une petite correction c’est cool 🙂

    Merci

  11. Salut Aymeric, as tu quand même perdu quelque place sur un mot clé précis avec cette méthode ?

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *