0

我最近接手了一个网站的管理,我已经建立了一个网站的本地测试实例,这样我就可以慢慢地进行更改,测试它们等等,然后将它们移过来。无需冒险实时版本的完整性。我必须转换一些href等才能在本地工作,但我遇到的问题是不再显示类似facebook的按钮。

我读到 facebook 缓存我们网站的方式存在一些问题,这些问题有时会导致这个问题,但答案是使用 facebook dubugger 来测试网站。我不能这样做,因为该站点是本地站点,并且“赞”按钮在实时托管版本上运行良好。

编辑:澄清一下,我以前在本地网站上运行过社交媒体按钮,所以这不是问题。这些按钮甚至没有显示在本地测试版本上。

下面是我正在使用的脚本和 div(我使用的是 facebook 的 HTML5 版本);

<div id="fb-root"></div>
<script type="text/javascript">
(function(d, s, id) {
    var js, fjs = d.getElementsByTagName(s)[0];
    if (d.getElementById(id)) return;
    js = d.createElement(s); 
    js.id = id;
    js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
    fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>

这是我用来标记按钮位置的 div 之一。

<div class="fb-like" data-href="http://www.4siteconsulting.co.uk/case-study-1.html" data-send="false" data-layout="button_count" data-width="100" data-show-faces="false"></div>

div 显然与实时站点相关联,因为人们不喜欢本地版本。

有人有什么想法吗?

4

2 回答 2

1

虽然这不是一个令人满意的答案,但我已经从使用 facebook 开发人员的 HTML5 版本切换到他们的 iframe 版本。iframe 的自定义功能较少,但经过小幅调整后在本地运行没有问题。

我必须在 iframe href 地址的开头附加“http://”才能使其在本地工作,但现在一切正常。以下代码现在可以在本地站点上运行(未托管);

<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.4siteconsulting.co.uk%2Fcase-study-2.html&amp;send=false&amp;layout=button_count&amp;width=450&amp;show_faces=false&amp;font&amp;colorscheme=light&amp;action=like&amp;height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:80px; height:21px;" allowTransparency="true"></iframe>
于 2013-07-18T12:18:44.793 回答
0

它正在工作,但是您在之前的最后一行代码中缺少一个 ></div>

于 2013-07-18T08:37:39.857 回答