Twitter-Card 元标记问题
Twitter-Card Meta Tag Issue
URL 有问题:https://www.halleonard.com/viewpressreleasedetail.action?releaseid=10261
当您在浏览器和开发人员工具中查看源代码时,您可以看到 Open Graph 和 Twitter 的所有元标记。我检查了 Facebook 调试器,除了一些规范问题外,我对结果相当满意。
我还将上面的 URL 插入到第三方 Open Graph Debugger 中:
http://debug.iframely.com/
Open Graph、Twitter 甚至其他的所有标签都返回正面。
为什么 Twitter 的 Card Validator 回来了
INFO: Page fetched successfully
INFO: 9 metatags were found
ERROR: No card found (Card error)
关于如何让 Twitter 正确显示的任何见解?
我用 w3c 验证器检查了你的源代码。
似乎 google 标签管理器没有正确安装:您必须将 google tag manager (noscript)
(第 10:13 行)移动到 body
部分的顶部并且绝对从 head
部分删除它。
您可以在这里找到一些信息
https://support.google.com/tagmanager/answer/6103696?hl=en
并且(更具体)在您的标签管理器页面中(如附件)
我认为您可能正在阻止或重定向 Twitterbot
代理。
我用 curl
伪造了一个 Twitterbot
代理:
curl -A 'Twitterbot' https://www.halleonard.com/viewpressreleasedetail.action?releaseid=10261 -o ~/Desktop/what-twitterbot-sees.html
这就是你的服务器 returns:
如您所见,有 10 个元标记(如果排除 <meta charset>
个),这是卡片验证器指示的内容,根本没有 <meta name="twitter:*">
个标记。
如果您可以设置自定义用户代理字符串,则可以使用您的浏览器进行重现。这可以通过 Google Chrome:
我很确定在您的 Web 服务器级别或您的应用程序代码中存在某种重定向规则。
根据developer.twitter.com,我使用的用户代理字符串是正确的:
Twitter uses the User-Agent of Twitterbot (with version, such as Twitterbot/1.0)
由于您选择的 twitter:card
类型,出现错误。您忘记添加 twitter:image
内容。这两个都应该加上。
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="ADD IMAGE URL">
URL 有问题:https://www.halleonard.com/viewpressreleasedetail.action?releaseid=10261
当您在浏览器和开发人员工具中查看源代码时,您可以看到 Open Graph 和 Twitter 的所有元标记。我检查了 Facebook 调试器,除了一些规范问题外,我对结果相当满意。
我还将上面的 URL 插入到第三方 Open Graph Debugger 中: http://debug.iframely.com/ Open Graph、Twitter 甚至其他的所有标签都返回正面。
为什么 Twitter 的 Card Validator 回来了
INFO: Page fetched successfully
INFO: 9 metatags were found
ERROR: No card found (Card error)
关于如何让 Twitter 正确显示的任何见解?
我用 w3c 验证器检查了你的源代码。
似乎 google 标签管理器没有正确安装:您必须将 google tag manager (noscript)
(第 10:13 行)移动到 body
部分的顶部并且绝对从 head
部分删除它。
您可以在这里找到一些信息 https://support.google.com/tagmanager/answer/6103696?hl=en
并且(更具体)在您的标签管理器页面中(如附件)
我认为您可能正在阻止或重定向 Twitterbot
代理。
我用 curl
伪造了一个 Twitterbot
代理:
curl -A 'Twitterbot' https://www.halleonard.com/viewpressreleasedetail.action?releaseid=10261 -o ~/Desktop/what-twitterbot-sees.html
这就是你的服务器 returns:
如您所见,有 10 个元标记(如果排除 <meta charset>
个),这是卡片验证器指示的内容,根本没有 <meta name="twitter:*">
个标记。
如果您可以设置自定义用户代理字符串,则可以使用您的浏览器进行重现。这可以通过 Google Chrome:
我很确定在您的 Web 服务器级别或您的应用程序代码中存在某种重定向规则。
根据developer.twitter.com,我使用的用户代理字符串是正确的:
Twitter uses the User-Agent of Twitterbot (with version, such as Twitterbot/1.0)
由于您选择的 twitter:card
类型,出现错误。您忘记添加 twitter:image
内容。这两个都应该加上。
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="ADD IMAGE URL">