Linux区


WordPress代码实现提交表单自定义字段的步骤

网上有一些介绍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网站查看。

相关博文



以下是网友的2条评论,您赞同吗?

  1. 2016-11-24 19:22

    那个站点很有创意啊 很有新意

    • 小衲
      2016-11-24 20:53

      呵呵。谢谢好评!

发表评论

电子邮件地址不会被公开。