如何动态设置Facebook共享的图像

时间:2015-03-13 15:25:12

标签: c# asp.net facebook webforms

我在c#codebehind中设置了facebook共享的所有属性。但是我没有运气图像,我找不到任何解决方案。

我如何添加网站名称:

HtmlMeta siteNameProp = new HtmlMeta();
siteNameProp.Attributes.Add("property", "og:site_name");
siteNameProp.Content = "MyName";
Page.Header.Controls.Add(siteNameProp);

我如何尝试添加图片:

HtmlMeta imageProp = new HtmlMeta();
imageProp.Attributes.Add("property", "og:image");
imageProp.Content = "/Content/Images/FB-share.png";
Page.Header.Controls.Add(imageProp);

我的图像尺寸为1200x630(我在SO上读到建议使用此尺寸)。我的图像路径是/Content/Images/FB-share.png。

按下分享时没有显示图像。我能做什么?路径错了吗?与c#中的路径不太一样。

1 个答案:

答案 0 :(得分:0)

您是否尝试过使用https://developers.facebook.com/tools/debug

有一个打开图表属性部分,用于检查您是否将图像值正确设置为og:image

您还应该开始使用低于1200 x 630像素的较低分辨率:https://developers.facebook.com/docs/sharing/best-practices#images

[编辑]

有些情况下Facebook会随机选择分辨率最小的图片,所以我所做的就是明确将og:image值设置为元:

<meta id="featuredimage" runat="server" name="og:image" />

然后将内容值设置为我的代码隐藏:

featuredimage.Attributes.Add("content", "image url here");

快乐的编码!