WP Mail Options V0.1.1 发布

今天发现 WordPress 升级到 V3.0.2 了。于是顺便把 WP Mail Options 也升级到了 V0.1.1。

本次升级的内容主要有两点:一个是修改了一个保存文件的 bug,另一个就是调整了一下配置页面的 UI 。

修改保存文件的 BUG

WordPress 的大部分配置选项都是保存在数据库的 wp_options 表中的。几乎所有的插件都或多或少地在该表中保存自己的配置选项。保存的方式有两种最常见:

  • 一种是每项配置参数占用一条记录,比如本插件大约有 30 个参数,那就在数据库的 wp_options 表中对应 30 条记录;
  • 另一种是把所有配置参数序列化为一个串,存到一条记录中,用的时候再反序列化一下,得到各个参数,例如本插件就是这种方式。

还有两种不常见的:

  • 一种是在数据库中新建一张属于自己的新表,把所有参数信息保存到新表中。比如,插件 DMSGuestbook 就在数据库中新建了一张名为 wp_dmsguestbook 的表;
  • 另一种就是把配置参数保存到插件所在路径下的一个文件中。

以上四种方法,除了最后一种外,都存在一个问题。当用户删除插件时,插件一般不会把数据库中保存的配置参数删除。这样做的一个好处是,当用户再次安装该插件的时候,其以前的配置选项还存在。但也有一个显而易见的缺点,那就是,如果用户以后不在使用此插件,那数据库中关于此插件的信息将成为信息垃圾。如果用户频繁的尝试新的插件,然后删除,那数据库中就会留有大量的这些垃圾信息,从而导致 WordPress 性能下降,甚至污染其他插件。

为了解决以上问题,本插件采用的方法是,注册“启用插件”和“禁用插件”的钩子,然后在禁用插件时把所以参数保存到本地文件 options.txt 中,在启用插件时再从 options.txt 中把以前的参数读出来。而o ptions.txt 作为插件的一个文件,在用户删除插件时也同时被删除。如果用户希望保存这些参数,只需要把这个 options.txt 保存起来就行;如果再次安装,则在安装后启用前,用以前保存的 options.txt 覆盖新的文件即可恢复以前的配置。

注册“启用插件”和“禁用插件”的钩子所用到的两个函数如下:

  • register_activation_hook($file, $function);
  • register_deactivation_hook($file, $function);

在上一个版本中,本插件只是简单地打开文件 options.txt ,而没考虑到路径的问题,从而导致 options.txt 被保存到 wp-admin/options.txt 。因为启用/禁用插件的操作是在 wp-admin/plugins.php 中进行的,所当前路径是 wp-admin/ ,则直接打开 options.txt 文件实际上打开的是 wp-admin/options.txt

本次更新,通过插件的源文件文件得到 options.txt 的绝对路径,然后在进行操作,从而解决了这个问题。

如果您使用过本插件的 V0.1.0 版本,请手动删除文件 wp-admin/options.txt

调整配置页面的 UI

上个版本中,配置页面的左侧,插件描述的下边,配置选项的上边有一块空白。如下图红框所示:

WP Mail Options V0.1.0

好像IE浏览器中无此问题。没有测试 Firefox ,但在 Chrome 中这个空白着实碍眼。我对 Html 和 CSS 不是很熟悉,所以就参照柳城做的一个插件 “Baidu Sitemap Generator” 对配置页面的 UI 进行了调整。效果如下图所示:

WP Mail Options V0.1.0

如果在其他浏览器中出现错位等问题,请在此处留言或通过邮件告知作者,不胜感激。

修改了几处翻译错误

另外,本插件欢迎外语达人加入,并把它翻译为其他语言版本。如果有兴趣请在此留言或直接联系作者。

作者联系方式:

微博:http://t.qq.com/allnull

GTalk:<solicomo#gmail.com>

博客:http://www.cbug.org

Creative Commons License Except where otherwise noted, content on this site is licensed under a Creative Commons Attribution 4.0 International license .