在 Facebook 上链接的规范网址而不是真实网址。动态 OpenGraph 标记为空
Posted
技术标签:
【中文标题】在 Facebook 上链接的规范网址而不是真实网址。动态 OpenGraph 标记为空【英文标题】:Canonical url being linked on Facebook rather than real URL. Dynamic OpenGraph tags coming up empty 【发布时间】:2012-05-03 05:48:08 【问题描述】:我的网站是一个工作网站如果我现在分享一份工作,那么网址可能是例如
http://jobs.com/jobs/show-job/143/Jobit-flyers-put-up/Other/
但 facebook 会尝试抓取 http://jobs.com/jobs/show-job/,因为那是规范的 url。
当有人在 facebook 上发布它时,这真的很糟糕,因为所有 OpenGraph 标记都是空的,所以链接会得到错误的缩略图和空白信息。谁知道如何解决这个问题?
【问题讨论】:
【参考方案1】:已修复!
在您创建的动态页面的标题中,只需使用 meta og 标记
<meta property="og:url" content="<?php get_current_url(); ?>" >
【讨论】:
抱歉评论你的答案..你的答案是正确的,但我遇到了一个与 Facebook 缓存相关的问题。我们都知道 facebook 缓存了所有内容,所以问题是:如果页面有超过 1 个 url,如何刷新每个 url 的缓存?如果有任何帮助,我将不胜感激。 @ShailParas 我建议将一个 URL 重定向到另一个 - 在两个 URL 上显示相同的内容是不好的做法,因为它可能会损害您的搜索引擎可见性以及其他问题。哦,当您使用 Facebook 调试器获取 URL 时,它也会清除缓存的版本。因此,如果您真的想清除两个 url,只需将它们都提交给调试器即可。 感谢您的快速回复。我正在寻找它,但我不知道该怎么做,所以你能告诉我如何才能完成这项工作 -redirecting one URL to the other
。
@ShailParas 重定向是通过将 301 或 302 状态代码发送回带有新地址的客户端来进行的。在您的代码中,当您收到请求时,您可以检查客户端用来到达那里的 URL,如果它不是您希望他们使用的 URL,您可以将重定向消息发回,它会将它们带到正确的网址。使用 Google 对状态代码和“重定向 PHP”进行一些研究 - 如果您实际上是在使用 PHP 编写代码。或者,如果您使用的是框架搜索“重定向 Canonical URL 是代表您的 OpenGraph 对象的 URL,它旨在以这种方式工作!
您可以查看answer I gave to similar question了解更多详情。
【讨论】:
嗨 Juicy Scripter,感谢您的回复,但该链接不是很有帮助。我对喜欢不感兴趣,我对用户能够在我的网站上链接工作以及链接工作感兴趣。我还希望 facebook 能够从工作中获取相关信息和相关图片。现在它在侧边栏中获得空字符串和来自工作的图片。 jobit.co.nz/jobs/show-job/143/… 这是我网站的网址。如果你去 facebook 调试器并获取它,它会说: 响应代码:206 获取 URL:jobit.co.nz/jobs/show-job/143/… 规范 URL:jobit.co.nz/jobs/show-job 所以它试图从规范链接中提取数据,但这没用,因为它无关与工作链接。 @JoshuaDean,http://jobit.co.nz/jobs/show-job/143/Jobit-flyers-put-up-around-Auckland/Other/
应该将自己作为 og:url
属性而不是无关的 URL!【参考方案3】:
如果您要发布“文章”,请勿使用 og:type 的“网站”。
例如:
如果你这么说http://jobs.com/show-job/ 是 og:type = 网站那么你已经告诉 facebook:
http://jobs.com/jobs/show-job/143/Jobit-flyers-put-up/Other/ 是 show-job 的规范/简单地说:使用以下内容:
og:type = 网站 => http://jobs.com/ og:type = 文章 => http://jobs.com/show-job/ og:type = 文章 => http://jobs.com/jobs/show-job/143/Jobit-flyers-put-up/Other/更多信息在这里: https://ogp.me/#type_article
【讨论】:
以上是关于在 Facebook 上链接的规范网址而不是真实网址。动态 OpenGraph 标记为空的主要内容,如果未能解决你的问题,请参考以下文章
Facebook 是不是支持 Hash Bang #! Ajax 可抓取网址?