可以找到Linkedin文档here
正如它所说,它需要:
og:title
og:description
og:image
og:url
以下是我的wordpress博客源代码示例,为简单起见,我使用Jetpack插件:
<!-- Jetpack Open Graph Tags -->
<meta property="og:type" content="article" />
<meta property="og:title" content="Starbucks Netherlands Intel" />
<meta property="og:url" content="http://lorentzos.com/starbucks-netherlands-intel/" />
<meta property="og:description" content="Today I had some free time at work. I wanted to play more with Foursquare APIs. So the question: "What is the correlation of the Starbucks Chain in the Netherlands?". Methodology: I found all the p..." />
<meta property="og:site_name" content="Dionysis Lorentzos" />
<meta property="og:image" content="http://lorentzos.com/wp-content/uploads/2013/08/starbucks-intel-nl-238x300.png" />
在Facebook中效果很好,或者您可以看到元数据here。然而,LinkedIn更顽固,甚至没有真正解析数据If you're unable to set Open Graph tags within the page that's being shared, LinkedIn will attempt to fetch the content automatically by determining the title, description, thumbnail image, etc
。
我知道我没有og:image:width
标签但是Linkedin甚至没有解析标题,描述或网址。有任何调试它的想法吗?
答案 0 :(得分:6)
我再次检查了我的HTML,并在元数据中发现了一些警告/错误。我修好了,一切都很好。所以解决方案是遇到同样的问题:
再次检查你的html并进行调试。即使页面在浏览器中很好地加载,LinkedIn解析器在小错误方面也不那么强大。这tool可能会有所帮助。
答案 1 :(得分:3)
我的第一个建议是在网址上添加一个毫无意义的查询,以便LinkedIn认为这是一个新的链接(这不会影响其他任何内容),即:
http://example.com/link.php?42
或http://example.com/link.html?refid=LinkedIn
如果这不符合您的需求,则需要采取更激进的措施。
确保您的控制台中没有任何错误并使用以下方式验证您的网站: http://validator.w3.org/ ...
将prefix属性添加到每个标记(而不是html标记),然后使用您的LinkedIn帐户重新登录以清除缓存...
prefix="go: http://ogp.me/ns#"
即:
<meta prefix="og: http://ogp.me/ns#" property="og:title" content="Title of Page" />
<meta prefix="og: http://ogp.me/ns#" property="og:type" content="article" />
<meta prefix="og: http://ogp.me/ns#" property="og:image" content="http://example.com/image.jpg" />
<meta prefix="og: http://ogp.me/ns#" property="og:url" content="http://example.com/" />
我希望这三种解决方案中的一种适用于某人。干杯!
答案 2 :(得分:1)
如果你确定自己已经做好了所有事情(使用open graph meta tags,validator.w3.org没有错误)并且仍然无效,请务必使用其他页面进行尝试是一个LinkedIn缓存的东西。
我的页面上有一个<h1>Project information</h1>
,LinkedIn用作共享页面的标题,而不是<title>
或<meta property="og:title" [...]/>
标记。即使我做的一切都是正确的。但是,当我从页面源中完全删除此<h1>Project information</h1>
时,它仍然使用“项目信息”作为标题,甚至认为它不再出现在页面上。
尝试不同的页面后,它可以正常工作。
答案 3 :(得分:0)
经过长时间的试验和错误,我发现我的.htaccess以某种方式阻止了Linkedin机器人(wordpress网站)。对于那些使用wordhepress安全插件或其他安全插件的用户,请确保LinkedIn没有被阻止
确保没有像以下那样的行:
RewriteCond %{HTTP_USER_AGENT} ^Link [NC,OR]
最简单的检查方法是使用wordpress默认的htaccess行。
如前所述,请确保您不会在linkedin中重试缓存页面。
答案 4 :(得分:0)
您每周只能尝试一次! 我有一个链接到我的网站,我想自定义显示的图像。所以我添加了开放的图形标签,它们似乎根本没有渲染。直到我读到这个:
当LinkedIn要求通过网址分享内容时,LinkedIn的抓取工具第一次访问网页时,它找到的数据(Open Graph值或我们自己的分析)将被缓存大约7天。< / p>
这意味着,如果您随后更改了文章的说明,上传新图片,修改标题中的拼写错误等,您将看不到随后尝试共享页面时所代表的更改,直到缓存已过期,并且爬虫被迫重新访问该页面以检索新内容。
答案 5 :(得分:0)
我的解决方案是添加一个hashbang。我在一个ajax风格的应用程序,它不会渲染整个页面,我认为对于文本/图像在初始刮擦时没有出现在页面上有点不合适,添加
%23!
到我的编码网址或
的末尾 #!
我想这只有在您的应用程序设置为处理url中的escape_fragment并呈现静态页面而不是动态页面时才有用但我现在无法测试此理论
答案 6 :(得分:0)
这也发生在我的一个客户的网站上。我发现如果用户代理包含字符串&#34; jakarta&#34;,.htaccess文件会阻止来自LinkedIn的网站。
当我删除此过滤后,LinkedIn可以在客户端发布链接时访问所有必需的OpenGraph(og)信息。
答案 7 :(得分:0)
我偶然发现了Wordpress网站的同样问题。问题是由标准wordpress + yoast / jetpack seo插件中的冲突OGP和oembed标头造成的。
您需要使用此插件禁用oembed标头(这没有副作用):https://wordpress.org/plugins/disable-embeds/
之后,您可以通过附加?1
来强制进行全新的链接预览,就像你们中的一些人已经指出的那样!
我希望能解决你的问题。
我在这里写了一个问题的详细解释:https://pmig.at/2017/10/26/linkedin-link-preview-for-wordpress/
答案 8 :(得分:0)
是的,documentation声明您可以拥有:标题,URL,描述和图像。但实际上,您有两种选择。选择以下两个集合之一并使用它,因为您别无选择...
设置1个选项
og:title
og:url
og:image
设置2个选项
og:title
og:url
og:description
这就是预览链接神秘地缺少og:description
的原因。但是,如果您放下图片,则最终将显示您的描述。
尝试一下:Wikipedia有一个og
描述,但没有og
图像,而GitHub却有。 Share Wikipedia和Share GitHub。显然,您似乎可以选择显示说明 来显示图像。我花了数周的时间与LinkedIn Support进行了纠正,但无济于事。
答案 9 :(得分:0)
Linkedin会缓存URL,因此在开始调试之前确保这不是您的问题是非常实用的。
此工具可能会派上用场:https://www.linkedin.com/post-inspector/inspect/
您可以在此处预览您的网址,并查看共享时的外观。它还会刷新缓存,因此可以确定是否有问题,或者仅是缓存。