【问题标题】:Facebook scraper not validating og:image urlFacebook 刮板不验证 og:image url
【发布时间】:2012-01-26 05:39:55
【问题描述】:

我在我的控制器上运行一些函数以提供一个自定义元标记 URL,然后将其用于 facebook 的 opengraph 图像标记。该图像被放入一个变量中,然后显示在用于在 facebook 上抓取的 url 上。我让它以正确的方式工作,现在 linter 带着这个错误返回给我。

“网站”类型的 URL“http://mypage.org/pages/post.html?PostID=9192&prog=”处的对象无效,因为属性“og:image:url”的给定值“”不能被解析为类型'url'。

这不是一个有效的网址吗?我可以把链接放在我的浏览器中,它就很好了。我也注意到,当我下楼查看抓取的网址时,它还给了我这个..

<meta property="og:image" content="&lt;img src='http://www.mypage.org/images/post_images/4121.jpg' /&gt;">

看起来它需要我的,将它们变成十六进制..为什么刮板会这样做?顺便说一句,这是我控制器的代码。

$img = strstr($img, '<img src=');
$substring = substr($img, 0, strpos($img, "/>"));
$img = $substring . "/>";

这段代码的作用是我将 url 之前的代码放在 url 的末尾,形成一个完整的 &lt;img src = "" /&gt; url。非常感谢任何和所有帮助。

【问题讨论】:

  • 我不明白你在那里做什么,不应该只是&lt;meta property="og:image" content='http://www.usa-gymnastics.org/images/post_images/4121.jpg"/&gt;吗? `
  • 是的,应该是!谢谢你。我不知道为什么我没有意识到这一点。

标签: php facebook facebook-graph-api


【解决方案1】:

您不应将 HTML 标记嵌入到元标记的内容中。试试这种格式:

<meta property="og:image" content="http://www.mypage.org/images/post_images/4121.jpg">

【讨论】:

    【解决方案2】:

    元属性的内容应该是图片的 URL,而不是 DOM 元素。 用这个替换你的 og:image 元属性,它应该可以工作:

    <meta property="og:image" content="http://www.mypage.org/images/post_images/4121.jpg">
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-01-10
      • 2013-01-23
      • 1970-01-01
      • 2013-01-31
      • 2019-03-22
      • 2013-04-11
      • 2016-08-03
      相关资源
      最近更新 更多