永发信息网

wordpress 获取用户信息,修改信息

答案:2  悬赏:60  手机版
解决时间 2021-12-25 19:09
  • 提问者网友:疯孩纸
  • 2021-12-24 23:47
我知道get_the_author_meta( ) 函数可以获取用户信息, 但是 如何修改呢? (在前台修改)

<..我不想用插件``>
最佳答案
  • 五星知识达人网友:七十二街
  • 2021-12-25 00:29
如果想要在前台实现修改,实现起来有点复杂,大致建议的步骤有:
1、前台生成表单,传递到wp-admin/admin_ajax.php
前台生成的表单,需要包含user_id、action内容
表单的生成过程复杂一些,就是当你在前台点击用户的某个需要修改的信息后,要通过javascript自动生成对应的表单字段

2、向wp_ajax_$action这个hooks添加自定义函数
这个action就是表单里提供的,假设action为‘wpdit_update_user_meta' , 代码类似如下:
add_action( 'wp_ajax_wpdit_update_user_meta', 'wpdit_update_user_meta' );

3、创建自定义函数,使用update_user_meta实现内容修改
function wpdit_update_user_meta() {
    $user_id = $_POST['user_id'];
    update_user_meta( $user_id,  'meta_key', 'meta_new_value' );
}

以上只是思路,具体实现还得花得心思的。
全部回答
  • 1楼网友:煞尾
  • 2021-12-25 01:35
1). get_currentuserinfo(); 此函数将当前登录用户信息赋给全局变量$current_user以及一些单独的用户信息全局变量例如$display_name, $user_email等。 代码如下: user_login . "\n"; echo 'user email: ' . $current_user->user_email . "\n"; echo 'user first name: ' . $current_user->user_firstname . "\n"; echo 'user last name: ' . $current_user->user_lastname . "\n"; echo 'user display name: ' . $current_user->display_name . "\n"; echo 'user id: ' . $current_user->id . "\n"; //单独的全局变量 echo $display_name . "'s email address is: " . $user_email; ?> 2). wp_get_current_user() 此函数必须将返回值赋给一个数组变量,代码如下: id ) { // not logged in. } else { // logged in. } ?>
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