WordPressからFacebookでビデオを共有します
-
16-10-2019 - |
質問
ユーザーがページを埋め込まれたビデオでページを共有しようとすると、フラッシュビデオプレーヤーではなく、Facebookステータスにページのタイトルのみが表示されます。これは、AddThisボタンと共有するとき、またはURLがFacebookページに直接投稿されている場合に発生します。 Facebookを埋め込みフラッシュビデオをピックアップするにはどうすればよいですか?
解決
それは本当にビデオがページにどのように埋め込まれるかに依存します。 Facebookは特定のフォーマットのみを処理でき、予期しないものを見た場合、デフォルトは失敗の「Nothing Nothing」標準になります。
組み込みビデオがよく認識されている標準(つまり、YouTubeのデフォルトプレーヤー)である場合、正常に動作するはずです。しかし、それがあなた自身の自己ホストのビデオプレーヤーである場合、これはうまくいきません。 Facebookは、他の人のフラッシュオブジェクトをサイトに埋め込んでいません。
更新11/18
Facebookは、スマートなのと同じように、ページ上にどのコンテンツが生きているかを判断するためにかなりの量の助けが必要です。それは迅速な擦り傷をすることができます <img />
ページサムネイルを提供するタグですが、スキャンしません <object>
sまたは <embed>
sこれらは、YouTubeビデオ(Facebookで共有したい)から、邪魔になるFlashアプリケーション(Facebookがサイトで望んでいない)まで何でもかまいません。
物事を簡単にするために、YouTubeは実際に特定のFacebookアプリケーションを使用して、Facebookに自動的に埋め込まれるビデオを共有できるようにします。このアプリケーションに直接リンクすることに加えて、すべてのYouTubeビデオページには、Facebookがビデオをスクレイプしてページに埋め込むために使用するヘッダーに追加のメタ情報が含まれています。以前にリンクしたビデオの例は次のとおりです。
<meta property="fb:app_id" content="87741124305" />
<meta property="og:title" content="Cubed: Manny Pacquiao&#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" />
リンクされているアプリケーションは次のとおりです YouTubeアプリケーション Facebookで。また、ここに含まれる特定の情報を見ることができます:タイトル、説明、タイプ、URL、画像、Site_Name。これはすべて、Facebookが友人やネットワークにページを「共有」するときに何をすべきかを理解するのに役立ちます。
追加ボタンは、この情報をヘッダーに追加しません。 YouTubeのようなビデオWebサイトのパワー共有ではなく、ページの簡単な共有を許可するために構築されているため、実際にはできません。
前にも言ったように、「ビデオがページにどのように埋め込まれているかによって異なります」。 Facebookは、特定のサイト/アプリケーションから発生する特定の方法でタグ付けされた特定の形式でのみビデオを処理できます。
YouTubeにある埋め込みビデオ機能を複製するには、次のことが必要です。
- 物事を動かすために独自のFacebookアプリを作成します
- 同じ種類のメタ情報をヘッダーに追加します
あなたが望むなら(そして私はこれをお勧めします)、より簡単なルートはただ削ることです <meta>
タグYouTubeが使用します。したがって、ビデオを追加する場合は、同じYouTubeアプリIDを使用してください。 <meta>
プロパティ、そしてあなた したほうがいい 行ってください。
他のヒント
アップデート プロパティ属性を使用してメタタグのみを抽出するには、以下をまとめました。
<?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);
?>
私はそれが少しハッキーであることを知っていますが、それは機能します。私はこれをURLビデオ埋め込みプラグインの1つで使用し、テンプレートのヘッドにメタ情報を設定するつもりだと思います。