启用新主题+让lifestream支持饭否 « 晓 - Life Journal

启用新主题+让lifestream支持饭否

cnbeta上看到了这个主题,名为Irresistible,一眼就喜欢上了这个布局设计。于是花了一整天的时间终于将其设置好。这个主题需要插件lifestream支持,并且原生支持google analytics和feedburner,可以选择多种配色方案,自定义LOGO和侧边栏位置,直接可以展示flickr,而且还自带一个archieve.php存档文件模板。搭配上lifestream插件后,更是可以展示你的微博更新——支持许多网站。用了这个主题后,晓晓省掉了许多的第三方插件……顿时舒服了许多。

但是呢,小小的遗憾是,lifestream插件是国外的,所以对国内的插件支持并不好……晓晓花了点时间研究了下这个插件,发现这个插件代码写的非常漂亮,要添加一个新的微博服务非常简单,只需要继承一个类即可。下面是晓晓自己写的用于饭否的代码,只要将其复制到插件目录下的inc\extensions.php文件末尾即可。如果希望使用内置的图标的话,那么把饭否的favicon转换并命名为fanfou.png保存到插件的images文件夹下即可。对于其他国内服务同理哦~只需自己替换相应fanfou字符串即可。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
class Lifestream_FanfouFeed extends Lifestream_Feed
{
	const ID		= 'fanfou';
	const NAME		= 'Fanfou';
	const URL		= 'http://www.fanfou.com/';
	const LABEL		= 'Lifestream_MessageLabel';
	const CAN_GROUP	= false;
	const DESCRIPTION = 'Specifying your password will allow Lifestream to pull in protected updates from your profile. Your password is stored in plaintext in the database, so only do this is you have no other option.';
 
	function __toString()
	{
		return $this->options['username'];
	}
 
	function get_options()
	{		
		return array(
			'username' => array($this->lifestream->__('Username:'), true, '', ''),
			'password' => array($this->lifestream->__('Password:'), false, '', ''),
			'hide_replies' => array($this->lifestream->__('Hide Replies'), false, true, false),
		);
	}
 
	function _get_user_link($match)
	{
		return $match[1].$this->get_user_link($match[2]);
	}
 
	function _get_search_term_link($match)
	{
		return $match[1].'<a href="https://search.fanfou.com/search?q='.urlencode($match[2]).'">'.htmlspecialchars($match[2]).'</a>';
	}
 
	function get_user_link($user)
	{
		return '<a href="'.$this->get_user_url($user).'" class="user">@'.htmlspecialchars($user).'</a>';
	}
 
	function get_user_url($user)
	{
		return 'http://www.fanfou.com/'.urlencode($user);
	}
 
	function get_public_url()
	{
		return $this->get_user_url($this->options['username']);
	}
 
	function parse_users($text)
	{
		return preg_replace_callback('/([^\w]*)@([a-z0-9_-]+)\b/i', array($this, '_get_user_link'), $text);
	}
 
	function parse_search_term($text)
	{
		return preg_replace_callback('/([^\w]*)(#[a-z0-9_-]+)\b/i', array($this, '_get_search_term_link'), $text);
	}
 
	function get_url($page=1, $count=4)
	{
		if ($this->options['password'])
		{
			$url_base = 'http://'.$this->options['username'].':'.$this->options['password'].'@api.fanfou.com';
		}
		else
		{
			$url_base = 'http://api.fanfou.com';
		}
		return $url_base . '/statuses/user_timeline/'.$this->options['username'].'.rss?count='.$count.'&page='.$page;
	}
 
	function save()
	{
		$is_new = (bool)!$this->id;
		parent::save();
		if ($is_new)
		{
			// new feed -- attempt to import all statuses up to 2k
			$feed_msg = array(true, '');
			$page = 0;
			while ($feed_msg[0] !== false && $page < 10)
			{
				$page += 1;
				$feed_msg = $this->refresh($this->get_url($page, 20));
			}
		}
	}
 
	function render_item($row, $item)
	{
		return $this->parse_search_term($this->parse_users($this->parse_urls(htmlspecialchars($item['description'])))) . ' [<a href="'.htmlspecialchars($item['link']).'">#</a>]';
	}
 
