3

有问题的网址:https ://www.halleonard.com/viewpressreleasedetail.action?releaseid=10261

当您在浏览器和开发者工具中查看源代码时,您可以看到 Open Graph 和 Twitter 的所有元标记。我检查了 Facebook 调试器,除了一些规范问题外,我对结果相当满意。

我还将上述 URL 插入第三方 Open Graph 调试器: 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 正确显示的任何见解?

4

3 回答 3

4

我认为您可能会阻止或重定向Twitterbot代理。

我伪造了一个Twitterbot代理curl

curl -A 'Twitterbot' https://www.halleonard.com/viewpressreleasedetail.action?releaseid=10261 -o ~/Desktop/what-twitterbot-sees.html

这就是您的服务器返回的内容:

在此处输入图像描述

如您所见,有 10 个元标签(如果您排除了<meta charset>一个),这是卡验证器所指示的,根本没有<meta name="twitter:*">标签。

如果您可以设置自定义用户代理字符串,则可以使用浏览器重现。谷歌浏览器可以做到这一点:

在此处输入图像描述

我很确定在您的 Web 服务器级别或在您的应用程序代码中存在某种重定向规则。


根据developer.twitter.com,我使用的用户代理字符串是正确的:

Twitter使用Twitterbot的User-Agent(有版本,如Twitterbot/1.0)

于 2019-08-20T11:44:14.643 回答
0

我使用 w3c 验证器检查了您的源代码。

https://validator.w3.org/

谷歌标签管理器似乎没有正确安装:您必须将google tag manager (noscript)(第 10:13 行)移到该部分的顶部,body并将其从部分中完全删除head

您可以在这里找到一些信息 https://support.google.com/tagmanager/answer/6103696?hl=en

以及(更具体)在您的标签管理器页面中(如附件)

标签管理器安装说明

于 2019-08-15T17:33:59.140 回答
0

由于twitter:card您选择的类型,错误即将到来。您忘记添加twitter:image内容。这两个都应该添加。

<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="ADD IMAGE URL">

参考链接

于 2019-08-21T07:10:14.787 回答