Question

Lorsqu'un utilisateur tente de partager une page avec une vidéo intégrée à ce que le titre des pages apparaît sur leur statut facebook et non le lecteur vidéo flash. Cela se produit tout en partageant avec le bouton AddThis ou si l'URL est affiché directement sur la page facebook. Toute idée comment je peux faire facebook pick-up de la vidéo flash intégré?

Était-ce utile?

La solution

Cela dépend vraiment de la façon dont la vidéo est intégrée dans la page. Facebook ne peut gérer les formats spécifiques et si elle voit quelque chose qu'il ne prévoit pas, la valeur par défaut un dispositif de sécurité « rien show » standard.

Si la vidéo intégrée est standard bien reconnu (le lecteur par défaut de savoir YouTube) il devrait fonctionner très bien. Si c'est votre propre lecteur vidéo auto-hébergé, cependant, cela ne fonctionnera pas. Facebook ne sera pas intégrer Flash d'autres personnes des objets sur leur site.


Mise à jour 11/18

Facebook, aussi intelligent qu'il est, a encore besoin d'une quantité considérable d'aide pour déterminer ce qui vit contenu sur la page. Il peut faire un grattage rapide des balises <img /> pour vous donner les vignettes de pages, mais il ne scanne pas <object>s ou <embed>s parce que ceux-ci pourraient être quelque chose d'une vidéo YouTube (que vous aimeriez voir Partagé sur Facebook) à une application Flash intrusive ( que Facebook ne veut pas sur leur site).

Pour faciliter les choses, YouTube utilise en fait une application spécifique Facebook pour vous permettre de partager des vidéos qui seront automatiquement intégrés dans Facebook. En plus de relier directement à cette application, chaque page vidéo YouTube comprend des informations de méta supplémentaires dans leur tête que Facebook utilise pour gratter la vidéo et l'intégrer dans la page. Voici un exemple de la vidéo que vous avez lié précédemment:

<meta property="fb:app_id" content="87741124305" />
<meta property="og:title" content="Cubed: Manny Pacquiao&amp;#39;s Punchout" />
<meta property="og:description" content="Manny Pacquiao is training hard for his upcoming fight with Miguel Cotto, but you might be surprised how he got to the top.  Check out this clip." />
<meta property="og:type" content="video" />
<meta property="og:url" content="http://www.youtube.com/watch?v=IvCCuuuJhd4" />
<meta property="og:image" content="http://i2.ytimg.com/vi/IvCCuuuJhd4/default.jpg" />
<meta property="og:site_name" content="YouTube" />

L'application est liée l'application YouTube sur Facebook. Vous pouvez aussi voir quelques informations spécifiques inclus ici: titre, description, type, url, image, nom_site. Tout cela aide à la figure Facebook quoi faire lorsque vous « partager » la page à vos amis et réseau.

Le bouton AddThis n'ajoute aucune de ces informations à votre tête. Il ne peut pas, vraiment, car il est construit pour permettre le partage simple des pages, sans partage du pouvoir pour les sites vidéo comme YouTube.

Comme je l'ai déjà dit, il « dépend de la façon dont la vidéo est intégrée dans la page. » Facebook ne peut gérer des vidéos dans des formats spécifiques, marqués d'une manière spécifique, qui proviennent de sites spécifiques / applications.

Pour répliquer la fonction vidéo intégrée que YouTube a, vous devez:

  • Créez votre propre application Facebook pour les choses de puissance
  • Ajoutez le même genre de méta-informations sur votre tête

Si vous voulez (et je recommande ce), la route plus facile serait de gratter simplement les balises <meta> usages YouTube. Donc, si vous ajoutez une vidéo, utilisez la même application YouTube Id, les mêmes propriétés <meta>, et vous devez être bon d'aller.

Autres conseils

Mise à jour Pour extraire uniquement les balises meta avec l'attribut de la propriété que je mets ensemble les éléments suivants:

  <?php 

ini_set('display_errors', false); 
$page = "http://www.youtube.com...(the video ID)"; 
$page_data = file_get_contents($page); 

$doc=new DOMDocument();
$doc->loadHTML($page_data);
$xml=simplexml_import_dom($doc);
$meta=$xml->xpath('//meta');
foreach ($meta as $met) 
{
 if ($met['property'] != '')
 {
     echo '<meta property="'.$met['property'] . '" content="' . $met['content']."\">\n";
 }
}
ini_set('display_errors', true); 

?>

Je sais que un peu hacky mais cela fonctionne. Je pense que je vais l'utiliser avec l'un des plugins vidéo url d'inclusion et définir les informations de méta dans la tête du modèle.

Licencié sous: CC-BY-SA avec attribution
Non affilié à wordpress.stackexchange
scroll top