5 votes

Partager ou aimer Facebook avec un titre de document dynamique

J'ai trouvé ce problème partout sur le net mais pas encore de réponse, alors peut-être qu'ici quelqu'un l'a résolu ... ? J'ai construit une page qui s'appuie fortement sur jquery.address. Il y a une page d'index et le reste se charge dynamiquement via Ajax en suivant les instructions de Google. /#!/ pour les pages consultables par les internautes. Je veux maintenant ajouter le bouton "J'aime" ou "Partager" de Facebook, mais je n'arrive pas à faire en sorte qu'il prenne le titre ou l'URL de la page.

Quoi que je fasse, je reviens toujours au titre et à l'url de la page d'index. Il a essayé :

  • (évidemment) changer le titre d'un méta openGraph lors du chargement des nouvelles pièces.
  • "lier" la page du crawler ( ?_escaped_fragmet_=xyx ) mais en spécifiant le #! page dans les méta
  • "partage" avec un titre et une url donnés.

Je n'obtiens jamais rien d'autre qu'un lien vers la page d'index ou un "partage" vide vers la bonne url avec le titre et la vignette ignorés.

Quelqu'un a-t-il une installation similaire qui fonctionne ?

Merci pour tout conseil, thomas

3voto

thomas Points 793

Facebook utilise en fait #! maintenant et ça marche ! Si vous construisez votre site de manière à ce que http://site.de/?_escaped_fragment=something est identique à http://site.de/#!/quelque chose tout ce que vous avez à faire est de "partager" la #! et il affichera les informations de la page du fragment échappé.
Utilisez cette URL pour vérifier : http://developers.facebook.com/tools/debug

Mais : Une solution beaucoup plus propre au problème peut être trouvée ici : http://github.com/browserstate/history.js/wiki/Intelligent-State-Handling

2voto

Angus Points 999

À mon avis, le robot d'exploration de Facebook n'exécute pas de Javascript et affiche toujours ce qui se trouve dans la page qu'il reçoit du serveur.

2voto

dain Points 4393

La dernière fois que j'ai vérifié, il était impossible de modifier les données de titre et de description une fois qu'elles avaient été extraites :(

0voto

Joe Purcell Points 126

Le problème que j'ai rencontré était que l'og:url et l'url réel de la page ne correspondaient pas. J'ai également lu un certain nombre de commentaires sur le fait que les données og devaient être placées juste après l'élément title, mais je ne pense pas que cela ait résolu le problème.

En ce qui concerne les questions de mise en cache, il est vrai que la mise en cache de Facebook est "brutale", mais elle ne met rien en cache pour l'outil lint : http://developers.facebook.com/tools/debug .

J'utilise des urls sans hash-bang lorsque je partage des liens. Je traite les liens en dur et les redirige vers un hash bang côté client en utilisant javascript. De cette façon, si un crawler va sur la page du lien en dur, il affichera l'information comme il le ferait si javascript était activé.

Comparez :

http://developers.facebook.com/tools/debug/og/object?q=http%3A%2F%2Flikeapage.com%2F%23!%2FChristmas%2Fvs%2FBacon

y

http://developers.facebook.com/tools/debug/og/object?q=http%3A%2F%2Flikeapage.com%2FChristmas%2Fvs%2FBacon

J'espère que cela vous aidera.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X