今天介绍的是一些通过代码编写,在WordPress博客里添加各种数据(比如日志、评论、分类等)的简单方法。
在WordPress里插入一篇文章非常简单。要用到的是wp_insert_post()函数,这个函数以数组作为参数。
如果你想试验一下这个函数,可以把下面的代码复制到functions.php文件。
global $user_ID;$new_post = array( 'post_title' => 'My New Post', 'post_content' => 'Lorem ipsum dolor sit amet...', 'post_status' => 'publish', 'post_date' => date('Y-m-d H:i:s'), 'post_author' => $user_ID, 'post_type' => 'post', 'post_category' => array(0));$post_id = wp_insert_post($new_post);
$new_post数组里的参数包括:
在WordPress里插入评论也相当容易。同样是把下面的代码复制到functions.php文件。
$data = array( 'comment_post_ID' => 1, 'comment_author' => 'admin', 'comment_author_email' => 'admin@admin.com', 'comment_author_url' => 'http://www.catswhocode.com', 'comment_content' => 'Lorem ipsum dolor sit amet...', 'comment_author_IP' => '127.0.0.1', 'comment_agent' => 'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; fr; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3', 'comment_date' => date('Y-m-d H:i:s'), 'comment_date_gmt' => date('Y-m-d H:i:s'), 'comment_approved' => 1,);$comment_id = wp_insert_comment($data);
wp_insert_comment()函数和wp_insert_post()一样,也是以数组作为参数:
WordPress的内置函数wp_set_object_terms()可以将文章添加到各分类中。
我们需要做的就是创建一个数组,数组里包含需要添加的分类ID,然后:
$category_ids = array(4, 5, 6);wp_set_object_terms( $post_id, $category_ids, 'category');
wp_set_object_terms()用了三个参数:文章ID, 分类ID的数组、分类类型(此处为"category")
添加标签甚至不需要用到新函数,wp_set_object_terms()函数同样可以实现添加标签的效果。
$tag_ids = array(7, 8, 9);wp_set_object_terms( $post_id, $tag_ids, 'post_tag');
在文章发表时自动生成自定义字段会为我们节省很多时间。
依然是把下面的代码复制到functions.php文件,然后发表新文章时,就会有自动生成的自定义字段了。
function add_custom_field_automatically($post_ID) { global $wpdb; if(!wp_is_post_revision($post_ID)) { add_post_meta($post_ID, 'field-name', 'custom value', true); }}add_action('publish_page', 'add_custom_field_automatically');add_action('publish_post', 'add_custom_field_automatically');
原理:首先生成一个函数。该函数用以确认新发表文章不是某篇旧文的修改版,然后添加一个自定义字段,字段名为field-name,字段值为custom value。之后,调用一个hook来确保每当新文章或者新页面发布时都会调用add_custom_field_automatically()函数。