分类目录归档:WordPress

新窗口打开链接插件External Links

之前有说过通过JS脚本的方法在新窗口打开链接,
但是显然操作起来不是那么的方便。
在网上找到一个插件,几天用下来感觉不错的。

官方站点:http://www.semiologic.com
最新版:V2.5

安装方法很简单,符合一般的WP插件安装流程:
下载最新版插件程序,上传之后解压缩在以下目录即可:
yoursite.com/wp-content/plugins

之后在“管理插件”下,将其启用即可。
最后在“选项”下,找到其栏目“External Links”,进去对其参数做些调整:

*Process all outgoing links, rather than only those within your entries’ content.
*Add an external link icon to outgoing links. You can use a class=”noicon” attribute on links to override this.
*Open outgoing links in new windows. Note that it is poor usability practice.

这三项的意思是:
1,由插件处理页面上所有的链接而不仅仅是日志内容中出现;
2,在链接的前方出现一个提示的小图标;
3,只对日志内容中出现的链接作相应处理。

个人推荐是只需要选中第2、3项即可,若是所有页面均在新窗口打开,
那么对于侧边栏等项目,则会显得有些多余了。

大致原理:
通过此文件sem-external-links.css,执行:

    a.external
    {background: url(external.png) center right no-repeat;
    padding-right: 13px;}

以此来实现target=”_blank”的目的。

WordPress数据库备份插件

以前就有用过这个插件:WordPress Database Backup ,
原来的上一个版本,解包之后会发现,就只有一个文件,
现在增加到三个,但实际只需要用到其中一个就可以,
堪称绝对的“绿色”,直接就可以使用。

此插件的作者为 Scott Merrill & Austin Matzko
现在的最新版是2.0.1,点击这里下载。
之前是由Scott Merrill开发,后来到了2.0版就交由Austin Matzko继续了。
安装非常简单,解包之后将wp-db-backup.php放入/wp-content/plugins/目录,
然后在“管理插件”下将其启用即可。

关于使用:
1,在“管理”导航菜单下找到“Backup”,进入即可;
2,插件默认会强制备份以下WordPress这些数据库表:

    # wp_categories
    # wp_comments
    # wp_link2cat
    # wp_links
    # wp_options
    # wp_post2cat
    # wp_postmeta
    # wp_posts
    # wp_usermeta
    # wp_users

如果有添加其他插件生成了新的表,则会在右侧有可选项,可自行选择是否备份,
值得注意的是,随着选择的表增加,备份的文件体积也会随之增加。
备份文件的保存方式有三种可供选择:
1,保存在Blog空间上/wp-content/backup-b90ba/路径下;
2,直接下载到本地电脑;
3,发送备份文件至指定邮箱。
对于通过邮箱备份,必须注意邮件服务器对附件大小的要求,
以免出现文件大小超出附件限制而被拒收。

在2.0.1版中有新的变化就是:Scheduled Backup,
也就是可以进行备份策略的安排,预定备份操作,有四个选项:
1,Never(默认);
2,每小时一次;
3,每天一次;
4,每周一次。
此步操作,只能通过发送至指定邮箱的方式进行备份。

下段文字由Austin Matzko上摘译,仅供参考,如有谬误,烦请指出:

    备份将会生成以下表文件: DB_prefix_date.sql,其中:
    * DB = 在wp-config.php文件中定义的WP数据库的名称;
    * prefix = 在wp-config.php文件中定义的WP数据库日志表的前缀;
    * date = CCYYmmdd_B 格式如:20050711_039;
    * 上述的“B”为internet “Swatch”时间;
    *可以通过PHP date() 函数来获取时间。

此插件操作简便,实用性强,推荐使用。

通过JS打开新窗口

当然以下的内容虽然适用于任何页面,
但我是在为了优化WordPress时候开始付诸实施的。

在HTML4.01/XHTML1.0/XHTML1.1严格DOCTYPE下,
target=”_blank”、target=”_self”等语法均无效的,
我们只好通过JavaScript来变通实现。

HTML4.0增加了一个新属性:rel,
此属性用来说明链接和包含此链接页面的关系,以及链接打开的目标。
rel有许多的属性值,比如next、previous、chapter、section等。
我们要使用的就是rel=”external”属性。

通过以下javascript代码可以实现:

function externallinks() {
if (!document.getElementsByTagName) return;
var anchors = document.getElementsByTagName(“a”);
for (var i=0; i

我采用的是对header.php,也就是页眉进行修改,直接在其中添加。

对于Blogroll部分,则是修改wp-includes/bookmark-template.php文件,
此操作参考的是Hoofei的文章,在此谢过。

相信这样的调整可以更好的发挥WP本身及遵守W3C的优势,
同时,又达到新窗口打开页面的目的。

当然了,有高人提醒我,有这样的方法更加智能:
通过JS,可以实现首先判断是否为站内链接,若是则进行站内跳转;
若为站外链接,则打开新窗口。
好处明显,不必写日志时候手工添加:rel=”external”。
不过对于JS的代码则会复杂一些的,一般适合生成.js文件,外部调用。

用上了Akismet插件

为了防止各类Spam在我的不经意之间蹿出来,
一个合理且实用的Anti Spam策略是需要考虑的。

查找了相关资料,
有一篇文章中有说道“十款常见且高效的Anti Spam插件”,
有图片验证码、做算术题、以及后台检测的等等。
斟酌了一下,最后决定使用wordpress的官方插件Akismet。

不过要用它,就必须要用到它的API,
可wordpress.com已经被屏蔽,自然无法直接申请,
用代理服务器又苦于手头没有什么好的地址,
想想看,既然用了国外主机,SSH是个好东西,
不应该轻易错过,那么试验一下吧。

在SSH下,使用lynx命令,可以正常使用,
那么接下来很简单了,执行:
lynx http://www.wordpress.com
虽然这是一个纯字符界面的浏览器,可能不够美观,
但该有的都有了,找到相应的注册入口,
填写用户名和邮箱。接着去该邮箱收邮件,
即会看到一封信,注意当中的验证连接。
在lynx下输入此链接,完成激活过程。
再去看邮箱,会收到wordpress.com发送出来的帐户密码,
当然,最重要的API ID也在这封信中了:)

至此,API ID到手,只要填在插件的相应位置就可以正常使用了,
Akismet效率以及作用在网上早有公论,基本不用担心其性能了。