首先这不是将微博秀放到侧栏,那种方法会给你的页面加载js,而且也不是很和谐。百度、google了一番,发现将微博同步到wordpress是老早就有的方法,但是却没能找到几篇像样的教程,太少了,要么是代码不全,要么是具体操作没有说清楚。 另外 现在大多流行将wordpress的文章同步到微博,哪有将微博放到博客同步的? 所以今天就索性弄一个比较全的教程,把我碰到的问题一并记录一下。
将微博同步到博客,需要调用RSS,RSS是什么,你可以百度一下,简单地说它是一种订阅服务/工具,你可以通过它订阅你喜欢的网站,订阅之后你只需要一个RSS阅读器就可以看到这些网站的最新文章,而不需要专门跑去网站查看。 订阅RSS之后就可以调用wordpress的feed功能让它显示出来。
新浪为了保持流量一直没有提供RSS订阅,新浪不提供,那么就会有人去做。这里我们使用的月光博客的新浪微博的RSS Feed功能,月光博客提供了现成的rss-feed 。一般我们使用的是草根版sinarss2.php 。
- 1、首先我们要获得新浪微博的数字账号(登录新浪微博–点击右上角昵称–地址栏链接 - http://weibo.com/1795173271/profile?topnav=1&wvr=6 (红色的一串数字就是你的微博数字帐号)
- 2、下载我已经上传好的sinarss2.php 放到你网站的根目录(这个已经修复了微博发布特殊字符而报错的bug),在上传之前请注意打开文件修改里面的 $username='1795173271',改成你自己的数字账号再上传!
- 3、上传上之后,自己的新浪微博rss地址就是:http://www.inlojv.com/sinarss2.php?id=1795173271(请将www.inlojv.com改为你的网址,id后面的数字改成你的数字账号)
- 4、在wordpress调用此rss,怎么调用?这里是关键。本站的方式是新建一个php文件,放在主题目录下,然后到WP后台新建页面-选择这个模板。下面就是这个模板文件的核心代码(完整代码请在下面下载sina-t.php):
<ul> <?php require_once (ABSPATH . WPINC . '/class-feed.php'); date_default_timezone_set('PRC'); $feed = new SimplePie(); $feed->set_feed_url('http://www.inlojv.com/sinarss2.php?id=1795173271'); $feed->set_cache_location($_SERVER['DOCUMENT_ROOT'] . '/wp-content/cache'); $feed->set_file_class('WP_SimplePie_File'); $feed->set_cache_duration(600); $feed->init(); $feed->handle_content_type(); $items = $feed->get_items(0,10); foreach($items as $item) { echo '<li class="t_li"><div><a rel="nofollow" target="_blank" href="'.$item->get_link().'" >'.$item->get_description().'</a></div></li>'; } ?> </ul>
上面的set_feed_url要改成你自己的网站和数字账号;set_cache_location里面的路径是缓存文件夹,如果你在wp-content下没有cache,请自己手动新建一个cache文件夹,并且权限要为可写。
这里有一份我自己使用的微博页面模板sina-t.php,你可以下载下来放到你的主题目录下,然后在WP后台新建页面调用这个模板。由于这个模板里面html结构是根据本站页面写的,所以要换成你自己的结构和CSS样式,具体可以参考你自己的page.php模板来套。
完成以上步骤基本就可以了。可以参考本站的微博页面:http://www.inlojv.com/weibo
本站文章除注明转载/出处外,均为本站原创或翻译。若要转载但请务必注明出处,尊重他人劳动成果。
转载请注明出处链接 : https://www.inlojv.com/4377.html