文章标签 » wordpress

wordpress 隐藏非主页的侧边栏

function bluehua_hide_widgets($sidebars_widgets) {
    if (is_home()) {
        return $sidebars_widgets;
    } else {
        return array();
    }
}

add_filter('sidebars_widgets', 'bluehua_hide_widgets', 10);

why mail2blog

这阵子一直用email更新这个blog,很爽。

优点:
1. 客户端变得很多,比如我现在吃饭的空用e71码这篇blog,blog变得可以随时随地。
2. 更稳定得编辑器,worpress自带得编辑器给我特不稳定得感觉,而且添加附件不方便。
3. 不用再备份blog,全在已发邮件里了,包括附件。

从我的e71发送
superscreenshot0029.jpg
———–
post by gmail~

wordpress plugin:搜索引擎关键词高亮

下载地址更新 2009.11.8
http://wordpress.org/extend/plugins/keywords-highlight-tool/
———-
由于blog的访客多来自搜索引擎,所以关键词高亮会大大的增强访客的浏览体验,帮助访客快速定位感兴趣的内容.

类似插件已有很多,但俺绝不是再造普通的轮子,一定要用浏览器兼容性最好的插件,没有就自己搞..

现存插件的实现方式有两种,一种用php在后端实现,另一种用js在前端实现.

php实现高亮,浏览器兼容性最好,但是有两个问题:

1.效率问题,不如用js实现,将压力分到前端; 2.不支持cache类插件,当然这个问题可以通过hack cache插件解决,但是不可取.

js实现高亮:

比较理想的实现方法,搜到一篇文章叫也谈Wordpress关键词高亮 里面讲到用js高亮关键词,但是中文gb转码使用了vbscript,所以仅支持ie浏览器

于是用自己的想法简单实现了一下这个功能, 点击搜索测试 第一个结果就应该是了

screenshot:

2009-7-21-21-48-56

跟上面提到插件的主要不同点:

  • 改进了高亮的实现方法,仅替换元素的text节点,防止造成元素事件失效
  • 判断如果不是外链过来的访客将不加载高亮的js脚本
  • 百度链接过来,中文gb转码时使用php后台转码,兼容所有主流浏览器

目前仅添加了对google,yahoo,baidu三个搜索引擎的支持,如果想支持更多,自行修改highlight.js即可

插件下载点这里

Gmail to wordpress:通过mail更新wordpress

个人比较习惯用email更新博客,写日记用的blogger一直是手机写邮件更新,于是打算这个工作blog也要这么搞

wordpress自身有个通过邮件更新的功能,但是很弱,不支持附件.所以俺再次拿python做练习

实现方式:

发布blog时只要写信给somebody+xxoo@gmail.com

脚本会定时检查somebody@gmail邮箱,

取出收信人是somebody+xxoo@gmail.com的未读邮件(加xxoo为了防止垃圾邮件),然后将邮件正文中引用的图片取出,上传到blog或着picasa,将返回的地址作为图片的新地址,然后通过wordpress的metaWeblog api 发布到wordpress

实现特性:

  • 可以通过添加"[[tag:t1,t2,t3]]"设定文章的标签
  • 可以通过添加"[[cat:c1,c2]]"设定文章分类
  • 可以添加"[[end]]"标记文章结尾,标记后面的字符将被忽略
  • 可以添加[[html]][[/html]]块发布纯html代码块
  • 可以将邮件中的图片提取,并上传到picasa或者wp
(备注:"[["实际使用用时要用三个,即"[[[xxxx]]]"这里用两个是因为本文也是通过这个脚本发布的)

运行环境:
python2.6(ubuntu)(其他版本未测),gdata库

部分代码:

def after_publish( self, mid ):

        self.mail.read( mid )


#实例化一个Gmail2Blog,参数依次为:gmail帐号,gmail密码,wp帐号,wp密码,blog的xmlrpc地址
myG2B = Gmail2Blog( 'somebody@gmail.com', 'xxxx', 'admin', 'xxxx', 'http://xxoo.com/xmlrpc.php' )



#将处理完的邮件标记为已读
myG2B.publish_callback = after_publish

#设置图片的上传方式,'picasa':上传到账户的picasa相册,'wp':上传到blog
myG2B.upload2 = 'picasa'
    
while True:
    #将收件箱中发送给'somebody+blog@gmail.com'的未读邮件发送到blog


    myG2B.publish_mail( 'INBOX' , '(UNSEEN) (TO \"somebody+blog@gmail.com\")' )
    #每隔十分钟检查一次
    time.sleep( 60 * 10 )

源码下载:
非常不靠谱版本(等靠谱了就放到vps上长期运行)

gmail2blog-sbeta.tar.gz

Gmail撰写截图:

screenshot_016.png

偶的又一wp插件:超级表情

10.16 2011更新,兼容至wordpress 3.2.1,修正标签不能切换

下载x-emotions_0_1_4
————————–
8.29 2009
更新一下,没想到还有同学在下载这个东西哈哈~
最近加了一套柏夫表情,发现图片大小不一样会有错位的问题,修正一下
效果就看我现在用的就好了~

下载:x-emotions_0_1_3

————————–

回复andy同学:如何自定义框的高度

请下载下面的样式文件

style.css

用记事本打开此文件

#xemotion_dialog_wraper{
	width:100%;
	height:400px;/*把这个高度改成想要的高度*/
	position:absolute;
	text-align:left;
}

然后传到插件的img目录覆盖原文件即可
—————————————–

原来俺的emotion 一直都是拼错的,少了个c
————>emoticons
——————————————

有同学反映评论页没有生效,请确定一下评论框textarea元素的id是否为’comment’,是否安装了其他评论编辑插件

——————————————

更新到0.1.2

修正Maria同学提交的bug

  • 为什么除了第一次,以后再用表情的分类都是乱码?

页面里没有指明编码方式,修正了~

下载:x-emotions_0_1_2

—————————————-

更新一下:修正了 伊迭 同学反映的两个bug\

  • 出现Fatal error: require_once() [function.require]: Failed opening required ‘../../../wp-load.php’ (include_path=’.:/usr/local/php5/lib/php’) in ……dialog_for_comment.php on line 69
  • 在你这显示正常,在我那就掉位了…显示不全
    几个浏览器都试遍了,就Opera好点….

0.1.1版本:x-emotions_0_1_1

———————————————–

周末很无聊,写日志很无聊,额,于是写了一个插件:x-emotions

,啊哈哈哈哈,想贴就贴~

下载: x-emotions_0_1

此插件最大的优点就是:可以添加多套表情,只要在表情目录新建一文件夹把新表情传到目录即可

安装时注意:里面的emotions文件夹的权限最好为777,cache文件要写到此目录

使用说明:

添加新表情:在插件的emotions目录新建一个目录(英文)然后把表情图片传到此目录,如果需要给此套新表情起个名字,则把名字写到一个utf-8编码的名为name.txt的文本文件里,并把此文件传到对应的表情目录.

注意:添加新表情之后必须删除emotions目录下的名字为’cache_for_editor.php’和’cache_for_comment.php’两个缓存文件,重建缓存之后才能看到新传的表情

自定义变量:

x-emotions.php 里的

$blue_emotions_enable_in_comments = true

//是否在留言启用此插件,默认为true,启用

screenshot

-------------------------

在编辑器使用

在编辑器使用时的对话框

在留言使用

在留言使用时的界面