去除 wordpress 里面的 google fonts

最近使用 Google Fonts 做字体的网站越来越多了,最为典型的就要数 Stack Overflow 以及 WordPress 了,在天朝,访问使用了 Google Fonts 的网站有一个通病:访问极慢(原因你懂的),于是乎结果就是,如果你不去主动点击浏览器的停止加载按钮,页面就会一直被阻塞(通俗的说就是一片空白)。

尝试寻找一些浏览器级的解决方案,比如把 Google Fonts 自动干掉或者替换为大陆服务器一类的,但是无果。看来只有自己改造了,Stack Overflow 是不指望了,但是 WordPress 是掌握在我们自己手中的,想要干掉并不难,基本上从以下几个方面着手:

1. 使用插件 Remove Open Sans font Link from WP core,这个插件的功能和使用会像他的名字长度一样复杂,吗?不,他就是简单的把 WordPress 里面的 Google Fonts 干掉了,使用也很简单,添加后启用就行了;

2. 上面一条是针对 WordPress 后台管理页面的,如果想要去除主题里面的 Google Fonts 怎么办呢?找到主题文件里的 functions.php ,在文件末尾加上如下代码即可:

3. 其实1和2实现的功能是重复的,取其中的一个方案即可,但是我当时使用时,同时启用了以上两个方案后,页面中依然会加载 Google Fonts,这么丧心病狂的事情,最后经过我周密调查,发现是页面上的 Google Adsense 挂件干的,这家伙每次加载就会搞一个 iframe,然后里面的页面会加载 Google Fonts。考虑到挂了十几年的 Google Adsense 却从没有收到过他的支票(纯支持的赶脚啊,谁叫我是谷粉呢?),他不但不怀着一颗感恩的心提高一点我的搜索引擎排名,还给我的加载速度拖后腿,于是一怒之下,我就把这个挂件干掉了。于是乎,世界恢复了宁静,整个 Blog 前前后后都不再有讨厌的 Google Fonts 了。

你也想试试吗?那就赶快拿起键盘吧。

一次 WP 主题设置页面不显示的问题解决

由于更新了主题的相关配置,所以想在主题后台去设置一下,问题来了,主题的“选项”链接不见了,以为是主题的相关代码跟最新版的wordpress不兼容,查询了N个文档,主题改来改去依然无果,插件全部禁用也是一样,使用本地wordpress启用本主题却没有任何问题,说明不是主题代码的事。
访问 wp-admin/themes.php?page=functions.php 页面时显示 “你没有权限” 访问该页面,感觉应该是文件权限的问题:

You do not have sufficient permissions to access this page themes.php functions.php

根据提示语句 Google 之,按照网上各种方法(改主题代码、改文件权限等)修改后无果,郁闷了好几天,问题依然无法得到解决。但是隐约间觉得是自己安装的一个叫做 iThemes Security 的插件造成的问题,使用的时候就发现这家伙做了不少的改动。
但是禁用这个插件并不能修复问题,后来无意中发现自己的 wp-config.php 文件多了一句

顾名思义就是不让我在网页中修改 Theme 和 Plugin 文件嘛,干掉之,问题解决。

Blog 被黑了

一大早上起来就发现 BLOG 被黑,页面打不开,后台可以进。于是乎进行了自救。话说 WordPress 的安全性真不是一般的差,随随便便就被黑了一片,说好的安全更新在哪啊?

能够顺利自救而不丢失数据,还得得益于 Homezz 完善的备份系统,分分钟找回数据库备份,有木有?恢复数据库之余还顺便搬了个家,话说 PHP 5.2.x 的安全性着实不敢恭维。

WP 主题中添加 AJAX 响应

为 WordPress Theme 添加可在匿名(未登录)情况下访问的 AJAX 响应,网上资料很凌乱,遂自行记录过程如下。

1. 首先确保主题中有 jQuery 库(似乎这已是各小型网站的标配),没有的话可以在主题 header.php 文件中添加:

2. 然后需要在页面中插入当前网站的 URL 信息,这个信息可以通过如下代码:

