Les Twitter Cards, c’est un service que Twitter met à disposition des éditeurs de sites web depuis environ 6 mois. L’objectif : afficher un résumé des articles d’actualité ou prévisualiser des contenus multimédias (image, vidéo, audio). Cette aperçu est une bonne incitation au clic qui a de quoi séduire les webmasters et autres blogueurs.
Comment ça marche ?
L’excellent billet de Marie-George sur Webmarketing-com vous dit tout sur le fonctionnement des Twitter Cards. Mais pour intégrer techniquement les Twitter Cards, c’est une autre paire de manches. Des dizaines d’articles comme celui-ci vous expliquent qu’il y a 2 plugins dédiés à WordPress et vous expliquent la procédure à suivre mais les 2 m’ont planté Choblab ! Même the King of WordPress Roch Daniel semble avoir eu des problèmes. Comment donc intégrer ces foutues Twitter Cards dans WordPress sans utiliser de plugin, mmmh ?
// UPDATE du 30.12.2012 —
Attention, warning ! Avant de lire la suite, je vous recommande la solution limpide décrite dans ce billet, dont vous comprendrez le cheminement en lisant les commentaires ci-dessous !
— UPDATE du 30.12.2012 //
A force de chercher, j’ai trouvé, notamment chez la délicieuse Delicart, ce bout de code à rajouter directement dans le fichier header.php de votre WordPress, juste avant l’élément </head>.
<?php
#twitter cards hack
if(is_single() || is_page()) {
$twitter_url = get_permalink() ;
$twitter_title = get_the_title() ;
$twitter_desc = get_the_excerpt() ;
$twitter_thumbs = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), full ) ;
$twitter_thumb = $twitter_thumbs[0] ;
if( !$twitter_thumb) {
$twitter_thumb = ‘http://www.gravatar.com/avatar/b9ec4f6447c72d90ad56680cdb5b181a?rating=PG&size=75’ ;
}
$twitter_name = str_replace(‘@’, », get_the_author_meta(‘twitter’)) ;
?>
<meta name= »twitter:card » value= »summary » />
<meta name= »twitter:url » value= »<?php echo $twitter_url ; ?> » />
<meta name= »twitter:title » value= »<?php echo $twitter_title ; ?> » />
<meta name= »twitter:description » content= »La suite sur Choblab.com car cet article ne tient pas en 140 caractères :-) » />
<meta name= »twitter:image » value= »<?php echo $twitter_thumb ; ?> » />
<meta name= »twitter:site » content= »@choblab »>
<meta name= »twitter:creator » content= »@choblab »>
< ?
if($twitter_name) {
?>
<meta name= »twitter:creator » value= »@<?php echo $twitter_name ; ?> » />
< ?
}
}
?>
Pour le personnaliser, il suffit de remplacer choblab par votre nom et de modifier l’URL du gravatar.
L’avantage : ça fonctionne !
L’inconvénient : le petit hic, c’est que je n’arrive pas à remonter le chapô – ou la description, lié à chaque article. Décidément, quand ça veut pas…
Normalement, le code qui affiche automatiquement les premières lignes de votre article est :
<meta name="twitter:description" value="<?php echo $twitter_desc ; ?>" />
Comme ce code me posait des soucis d’affichage, je l’ai remplacé par un petit texte générique, car le poète a dit :
l’humour est la politesse du désespoir.
Il vous suffit donc de changer dans le bout de code ci-dessus le texte entre guillemets après content.
Résultat : après avoir soumis le truc à Twitter (oui, comme les antibiotiques, c’est pas automatique), les tweets et retweets mentionnant un article de Choblab affichent presque le résumé du billet et incitent à me suivre !
Si tout ça n’avait pas été si compliqué, j’aurais conclu par une formule autour des joies simples. Là, j’ai juste envie de m’éponger le front…
Peut être intéressant pour les entreprises sinon bof.
Par contre, un webmaster se doit pour la sécurité de son site, de le tenir à jour, si il ne veut pas, un jour, sur son site et découvrir qu’un pirate est venu s’amuser dessus, on limite le risque en ayant un WordPress à jour, il faut à l’heure d’aujourd’hui être sous WP3.5.
Pareil pour les thèmes et les plugins, maintenir à jour.
Quand on installe un thème, on fait attention qu’il ne reste pas dans un sous dossier
https://choblab.com/wp-content/themes/sight-wordpress-theme/sight/style.css pas bon
https://choblab.com/wp-content/themes/sight/style.css
correct
il y a de beaux thèmes responsives comme Leaf, Response.
Les Twitter Cards me semblent pertinentes pour tous les producteurs de contenu, entreprises ou non.
Sinon, merci pour la leçon WordPress. Les mises à jour WordPress sont longues et fastidieuses, ça me plante souvent mon site. Et je ne vois pas trop ce que ça change que mon thème soit dans un sous-dossier, mais bon…
Salut Darknote,
« Peut être intéressant pour les entreprises sinon bof. »
Les cards te permettent juste d’étendre les tweets, de les rendre plus jolis, d’y inclure une certaine forme d’authoring (ce que disait chob sur les producteurs de contenus) et également de passer outre la limite des 140 caractères ce qui permet d’en dire un peu plus.
Evidemment ce n’est pas indispensable mais pourquoi s’en priver après tout?
Maintenant en ce qui concerne WordPress :
« il faut à l’heure d’aujourd’hui être sous WP3.5. »
>oui c’est mieux mais il reste des failles.
« Pareil pour les thèmes et les plugins, maintenir à jour. »
> ça dépend des mises à jour, vraiment.
« Quand on installe un thème, on fait attention qu’il ne reste pas dans un sous dossier »
> non. En revanche ce qui peut être utile est de d’interdire la navigation dans les repertoires via le .htaccess : Options All -Indexes
Re, je viens de voir le souci, t’est-il possible d’éditer le fichier à la ligne à la ligne en question et de modifier get_post() en get_post($post_id) ? À première vue c’est ça. Tiens-moi au courant. Je ferai une MAJ en conséquence. 🙂
N’importe quoi dsl confondu 2 blogs, je répondais à un com ailleurs. Dsl d’avoir spammé ta page comme ça, tu peux supprimer mes commentaires HS ct juste pour te dire que j’ai fait la MAJ et que tu ne devrais plus avoir de souci. 🙂 et je vais me coucher.
Pas de souci. J’ai mis à jour et réactivé le plugin, pas de souci d’affichage, je verrai avec mon prochain billet si ça fonctionne…
Top ! Ca fonctionne parfaitement ! Je vais faire un update de ce billet et te faire de la pub… Merci à toi.
De rien, ravi que cela réponde à ton besoin 🙂 Sympa d’en parler
Salut,
J’ai créé un plugin qui fonctionne plutôt bien si cela vous intéresse : http://wordpress.org/extend/plugins/jm-twitter-cards/
:=)
Je testerai même si mon expérience m’a rendu méfiant par rapport aux plugins Twitter Cards 🙂
De toute façon, j’intègre le flux RSS de ton blog dans mon Netvibes, je ne le connaissais pas et j’y découvre plein d’infos intéressantes.
Merci, ça faisait quelques semaines que je me disais devoir trouver la méthode quelque part 🙂
Content que cette douloureuse expérience puisse te servir 😉
Merci bcp 🙂
Tu as raison de te méfier et objectivement : j’ai fait ce plugin parce que la plupart des tutos contiennent des erreurs dans la manière de récupérer des infos pour des paramètres obligatoires. Résultat : bash de Twitter. J’ai testé le mien avant et j’ai reçu la réponse dans un délai raisonnable et pourtant je n’ai qu’un modeste blog. A noter que plus tu as de trafic sur le site et plus cela va vite à valider.
Bon j’ai testé… Pas de problème pour l’installation, c’est facile à configurer mais finalement, ça déclenche sur mon blog l’affichage de ce vilain message :
Warning: Missing argument 1 for get_post(), called in /homez.184/choblab/www/wp-content/plugins/jm-twitter-cards/jm-twitter-cards.php on line 101 and defined in /homez.184/choblab/www/wp-includes/post.php on line 370
Je suis maudit 🙂
Coucou Chob merci de l’avoir signalé, je me mets de dessus dès que je peux. 🙂