我目前有一个视图页面,显示包含每个节点的图像或视频的字段。我也在利用colorbox查看每个图像和视频。
我的目标: 在视图的每个节点上添加一个like按钮。 facebooks墙上的帖子需要链接回视图页面(这是它开始变得复杂的地方)将动态打开colorbox(目前我的优先级列表上的最后一个)
我使用了http://drupal.org/project/fb_social,它可以很好地处理视图,但是og:url会回到http://localhost:8888/node/100。我可以沿着这条路走下去,但我需要更精细的控制该网址。
我还发现了这篇文章:drupal views facebook like button 这有点模糊。如果我只是将类似按钮代码添加到视图自定义域中,则所有视图都会反复复制按钮实例。如果我在节点/ 4上单击一次,那么页面上的所有其他节点也会被喜欢...
我非常喜欢Facebook社交插件集成模块,但它开箱即用,它指向完整的节点页面。有关如何自定义该URL的任何建议?我甚至考虑过使用路径重定向模块,但我认为它不是一个可行的解决方案。
设定: Drupal 6.22 视图6.x-3.0-rc3 fb社交插件6.x-1.0-beta9
答案 0 :(得分:0)
最简单的方法是覆盖特定视图的模板,同时避免额外模块加载的额外开销。您希望将Facebook(如js代码)添加到页面顶部某处(例如,在视图标题中)(来自:http://developers.facebook.com/docs/reference/plugins/like/)
<div id="fb-root"></div>
<script>(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_GB/all.js#xfbml=1&appId=132294920190866";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
然后在每个行的特定行模板中添加输出代码
<div class="fb-like" data-href="http://localhost:8888/myurl" data-send="true" data-width="450" data-show-faces="true"></div>
对于主题行模板,请查看视图2主题指南:
或尝试使用语义视图模块,如果您希望进行更多主题,或者不想弄乱模板文件: