在新发布的 WordPress 2.2 中,内置 Widget 支持可能吸引了大部分人的注意。这里所讲的三点对 WordPress 插件和主题开发者也是非常有用的。
- 你现在可以在 wp-config.php 文件中设置你的站点的 “home” 和 “siteurl” 的值
假设实际的站点和一个镜像的开发站点。在 2.2 之前,如果你想从一个拷贝数据库到另一个,你需要在数据库中去修改 URL,你现在可以在 wp-config.php 文件中设置你的站点的 “home” 和 “siteurl” 的值。
define('WP_HOME', 'http://www.fairyfish.com');
define('WP_SITEURL', 'http://www.fairyfish.com/');
这意味着如果你使用不同的 config 文件,你可以轻易地从一个站点迁移数据到另一站点而不需做任何修改,这个让我节省了不少时间。 - phpmailer,通过引用调用给“phpmailer_init”的 action hook。 举个例子,假设你想在使用 wp_mail 发送的邮件增加附件,你将设立一个回调函数去增加附件,使用 PHPMailer's AddAttachment 方法:
function lets_add_an_attachment(&$phpmailer) {
$phpmailer->AddAttachment('/path/to/attachment/picture.jpg');
}
- 然后在回调函数中 hook
add_action('phpmailer_init', 'lets_add_an_attachment');
如果这看起来还不够明了,你应该试试用 PHP 的mail
功能 (for whichwp_mail
used to be basically just a wrapper) 去发送附件。首先,你需要读取你要附加的文件,编码成 base 64,分割成一块块,然后传递给头部参数,当然要设置正确 Content-Type 和 MIME-Version 和指明分界线。PHPMailer 帮你做了所有的这些头痛的问题。 - WordPress 现在包含了 jQuery JavaScript 库
WordPress 自从 2.1 版本开始为增加多种管理界面 JS 效果就已经包含了功能丰富的 Prototype 和 Scriptaculous JavaScript 的库。但是现在管理界面正在转化成使用 jQuery。jQuery 优势胜于它已经把很多非常酷的特性打包成非常小的尺寸(19kb)。
虽然现在 jQuery 出现在 2.2 的唯一的地方是新的 Blogger 导入器,你可以在 WordPress 任何页面上使用 jQuery。你所需要去做的是在页面的头部输出之前调用
wp_enqueue_script('jquery');
函数。 打包在 WordPress 中的 jQuery 是以“无冲突”模式。所以 jQuery 可以和 Prototype 很好的兼容,否则的话它就会和“$”的函数有冲突。然而正常的情况下你可以在 jQieru 中使用“$”函数,在无冲突的模式下,你既可以直接调用 jQuery 或者创建你自己的别名,如下面:var wpJ = jQuery.noConflict();
(从这之后,你就可以使用wpJ
代替jQuery
) jQuery 中我最喜欢的特性是它能非常简洁选择 DOM 元素的方法,列入,接下来的代码搜索所有被命名为“S”文本框(如 WordPress 的搜索框),设置他们的值为“Search text”,然后如果点击该输入框就会清除它的值。jQuery('input[@type="text"][@name="s"]').each(
function() {
jQuery(this).attr('value','Search text');
jQuery(this).focus(function() {jQuery(this).attr('value','')});
}
);
- 是不是一流?
这批篇文章翻译自 WordPress 2.2: Three Things Developers Will Like,如果你对我们的翻译或者这个主题有什么意见,欢迎给我们留言。