我有一个项目,客户强烈偏好Facebook的“分享”按钮而非“喜欢”按钮。我需要稍微修改'like'来说服他们使用它。我很清楚“共享”按钮已被弃用(并因此而存在问题),但他们一直坚持不懈。
除了按钮的verbage外,他们似乎更喜欢的是“共享”按钮弹出窗口,它还允许用户更改默认文本(由Facebook的开放图形标签提供,即og:description等)点击它。
如果它可以更像'分享',它们可以被移动使用'喜欢'按钮。是否有可能以某种方式获得“喜欢”按钮弹出对话框(当您单击按钮时出现并且具有og:title,og:image,og:description等标签)出现在弹出窗口中?优选地,用户能够通过点击来更改该文本,因为“共享”弹出允许?
他们也想要计数器,否则我只是在下面用我的锚标签使用css。
我尝试了以下内容,但在“喜欢”按钮上没有运气。 Google将替换为我的网站及其自己的og标签:
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:og="http://ogp.me/ns#" xmlns:fb="http://www.facebook.com/2008/fbml">
<head></head>
<body>
<div id="fb-root"></div>
<script>
function share() {
FB.ui({
method: 'stream.share',
u: 'www.google.com',
});
};
(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>
<fb:like id="fbLike" href="www.google.com" onclick="share();" send="false" layout="box_count" show_faces="false" ></fb:like>
<a href="#/" onclick="share();">Can I get the like button to work like this?</a>
</body>
</html>
答案 0 :(得分:1)
为什么不使用Feed对话框在用户墙上共享。是否有任何特殊原因不使用我错过了?
调用feed对话框的代码如下:
function share() {
FB.ui({
method: ‘feed’,
link: ‘link of where the user should land when he click on post goes here’,
picture: ‘picture url goes here’,
name: ‘Name goes here’,
caption: ‘Caption goes here e.g www.google.com’,
description: ‘description goes here’},
function (response) {
if (!response || response.error) {
//When posting fails
} else {
//When posting succeeds
}
);
}
您可以在此处找到更多详细信息:https://developers.facebook.com/docs/reference/dialogs/feed/
答案 1 :(得分:0)
好吧,似乎没有人有解决方法。我想如果有人发现我的锚点示例对于创建自定义共享按钮很有用(即使它已经被弃用了 - 说真的,除非你在我的船上,帮助自己并且只是使用它),至少我的问题帮助了某人。我发现添加:
style="overflow:hidden"
到fb:like标签,然后将以下代码添加到脚本块的开头(就在共享功能之前):
window.fbAsyncInit = function() {
FB.init({
appId: ''
});
FB.Event.subscribe('edge.create', function(response) {
share();
});
};
将隐藏类似的对话框,并在用户单击like按钮时使用共享弹出窗口(edge.create会像操作一样监听用户)。但问题是,用户将在用户的墙上有两个帖子 - 一个用于类似操作,另一个用于共享。正如预期的那样发布相同的开放图形标签标题,图像和描述信息,只有一个帖子说他们'喜欢'而另一个说他们'共享'。但是我需要阻止'喜欢'。当然,计数器将增加2.关闭,但不够好。
只是在弹出窗口中出现类似对话框的任何方法吗?