Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Facebook开放图形API-og:元标记被忽略_Facebook_Facebook Like_Facebook Opengraph - Fatal编程技术网

Facebook开放图形API-og:元标记被忽略

Facebook开放图形API-og:元标记被忽略,facebook,facebook-like,facebook-opengraph,Facebook,Facebook Like,Facebook Opengraph,我正在解决一个问题,页面标题和图片没有被包括在facebook上。点击OG调试器后,facebook似乎没有访问任何OG:元标记: -它的意思是推断页面上存在的og:url和og:title属性 作为测试,我直接从开发人员文档上的示例复制了MetaTag和HTML模式,但仍然得到相同的警告 以下是生成的HTML和head标记的开头: <html xmlns="http://www.w3.org/1999/xhtml" xmlns:og="http://ogp.me/ns#" xmlns:f

我正在解决一个问题,页面标题和图片没有被包括在facebook上。点击OG调试器后,facebook似乎没有访问任何
OG:
元标记:

-它的意思是推断页面上存在的
og:url
og:title
属性

作为测试,我直接从开发人员文档上的示例复制了MetaTag和HTML模式,但仍然得到相同的警告

以下是生成的HTML和head标记的开头:

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:og="http://ogp.me/ns#" xmlns:fb="http://www.facebook.com/2008/fbml">
<head>
<title>123-ABC Butterfly Fun Carpet 3'10" x 5'5" Rectangle</title>
<meta name="description" content="Transactiv Products" />
<meta name="title" content="Transactiv" />
<meta property="fb:app_id" content="289501899130" />
<meta property="og:site_name" content="Transactiv InRecv" />
<meta property="og:url" content="http://localhost:2609/Pages/ProductSummary.aspx?OrganizationProductID=617c54a0-189a-48af-9b5e-002148210208&StoreID=a1d6bc99-9a6a-4e46-bdb4-790be4e59bd4&ProductID=d6748a89-41f4-48aa-a1c1-5c28f87cc47f&PageName=MHMTest&PageID=236549899706529" />
<meta property="og:title" content="123-ABC Butterfly Fun Carpet 3'10" x 5'5" Rectangle" />
<meta property="og:type" content="website" />
<meta property="og:description" content="" />
<meta property="og:image" content="http://transactivazureprod.blob.core.windows.net/pictureblob/831a4d4a-dbe3-44f5-9ff8-12286cdc33f5" />

123-ABC蝴蝶趣味地毯3'10英寸x 5'5英寸长方形

明显的缺陷。你不应该以标题结尾。你有

我建议在回显之前先做一个
stru替换(''','''',$str)

就是


Facebook的scraper在尝试删除时看到一个错误页面

您可以通过调试页面底部的链接“查看我们的刮板看到的内容”,访问Facebook刮板查看您的页面

此外,这似乎不仅仅是一个刮板相关的问题,因为我在访问链接时也看到了同样的信息:


我想,除了前面提到的标题值中的
(您也可以转义为
)之外,您的
og:url
也包含未转义的符号

如果将
&
替换为
&
og:url
字段中

所以你要替换

<meta property="og:title"
  content="123-ABC Butterfly Fun Carpet 3'10" x 5'5" Rectangle" />
<meta property="og:url"
  content="http://localhost:2609/Pages/ProductSummary.aspx?
  OrganizationProductID= ... &StoreID= ..." />

Facebook读取所有属性您可以在此处输入url:

Facebook将读取您指定的属性,但有时仅当所有4个属性都指定(且不为空)时才会使用它们,而不仅仅是最后3个属性

<meta property="og:url" content="YOUR_URL" />
<meta property="og:title" content="YOUR_TITLE" />
<meta property="og:description" content="YOUR_DESCRIPTION" />
<meta property="og:image" content="YOUR_IMAGE" />


你说得完全对-有些问题需要解决-但是,即使我没有这个问题,facebook仍然忽略元标记-我还直接从open graph docs示例中提取了值,它们给了我相同的警告:你正在尝试使用Linter?是的-Linter告诉我它推断出了那些“必需的”属性,即使它们在页面上,这是一个很好的想法,但同样的问题。你最好使用htmlentities($str,entu QUOTES)而不是str_replace。有更多的字符会破坏解析器,而不仅仅是“语法错误”。
<meta property="og:title"
   content="123-ABC Butterfly Fun Carpet 3'10&quot; x 5'5&quot; Rectangle" />

<meta property="og:url"
  content="http://localhost:2609/Pages/ProductSummary.aspx?
  OrganizationProductID= ... &amp;StoreID= ..." />
<meta property="og:url" content="YOUR_URL" />
<meta property="og:title" content="YOUR_TITLE" />
<meta property="og:description" content="YOUR_DESCRIPTION" />
<meta property="og:image" content="YOUR_IMAGE" />