当您分享Facebook时,您必须将html添加到head部分的下一个元标记中:
<meta property="og:title" content="title" /> <meta property="og:description" content="description" /> <meta property="og:image" content="thumbnail_image" />
就是这样!
根据FB告诉你的内容,添加按钮。
您需要的所有信息都在 www.facebook.com/share/
截至2013年,如果你使用facebook.com/sharer.php(PHP),你可以简单地制作任何按钮/链接:
<a class="btn" target="_blank" href="http://www.facebook.com/sharer.php?s=100&p[title]=<?php echo urlencode(YOUR_TITLE);?>&p[summary]=<?php echo urlencode(YOUR_PAGE_DESCRIPTION) ?>&p[url]=<?php echo urlencode(YOUR_PAGE_URL); ?>&p[images][0]=<?php echo urlencode(YOUR_LINK_THUMBNAIL); ?>">share on facebook</a>
链接查询参数:
p[title] = Define a page title p[summary] = An URL description, most likely describing the contents of the page p[url] = The absolute URL for the page you're sharing p[images][0] = The URL of the thumbnail image to be used as post thumbnail on facebook
这很简单:你不需要任何js或其他设置。只是一个HTML原始链接。 以您想要的任何方式设置A标签的样式。
我遇到了这个问题并用manuel-84的建议修复了它。使用400x400px图像效果很好,而我的小图像从未出现在共享器中。
请注意,Facebook建议至少200像素的方形图像作为og:image标记: https://developers.facebook.com/docs/opengraph/howtos/maximizing-distribution-media-content/#tags
这对我有用:我在标签后面的页面上放置了所需的缩略图,使其太小而无法看到..
<img src="imagename.jpg" width="1" height="1" />
我没有用高度0和宽度0测试它,但它可能仍然可以工作..这不保证用户将选择此图像..
此外,Facebook似乎在您的页面上缓存缩略图,并且不会总是检查它是否为新的..尝试将此添加到您网站上的另一个页面,您将看到它的工作原理。
Facebook有一套 开放图元标记 它看起来决定显示哪个图像。
Facebook图像的关键是:
<meta property="og:image" content="http://ia.media-imdb.com/rock.jpg"/> <meta property="og:image:secure_url" content="https://secure.example.com/ogp.jpg" />
它应该出现在 <head></head> 标记在页面顶部。
<head></head>
如果这些标签不存在,它将查找指定图像的旧方法: <link rel="image_src" href="/myimage.jpg"/> 。如果两者都不存在,Facebook将查看您页面的内容并从您的页面中选择符合其共享图像标准的图像:图像必须至少为200像素×200像素,最大宽高比为3:1,并且在PNG中, JPEG或GIF格式。
<link rel="image_src" href="/myimage.jpg"/>
的 我可以指定多个图像以允许用户选择图像吗? 强>
是的,您只需按照希望它们出现的顺序添加多个图像元标记。然后将向用户显示图像选择器对话框:
的 我指定了适当的图像元标记。为什么Facebook不接受这些变化? 强>
一旦网址被共享,Facebook的抓取工具就会拥有一个用户代理 facebookexternalhit/1.1 (+https://www.facebook.com/externalhit_uatext.php) ,将访问您的页面并缓存元信息。要强制Facebook服务器清除缓存,请使用 Facebook Url调试器/ Linter工具 他们 于2010年6月推出 刷新缓存并解决页面上任何元标记问题。
facebookexternalhit/1.1 (+https://www.facebook.com/externalhit_uatext.php)
此外,页面上的图像必须可由Facebook抓取工具公开访问。你应该指定绝对网址 http://example.com/yourimage.jpg 而不仅仅是/yourimage.jpg。
的 我可以使用客户端代码(如Javascript或jQuery)更新这些元标记吗? 强> 与搜索引擎抓取器非常相似,Facebook刮刀不执行脚本,因此下载页面时出现的元标记都是用于图像选择的元标记。
的 添加这些标记会导致我的页面不再验证。我怎样才能解决这个问题? 强>
您可以将必要的Facebook命名空间添加到标记中,然后您的页面应通过验证:
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:og="http://ogp.me/ns#" xmlns:fb="https://www.facebook.com/2008/fbml">
的 使用Facebook提要对话框而不是共享对话框来显示自定义图像 强>
例:
https://www.facebook.com/dialog/feed?app_id=1389892087910588 &redirect_uri=https://scotch.io &link=https://scotch.io &picture=http://placekitten.com/500/500 &caption=This%20is%20the%20caption &description=This%20is%20the%20description
我无法让Facebook从特定帖子中选择正确的图像,所以我做了本页概述的内容:
https://webapps.stackexchange.com/questions/18468/adding-meta-tags-to-individual-blogger-posts
换句话说,这样的事情:
<b:if cond='data:blog.url == "http://urlofyourpost.com"'> <meta content='http://urlofyourimage.png' property='og:image'/> </b:if>
基本上,您将在您网站的HTML中对if语句进行硬编码,以使其更改元内容,无论您为该帖子更改了哪些内容。这是一个混乱的解决方案,但它的工作原理。
要更改标题,描述和图像,我们需要在head标记下添加一些元标记。
步骤1 : 在head标记下添加元标记
<html> <head> <meta property="og:url" content="http://www.test.com/" /> <meta property="og:image" content="http://www.test.com/img/fb-logo.png" /> <meta property="og:title" content="Prepaid Phone Cards, low rates for International calls with Lucky Prepay" /> <meta property="og:description" content="Cheap prepaid Phone Cards. Low rates for international calls anywhere in the world." />
下一步 : 点击下面的链接 https://developers.facebook.com/tools/debug
在文本框中添加您的URL(例如 http://www.test.com/ )你提到标签的地方。 单击DEBUG按钮。
完成。
你可以在这里验证 https://www.facebook.com/sharer/sharer.php?u=http://www.test.com/
在上面的网址中,u =您的网站链接
请享用 !!!!