国内垃圾留言横行,作为国内最大的搜索引擎百度对此负有不可推卸的责任,由于百度不支持 rel=”nofollow” 属性,造成了 Spammer 恣意妄为,肆意到处留言,根据 Akismet 这个防垃圾留言插件的统计,2008 年12月一个月就收到 4000 多条垃圾留言。并且如果如果这些外链很多都是链接到垃圾站,会让导致博客在搜索引擎(主要是百度,Google nofollow 到垃圾网站也是没事的)中的降权,直接导致排名下降。 但是百度死不悔改,并无打算遵守这个事实标准,修复这个漏洞。当你看到自己博客的留言区一大堆链接是起重机,减肥这类的广告是什么样的看法,是的这些都是我们不愿意看到,我们只想拥有一个干净的博客环境,所以我开发了一个 WordPress 插件:Comments Link Redirect,勇敢对抗 Spammer 和百度,彻底解决 WordPress 中这个问题,使得 Spammer 即使成功留言了,也不会被搜索引擎索引。 Comments Link Redirect 这个插件的主要功能主要参考 Shawn 的防止SPAM的另类方法制作,这里首先感谢下 Shawn 的 idea。但是 Shawn 需要修改主题比较多的地方,还需要添加 JS 代码,比较麻烦,我修改了下做成 WordPress 插件,只需要上传激活,然后在 robots.txt 增加一行代码即可。 Comments Link Redirect 这个插件主要功能是把留言者的链接和留言中链接的 URL 转化为一个跳转链接,如: http://blog.wpjam.com/?r=http://superdenis.com/ 然后手工在 robots.txt 中添加一行以下代码即可: Disallow: /?r=* 这样所有留言区的链接既不会被搜索引擎(包括百度,如果百度真如他所说它遵守 robots.txt 协议的话)索引,更不会给予权重。 […]
终极
WordPress 内存缓存终极加速插件:Batcache
Batcache 工作原理 WordPress 启用 Memcached 这样的内存缓存之后,每次访问 WordPress 页面,都要从内存中获取多个缓存对象。 而 Batcache 主要就是解决这个问题,它是基于 Memcached 的 WordPress 缓存插件,它的工作原理是:把当前整个页面作为一个对象缓存到内存中,这样再次访问 WordPress 页面的时候,直接获从内存中获取这个对象即可,速度极快。 并且这个插件也是 WordPress.com 官方使用的加速插件之一。 Batcache 安装和使用 安装这个插件有点麻烦,不过只要按照以下步骤进行就可以: 安装好 Memcached,详细步骤请参考:如何让 WordPress 启用 Memcached 缓存。 所以你的服务器要求要和安装 Memcached 的要求一致。 上传 advanced-cache.php 到 /wp-content/ 目录。 在 wp-config.php 添加以下代码激活 Batcache: define(‘WP_CACHE’, true); 然后尝试多次载入页面查看源代码,应该在 之前可以看到一些 Batcache 状态代码。(未登录状态) 可以修改 advanced-cache.php 开始的一些代码来调整选项。 可选的上传 batcache.php 到你的 /wp-content/plugins/ 目录。 […]
WordPress 角色和权限终极指南
WordPress 在 2.0 版本中引入了角色和权限(Roles and Capabilities)系统,以前的用户等级的方法(User Levels)已经被弃用。但是还是有很多插件和主题仍然使用用户级别的方法来控制用户查看设置页面和其他功能。所以这篇指南将详细介绍 WordPress 的角色和权限系统,最终将让你在你的插件和主题中能够正确使用。 什么是角色和权限? 和其他 CMS 或者 Web 程序一样,WordPress 也有一个内置的系统来验证一个特定的用户是否有足够的权限来进行某种动作。WordPress 这个内置的系统就是角色和权限系统,它首先将用户分为角色(Role),然后给每个角色都分配一定的权限。 下面是 WordPress 默认的用户角色: 管理员 -拥有所有的管理权限 编辑 -发表文章,编辑文章,以及编辑其他人的文章,等等。 作者-发布和编辑自己的文章 投稿者 -撰写和编辑自己的文章,但不能发布 订阅者 -查看评论/添加评论/查看文章,等等。 WordPress 的角色和权限系统比用户等级的方法灵活得多,它支持对现有用户角色添加,删除和重新分配权限,甚至还可以添加更多的用户角色,并且不破坏系统原有内置的用户角色。 用户权限和后台菜单 很多插件都都会在 WordPress 后台添加一个管理页面,让用户自定义插件选项,一般我们可以通过下面的函数实现: // 添加主菜单 add_menu_page(page_title, menu_title, capability, handle, [function], [icon_url]); // 添加子菜单 add_submenu_page(parent, page_title, menu_title, capability, file/handle, [function]); //添加选项菜单子菜单 add_options_page(page_title, menu_title, capability, handle, [function]); //添加工具菜单子菜单 add_management_page(page_title, […]

