网上有一些介绍wordpress添加自定义字段的教程,都是在wordpress后台界面里操作的。但是wordpress后台一般都是超级管理员(admin)才能进入的,所以这对于普通访客来说,这个教程并不适用。我想要实现的是普通访客随意在网站首页发布投稿的功能,怎么办呢?步骤其实蛮简单。
步骤1,在页面制作好表单,写一个表单项传递到$name这样的变量。这个过程就不用我多说了。
步骤2,在提交自定义字段到数据库的index.php或其他文件里的相应部分加上以下代码:
global $wpdb;
$myposts = $wpdb->get_results("SELECT ID FROM {$wpdb->prefix}posts WHERE post_type = 'post' ORDER BY post_date DESC");
add_post_meta($myposts[0]->ID, 'username', $name);//插入投稿人昵称的自定义字段
步骤3,在页面显示自定义字段的content-header.php或其他文件里的相应循环里加上以下代码:
$username = get_post_custom_values("username");//获取投稿人昵称
if (isset($username[0])) {
echo $username[0];//显示投稿人昵称
}
以上主要用到两个wp自带的函数add_post_meta和get_post_custom_values。
username是我想要的自定义字段,提交表单后,在wordpress数据库的wp_postmeta表里可以找到。
千万不要自作聪明在wp_posts表里自己手动添加一个自定义字段,那样做是没用的!在写这篇博客之前走了8个工时的弯路才得出这个教训。
以上效果可以到博主小衲即将上线的http://www.ybfq.net网站查看。
那个站点很有创意啊 很有新意
呵呵。谢谢好评!