我有一个基本上显示视频的动态PHP页面。当Facebook用户点击视频时,时间线事件会发布到他们的Facebook个人资料中,但我的OG元标记似乎不想与存储视频信息的PHP变量合作。
如果我在元标记中直接输入正确的字符串,一切都很有效,但设计页面会从我的数据库中选择一个视频。
这些是包含PHP变量的当前标记:
<head prefix='og: http://ogp.me/ns# fb: http://ogp.me/ns/fb# visiovert: http://ogp.me/ns/fb/visiovert#'>
<meta property='fb:app_id' content='261459743887413'>
<meta property='og:type' content='visiovert:advertisement'>
<meta property='og:url' content='http://visiovert.net/ad.php'>
<meta property='og:site_name' content='VisioVert'>
<?php
echo("<meta property=\"og:title\" content=\"".$Video->title."\" />\n");
echo("<meta property=\"og:description\" content=\"".$Video->description."\" />\n");
echo("<meta property=\"og:image\" content=\"".$Video->location.".jpg\" />\n");
echo("<meta property=\"og:video\" content=\"".$Video->location.".mp4\" />\n");
?>
<meta property='og:video:height' content='432' >
<meta property='og:video:width' content='768'>
</head>
如果您查看页面源,可以在标题中看到:
<head prefix='og: http://ogp.me/ns# fb: http://ogp.me/ns/fb# visiovert: http://ogp.me/ns/fb/visiovert#'>
<meta property='fb:app_id' content='261459743887413'>
<meta property='og:type' content='visiovert:advertisement'>
<meta property='og:url' content='http://visiovert.net/ad.php'>
<meta property='og:site_name' content='VisioVert'>
<meta property="og:title" content="Echo" />
<meta property="og:description" content="An example video ad for VisioVert." />
<meta property="og:image" content="http://visiovert.net/Videos/echo.jpg" />
<meta property="og:video" content="http://visiovert.net/Videos/echo.mp4" />
<meta property='og:video:height' content='432' >
<meta property='og:video:width' content='768'>
</head>
这与我希望的完全匹配,但是在使用Facebook对象调试器进行测试时,它没有从PHP变量中获得任何东西。我可能会在我面前丢失一些东西......但是我环顾四周并没有找到答案。
答案 0 :(得分:0)
Veliisx
尝试将fb名称空间添加到您的html标记中。
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml" xmlns:og="http://ogp.me/ns#" xmlns:shawnsspace="http://www.shawnsspace.com/ns#">
P.S。在您的源中只有一半的标签被关闭。不确定这是否会被忽略但会在某些浏览器中导致错误。
答案 1 :(得分:0)
我经常遇到逃避问题,你是否尝试过类似下面的东西来避免重击? 下面基本上是如何动态添加我的元,我知道它有更多的代码来回应每个,但它避免了很多与转义混淆。
<head prefix='og: http://ogp.me/ns# fb: http://ogp.me/ns/fb# visiovert: http://ogp.me/ns/fb/visiovert#'>
<meta property='fb:app_id' content='261459743887413'>
<meta property='og:type' content='visiovert:advertisement'>
<meta property='og:url' content='http://visiovert.net/ad.php'>
<meta property='og:site_name' content='VisioVert'>
<meta property="og:title" content="<?php echo $Video->title; ?>" />
<meta property="og:description" content="<?php echo $Video->description; ?>" />
<meta property="og:image" content="<?php echo $Video->location; ?>.jpg" />
<meta property="og:video" content="<?php echo $Video->location; ?>.mp4" />
<meta property='og:video:height' content='432' >
<meta property='og:video:width' content='768'>
</head>