2012-03-16 117 views
0

如何动态更改href链接?如何动态更改href链接?

<link rel="image_src" href="" id="ShareImageID"/> 

这样,当某人在Facebook上共享网页时,缩略图会显示该链接标记中的特定图像。

我不想更改每个页面的链接。

我也尝试使用og:image,它工作但我无法动态地改变它。我也试过这个

<script> 
var ShareImageIdVar = location.href.match(/\d+/); 
document.getElementById('ShareImageID').href = 
     "http://www.mysite.com/Images/"+ ShareImageIdVar +".jpg"; 
</script> 

,但它不工作:(Facebook仍然选择其他缩略图。随机一个。

+0

对不起,我不知道你实际上想问什么,更具体吗? – JimmyBanks 2012-03-16 20:19:18

+0

我刚刚编辑:) – user1200640 2012-03-16 20:21:02

+3

“不工作”是_never_足够的问题描述。 – 2012-03-16 20:21:39

回答

0

如果你想Facebook来选择合适的图像时,您的链接贴出来,你需要要在你的PHP文件的<head>选择适当的OpenGraph图像。

你可以阅读更多有关的Open Graph这里https://developers.facebook.com/docs/opengraph/

确保拥有所有必要的元素OG,为它工作道具erly。

既然你是问有关图像,你应该有这样的事情:

<head> 
<meta property="og:image" content="/images/pageimage.png" /> 
</head> 

动态改变,只需要使用一个echo特定于PHP页面 编辑/像这样:

<meta property="og:image" content="<?php echo "$imageurl" ?> /> 

只在每个php页面上设置变量$imageurl

+0

正如facebook的建议我可以这样说' 但我不想添加一个链接到每个页面 ' – user1200640 2012-03-16 20:33:30

+0

是的,这很好,一个完整的网址,它呢? – JimmyBanks 2012-03-16 20:35:10

+0

我想通过函数更改内容链接? – user1200640 2012-03-16 20:35:25

1

您无法使用JavaScript更改Facebook图像。当你在Facebook上分享链接时,Facebook会刮擦寻找图像的页面。这个刮不会运行JavaScript。

您将需要更改图像服务器端,可能使用PHP。

+0

我该怎么做?请教任何教程视频或文章? – user1200640 2012-03-16 20:41:51

+0

完全是另一个问题。你使用什么服务器端语言?你从哪里得到文件路径?接受你的第一个问题的答案。谢谢。 – iambriansreed 2012-03-16 21:03:34