	function yield($row, $url, $key)
	{
		$data = parent::yield($row, $url, $key);
		$string = $this->options['username'] . ': ';
		$description = $this->lifestream->html_entity_decode($row->get_description());
		if (str_startswith(strtolower($description), strtolower($string)))
		{
			$description = substr($description, strlen($string));
		}
		if ($this->options['hide_replies'] && str_startswith($description, '@'))
		{
			return false;
		}
		$data['description'] = $description;
		return $data;
	}
}
$lifestream->register_feed('Lifestream_FanfouFeed');
Sid 晓 星期六, 六月 13th, 2009 11:01 下午 GMT +8
  1. Showfom

    :007 偶来了

    星期六, 六月 13th, 2009 11:05 下午 GMT +8
    • Showfom

      帮你测试嵌套回复

      星期六, 六月 13th, 2009 11:05 下午 GMT +8
      • 晓晓

        好快…… :009
        ……
        ……
        ……测试嵌套回复哈……

        星期六, 六月 13th, 2009 11:18 下午 GMT +8
  2. lovee

    嗯 :007 这个主题不错
    晓晓来抱抱 :070

    星期日, 六月 14th, 2009 12:54 上午 GMT +8
    • 晓晓

      loveeee抱抱~~~

      星期日, 六月 14th, 2009 08:09 上午 GMT +8
  3. 私人媒体

    这个主题还真不错!赞一个!

    星期三, 六月 17th, 2009 11:48 下午 GMT +8
  4. 托尔·银月

    WOW THEME出品,都是功能异常强大的说

    星期二, 六月 30th, 2009 01:51 下午 GMT +8
    • 晓晓

      啊啦,银月呀~(其实不认识……第一眼还以为是海盗船长……)
      话说头像让偶想到植物大战僵尸……
      WOW THEME的其他主题感觉都没什么特色,倒是绝大多数都需求lifestream……

      星期二, 六月 30th, 2009 06:03 下午 GMT +8
      • 托尔·银月

        这个头像就是植物大战僵尸官网出品,DIY的~~~~

        话说这个主题我今天试了汉化版,shit~白屏~汗啊

        星期二, 六月 30th, 2009 08:55 下午 GMT +8
        • 晓晓

          当初晓晓直接在wp 2.8下启用这个主题的时候也出现了这个问题。
          万般无奈之下晓晓临时降级到2.7,然后启用就正常了。再升级到2.8也没问题了。
          也不清楚是啥问题。。。

          星期二, 六月 30th, 2009 08:57 下午 GMT +8
          • 托尔·银月

            我只好先不用了,5KEY的V6也很好很强大,先用着~~

            话说给评论加表情你用的什么插件?我用的CarzyLong的CS插件,表情是出来了,就是不能点击加上

            星期二, 六月 30th, 2009 09:23 下午 GMT +8
            • 晓晓

              晓晓用的也是一样的啊~
              不能加上的话,先检查一下comment框的id是否符合要求吧~此外,表情使用的代码也有要求——晓晓设置成“:”加数字的格式,貌似就么问题了。。。 :024

              星期二, 六月 30th, 2009 09:30 下午 GMT +8
              • 托尔·银月

                看来也是这个ID的问题。
                这个在哪里啊?我从那个php里找了bodyID,好像不对

                星期二, 六月 30th, 2009 09:41 下午 GMT +8
                • 晓晓

                  在插件设置页的最底下啊……那个留言框id。

                  星期二, 六月 30th, 2009 10:06 下午 GMT +8
                  • 托尔·银月

                    插件设置里面那个ID添什么呢??
                    PS:你这里的嵌套真疯狂
                    PS2:好像没有启动AJAX效果?

                    星期二, 六月 30th, 2009 10:10 下午 GMT +8
                    • 晓晓

                      看了一下你的博客,应该也是填写comment
                      PS:我刚才故意把嵌套数量扩展到10的说…… :082
                      PS2:你指的是哪个效果?是指偶的more按钮么?

                      星期二, 六月 30th, 2009 10:14 下午 GMT +8
  5. 托尔·银月

    我可是版聊能手喔~
    我指的是,我一点回复你,就跑到题头,然后又突然飞下来~~~
    不是应该立刻弹出来么?
    PS:好像那个不是AJAX效果?

    星期二, 六月 30th, 2009 10:22 下午 GMT +8
  6. 托尔·银月

    搞定了,能在评论时候加上表情了,爱死你了
    僵尸抱抱~~~

    星期二, 六月 30th, 2009 10:26 下午 GMT +8
    • 晓晓

      汗……怎么顺序乱了……抱抱抱抱……

      星期二, 六月 30th, 2009 10:30 下午 GMT +8
  7. 晓晓

    么事,晓晓在别人的博客不太有机会版聊,只能在自己的博客里过过嘴瘾。
    晓晓用的浏览器没有这样飞上飞下的效果……
    这个插件貌似也没有ajax效果吧……

    星期二, 六月 30th, 2009 10:27 下午 GMT +8
    • 托尔·银月

      WP Thread Comment,我用的这个,可以开启AJAX。反正我对这个方面算是一窍不通?呵呵~~~

      上次我和网生代(晓晓去过没有?)的z哥们(除了大灯和波斯外的第三作者,现在下落不明),在他blog版聊了好像有40+句?
      那嵌套框重重叠叠很威武~~~

      晓晓以后可以到我那里版聊嘛~~嘿嘿

      星期二, 六月 30th, 2009 10:35 下午 GMT +8
      • 晓晓

        哦,了解的。以前也一直用这个插件。但是插件毕竟还是会对博客速度有一定影响。所以偶现在还是用原生的。那个comment的ajax效果偶倒不是很在意……毕竟晓晓对基于js的ajax没多大好感的说……
        网生代啊,当然去过啊,好久以前……
        下次有空一定带板凳去版聊…… :024

        星期二, 六月 30th, 2009 10:43 下午 GMT +8
        • 托尔·银月

          晓晓,来嘀咕吧~~~我都在嘀咕的说~~嘿嘿(赤裸裸的挖角)

          话说,我怎么在你BLOG找不到RSS输出?订阅不能?!

          星期二, 六月 30th, 2009 10:55 下午 GMT +8
          • 晓晓

            嘀咕做的很好,但是api太烂,等那天api改善了偶再考虑…… :012
            用firefox的话,可以看得见有rss输出的……在地址栏上有图标……
            因为晓晓自己不太用订阅……所以也不太会弄那个东西(脸红……)

            星期二, 六月 30th, 2009 11:00 下午 GMT +8
            • 托尔·银月

              我把你对api的批评写到嘀咕上去了~~嘿嘿~~~

              我汗,我太久没有用那个订阅了~~
              习惯了别人烧好feed直接点击“订阅到GoogleReader”
              或者是点击巨大的订阅按钮得到一个rss地址,然后还是用Greader订阅~~

              星期二, 六月 30th, 2009 11:22 下午 GMT +8
              • 晓晓

                过几天等闲下来了研究下,也放个巨大的坐在椅子上看报纸的黄色小人在页面右上角去……

                星期二, 六月 30th, 2009 11:32 下午 GMT +8
                • 托尔·银月

                  反正我完成了订阅,哈哈

                  星期二, 六月 30th, 2009 11:44 下午 GMT +8
  8. dARK BLUE

    你好,很偶然来到这里,很喜欢你改的模版颜色,很安逸.
    不知道能否发一份给我,我小改下再用...
    先感谢
    QQ51100216
    EM:gongteng@gmail.com

    星期二, 九月 8th, 2009 01:26 下午 GMT +8
  9. dARK BLUE

    哦,刚在上面的官方找到了下载,有什么技术问题还要回来请你请教
    那个...你是男的还是女的哦...我倒

    星期二, 九月 8th, 2009 01:40 下午 GMT +8
    • 晓晓

      啊拉拉,实在抱歉这么晚回复哈……

      偶性别么?保密啦~

      星期五, 九月 11th, 2009 07:12 下午 GMT +8
  10. dARK BLUE

    方便的话,还是给你现在的模版发给我一份吧,我从官方下的那个总提示含有非法参数,上传完用不了,不知道为啥...

    星期五, 九月 11th, 2009 10:34 下午 GMT +8
And a comment!
Your name
Your mail (will not be published)
Your website