如此一来系统将自动在页面中返回 admin-ajax.php 的网络路径了:

于是在将来自己写的 JS 代码中,只需要调用 MyAjax.uri 就能获取到 admin-ajax.php 文件的地址了;

3. 在 function.php 中添加准备用来响应 ajax 请求的 function:

4. 然后开始添加 JS 代码,发送 AJAX 请求,这个放在主题的相应 js 文件里面就行了:

code on Gist

部署完毕,更多内容请参见官方文档

启用了Ajax Comments-Reply

自从停止使用K2主题以后,就一直很想念他那繁多的让人眼花缭乱的功能,其中以Ajax Comment为甚,一直想自己手动安装一个,可因为懒一直没有去弄。某日发现有个Ajax Comments 2.0,发现功能不咋样还要收取一美刀的费用,遂作罢,于是就看见了这个国货精品:Ajax Comments-Reply,我不清楚一开始是在哪里由谁最先开发的,反正我用的是这位仁兄的作品。安装很简单,上传后激活就可以了,感觉也还不错,最大的好处是,如果你没有什么特别的要求的话,不需要替换comments.php或者修改模板什么的。感兴趣的朋友可以去看看,不好的一点是,这哥们使用的skydrive是打开网页就自动下载的,实在是有点太殷勤,不过这都是小事了。安装后的效果大家可以看看我这篇文章的评论部分..这个插件实际上还是使用了其自制的comments.php,只是其并不需要你覆盖原来的就是了,所以你原先如果对自己的模板评论部分做过hack的话,它们将全部消失,要重新hack过了..
这里说一下Gravatars的参数添加位置,找到插件目录中comments.php文件里的这一段~


其中第二行就是我们要添加进去的,这样应该就可以实现Gravatars头像的显示了..附送我修改过的comments.php (点击下载)
有人说其与SK2不兼容,这个我倒是没怎么看出来,反正先用着呗,出了问题禁用掉插件就可以回到从前了~

和Spam说再见

人怕出名猪怕壮(当然我现在还很瘦..),刚刚开始Blogging的时候,常常因为自己的Blog无人光顾而烦恼,以至于只要有一个人留言就会感觉到异常的兴奋,那时候的我还比较单纯,不知道Spam为何物,可当我的文章被搜索引擎收录了之后我就明白了,原来spam就是那么可怕的一种东西,给我带来的直接创伤是让我放弃了曾经使用了很久并至今喜爱的Blogger而转投Wordpress
Spam是那么可怕,他来的时候如潮水一般,让我想起了后天里的大水冲上曼哈顿的那一幕,于是我必须消除它以后快。
对于Wordpress而言,现在市面上对于Spam普遍使用的办法有大概如下几种:

1.通过插件自动防御Spam,如AkismetSpam KarmaBad Behavior等,这样的办法适合作者和读者都比较懒的Blog使用,缺点是容易出现错判或楼判的现象,而且某些插件极为占用资源,对于某些服务器性能特别差或者服务商限制了CPU使用率的朋友来说它的危害甚至有可能超过Spam本身;
2.安装让读者在留言前先做一些填数字猜谜语算四则运算等小游戏的插件,比如Did You Pass Math?ImgCode Mod等,这个办法是个一劳永逸的办法,缺点是如果你的读者比较懒或者他们幼儿园数学不及格的话你的留言数就会大大减少;
3.自己设定需要被拒绝的来访者(通过标注其ID、URL、email、留言内容中的关键字等)留言,这样做的好处是很环保,缺点是工作量很大,具体的办法是在WP后台设定以及安装诸如Bannage
4.关闭留言,这就是传说中的绝招了,但其就像七伤拳,所以还有一些这种的办法,那就是安装具有成批的开放和关闭文章的留言或者自动在旧文章中关闭留言功能的插件。

