为WordPress添加分享到热门社会化媒体按钮(非插件)
SNS等社会化媒体(social media)是当下最热门的网络应用。在国外,绝大多数知名媒体的网站都有分享到主流社会化媒体的按钮,像FT中文网、华尔街日报、CNN.com等。“分享创造价值”,这也是WEB2.0的核心概念。而反观国内媒体,则鲜有如此开放之心态。人民网、新华网均没有分享按钮,唯有南方周末领风气之先。
其实有很多分享按钮小工具实现这个功能,像:国外有addthis.com sharethis.com国内有山寨版的jiathis.com等,但是这些都有一个缺点:不够个性。下面,我就教你如何为wordpress量身打造属于自己的一键分享到国内主流社会化媒体功能,包括:校内网、开心网、新浪微博、做啥、豆瓣网、鲜果网等。(效果预览见本文末尾)其实很简单,三分钟之内搞定,比我写这篇文章的时间要短的多。
第一步:下载我已经写好的分享按钮的PHP代码:bookmark.php,上传至wordpress主题根目录。
<?php $permalink = urlencode(get_permalink($post->ID)); $title = urlencode($post->post_title); $title = str_replace('+','%20',$title); ?> <li id="xianguo"> <a href="http://www.xianguo.com/service/submitdigg/?link=<?php echo $permalink; ?>& title=<?php echo $title; ?>" target="_blank" rel="nofollow">分享到鲜果</a> </li> <li id="douban"> <a href="http://www.douban.com/recommend/?url=<?php echo $permalink; ?>&title=<?php echo $title; ?>&sel=&v=1" target="_blank" rel="nofollow">分享到豆瓣</a> </li> <li id="zuosa"> <a href="javascript:u=location.href;t=document.title;t=t.substr(0,76);c=%22%22+(window.getSelection?window.getSelection():document.getSelection?document.getSelection():document.selection.createRange().text);c=c.substr(0,180);location=%22http://zuosa.com/collect/Collect.aspx?t=%22+encodeURIComponent(t)+%22&u=%22+encodeURIComponent(u);void%200">分享到做啥</a> </li> <li id="xiaonei"> <a href="http://share.xiaonei.com/share/buttonshare.do?link=<?php the_permalink() ?>&title=<?php the_title(); ?>"target="_blank" rel="nofollow" >分享到人人网</a> </li> <li id="kaixin001"> <a href="http://www.kaixin001.com/repaste/share.php?url=<?php the_permalink() ?>&title=<?php the_title(); ?>" title="分享到开心网" target="_blank" rel="nofollow">分享到开心网</a> </li> <li id="sina"><a href="http://v.t.sina.com.cn/share/share.php?url=<?php the_permalink() ?>&title=<?php the_title(); ?>"target="_blank" rel="nofollow" " title="分享到新浪微博" target="_blank" rel="nofollow">分享到新浪微博</a></li></code> 第二步:在wordpress主题样式表style.css文件中添加分享按钮的CSS样式: <blockquote><code>/************************************************ * bookmark * ************************************************/ #share { background:none repeat scroll 0 0 #FFF6EE; -moz-border-radius:5px 5px 5px 5px; -webkit-border-radius: 5px; background:none repeat scroll 0 0 #FFF6EE; border:1px solid #FFF6CC; width:602px; float:left; } #share li { background:url("images/share.gif") no-repeat scroll 0 0 transparent; float:left; margin:6px 0 0 5px; padding:4px 0 4px 20px; list-style-type:none; } #share li#fanfou { background-position:0 -44px; } #share li#facebook { background-position:0 -22px; } #share li#friendfeed { background-position:0 -66px; } #share li#douban { background-position:0 -110px; } #share li#xiaonei { background-position:0 -87px; } #share li#zuosa { background-position:0 -130px; } #share li#myspace { background-position:0 -153px; } #share li#kaixin001 { background-position:0 -176px; } #share li#xianguo { background-position:0 -199px; } #share li#sina { background-position:0 -220px; }</code></blockquote> 第三步:下载按钮图标,并上传至wordpress主题的images目录下。 第四步:在单篇日志模板页面添加如下代碼,我的是index.php(main index template),有的主题是single.php。 <pre lang="php"> <div id="share"> <ul><?php include(TEMPLATEPATH."/bookmark.php");?></ul> </div>
第五步:清除缓存,刷新页面,搞定。
最后:如果你乐意,欢迎分享此文到你常去的SNS网站上;
天啊,有现成的,自己写多麻烦啊。
不过自己写也是一种挑战!!
不一樣的,看你網站上安裝的那個了,JS的吧,會影響網站加載速度。
因为我自己从来不用(从来不用)这些SNS,所以也忽略了这方面的建设。
不过技巧不错,先收藏下来。
呵呵:)加強互訪,友情鏈接已加。
恩,效果不错。对不喜欢插件的人来说挺好。先收藏。
哎,没有用起来我
@小A 有什么困难嘛?O(∩_∩)O哈哈~
很实用的工具
正在寻求此功能,我下午就按你的方法添加上试试,感谢您分享,辛苦了~
懒得 自己做 直接用别人的就okay 了
非常棒,感谢分享,有个小小的建议,加上QQ空间的分享可能就更好了
@Turbo 谢谢你的建议,这个不难,呵呵:)
感觉这个方法有点麻烦,有简单点的吗
外面的分享按钮是JS的,加载到前就行了吧,也不会影响速度。
找的就是ta
这个方法还是比较实用的
这个东西自己做的话,会增加网站的负担,我的网站才3G每月的流量,不想增加图片,和代码的下载量,所以我觉得这样加上是不合算的,虽然比较有个性,学习了!
正在找这个微博分享的代码,谢谢了
第三步:下载按钮图标,并上传至wordpress主题的images目录下。
请问楼主,这个是在现在用的主题里的images目录下吗?
非常不错的分享代码,谢谢,要加上分享到Qzone就更好了
这个我的就不需要了。
这个比插件好!!谢谢你的无私奉献
很好的方法,把文字改为小图标更好,这样如果要添加其他网站分享的空间就更多了
你好哦,我用了你的这个代码,但是添加进去之后,分享的按钮全部错位了,我想问一下要怎样修改排版的位置呢?
@在中国 CSS的问题吧,和你主题的CSS不兼容。
写的很详细,绑定~~
总觉得开心那个写错了。。。。。其余的没研究过 不清楚
@KEMO 有时间研究下我。这段代码准备修改,去掉一些用的不频繁的,排序也可以改变下,增加分享到腾讯微博等。
正找呢,谢谢啦
出现这个错误,桑 心。。
Warning: include(D:\wwwroot\yxiao\Web/wp-content/themes/pixel/bookmark.php) [function.include]: failed to open stream: No such file or directory in D:\wwwroot\yxiao\Web\wp-content\themes\pixel\single.php on line 60
Warning: include() [function.include]: Failed opening ‘D:\wwwroot\yxiao\Web/wp-content/themes/pixel/bookmark.php’ for inclusion (include_path=’.;C:\php5\pear’) in D:\wwwroot\yxiao\Web\wp-content\themes\pixel\single.php on line 60
@yxiao 没放对地方。显示文件不存在。
好东西,学习了。
@双陈记 你那个情侣博客的主题搞的还是蛮有特色的嘛。
不错,学习了!!
喜欢非插件~
试了下,效果没有你的那么好!
@沫夏 主要是样式表的问题吧,马上要放出升级版了。
多谢分享,最近正在研究wp,正好用上
这个有些过时了,马上我就会发布升级版。
哇,这个不错。对于讲求速度的人来说,很棒。收藏了。