分享多篇博文

时间:2014-06-09 19:38:56

标签: string icons share social

我正在尝试使用社交共享按钮在同一页面上分享不同的实例。我在我的网站上设置了一个新闻稿页面,以使用'表单和列表模块。此模块显示所有新闻稿的列表,并且还显示同一模块中的每个特定帖子。有点像在同一个窗口中的页面刷新。

每个帖子的末尾都有不同的字符串(例如:udt_2246_param_detail = 5)。我没有让编辑器进入并在每个帖子中更新此链接,而是希望能够获取一个网址,该网址将获取当前帖子的网址字符串并仅共享" THAT"不发布帖子列表。

如果这对任何人都有意义并且他们有任何解决方法的理论,请分享您的想法!

我正在使用http://simplesharingbuttons.com/中的代码,这是一组用于社交分享图标的精彩代码。

1 个答案:

答案 0 :(得分:0)

编辑: SimpleSharingButtons.com现在可以让您通过一些JavaScript来完成所需的工作。我原来的答案如下:

有两种方法可以做到这一点。

1)使用JavaScript:

您几乎只需要添加一个onclick事件,该事件将使用共享页面打开一个新窗口。您将传递编码值document.URL作为URL参数

<a href="#" onclick="window.open('https://www.facebook.com/sharer/sharer.php?u=' + encodeURI(document.URL)); return false;"><i class="fa fa-facebook-square fa-2x"></i></a>

您还可以参考to this blog post了解更多详情。

此解决方案的问题在于您必须

a)使用您的主页进行后备,因此代码如下所示:

<a href="https://www.facebook.com/sharer/sharer.php?u=ENCODEDURLOFYOURMAINPAGE" target="_blank" onclick="window.open('https://www.facebook.com/sharer/sharer.php?u=' + encodeURI(document.URL)); return false;"><i class="fa fa-facebook-square fa-2x"></i></a>

b)或者只是使用上面代码的第一个版本而没有非JavaScript回退

此外,我不确定新窗口是否会被弹出窗口阻止程序阻止。

2)更好的解决方案是使用PHP(或任何其他服务器端语言):

如果您可以使用PHP,可以使用this code snippet在PHP中创建getURL函数:

<?php
function getUrl() {
$url  = @( $_SERVER["HTTPS"] != 'on' ) ? 'http://'.$_SERVER["SERVER_NAME"] :  'https://'.$_SERVER["SERVER_NAME"];
$url .= ( $_SERVER["SERVER_PORT"] !== 80 ) ? ":".$_SERVER["SERVER_PORT"] : "";
$url .= $_SERVER["REQUEST_URI"];
return $url;
}
?>

然后你可以使用这段代码:

<ul class="share-buttons">
<li><a href="https://www.facebook.com/sharer/sharer.php?u=<?php echo urlencode(getUrl()); ?>" target="_blank"><img src="images/flat_web_icon_set/color/Facebook.png"></a></li>
</ul>
相关问题