有这么多办法总觉得如果但使用一种的话又达不到效果,用多了又感觉浪费资源,这里说说我的防Spam办法,原理很简单,因为Spamer到你Blog留言的目的很简单,就是增加其自身网页的点击率和链接数,所以其留言内容中一般都会包含网址,而为了让网址变成链接,他们一定会使用诸如<a href=”…” mce_href=”…”>…</a>或者[url=…]…[/url]之类的语句,我们只需要在WP后台的设置(Options)→评论(discussion)的评论黑名单(最下面那个框)里填上

[/url]
>/a>

就可以了。为了以防万一,你也可以开启Wordpress自带的Akismet,他的使用很简单,只要去wordpress.com申请一个用户,他就会发给你一个API Key,然后回自己的WP后台开启这个插件然后填入那个API Key就可以了。
PS:由于最近我的Blog连接不上Akismet服务器,以至于无法正常工作,所以我无奈换成了吃系统的Spam Karma了..
现在我的感觉就像我就抓住苍蝇挤破它的肚皮把它的肠子扯出来再用它的肠子勒住他的脖子用力一拉,呵--!整条舌头都伸出来啦!我再手起刀落哗--!整个世界清净了!Yeah!

启用了新后台和缓存程序

WordPress的后台太丑了,而且慢,所以安装了这个WP Tiger Administration插件,进入后台启用以后,感觉豁然开朗,很漂亮,布局也很合理(截图1截图2),使后台的管理和发帖变成了一种享受,速度也比以前快多了。这个插件的用法十分简单:下载、解压、上传、激活,就可以看到新的后台样式了。什么?你激活了没有发现和以前有什么变化?噢,是的,那么你使用的一定是先进的IE6.0或者IE7.0了,由于新后台使用了CSS2,所以只有FireFox和Opera等等除了IE以外的浏览器可以识别,赶快换个浏览器吧 🙂 除了看网络电视和使用网上银行,实在看不出IE系列还有什么优势可言了.. 🙁
还启用了一直都不是很想用的WP-Cache插件,据说是对Wordpress的载入速度没有任何提升,不过我看了看我的Host,CPU上限为1.3%,而我经常超过这个数字,所以只好把这个插件打开了。说实话,这个破插件除了降低CPU使用率还真是没有什么作用了。
PS:以上所说插件均可以在本站下载页面的others中找到..
Have fun!

AJAX归档插件

安装了一个以AJAX方式显示存档的插件,Extended Live Archive(示例下载)。由于K2模板默认提供了对这个插件的支持,所以只要是使用beta 1 r96以后的版本的K2模板,只要你激活了这个插件就可以直接使用了(昨天安装Gravatar的时候也发现K2模板是直接支持的,K2还真是功能齐全啊)。我正好就是用的K2模板,所以直接享福了,呵呵。 |inline

WP-Plugin:最新评论插件

我看到很多blog上的最新评论部分都是使用的Wordpress中文工具箱里面的模块,这个模块使用简便,可是其效率确实很低下,试了很多个插件都不是很满意,于是找到了这个:Brians Latest Comments,基本达到了我的要求。
使用方法如下(效果如我Blog侧栏中的“热贴”模块):
1.下载插件[原始地址][Box地址]
2.解压后上传brianslatestcomments.php至/wp-content/plugins 目录并激活
3.在适当的地方插入如下代码即可 |inline

WordPress与Blogger的使用比较

之前很长时间用Blogger作为我的发布平台,而今成了Wordpress。
这在很多人看来可以说是一次升级,可是对我来说这是个痛苦的选择,wordpress功能强大,插件众多,模板也不少,用的人很多,可是wordpress有一个很大的缺点就是维护成本过高,这里的维护成本指建站、修改、修复、备份、搬家等的一系列成本;而Blogger就不同了,如果你没有自己的空间可以直接用blogspot上的(虽然经常被封),如果你有自己的空间就可以选择FTP发布,整个建立过程并不需要什么精力和时间,你要做的仅仅是设置一下而已,搬家更爽,只要把发布项改一下,点击发布,你要做的就仅仅只是袖手旁观了。
让我们来从几个方面看这两个平台的高下: |inline