Wordpress通过javascript添加用户


Wordpress Add user by javascript

我有一个wordpress网站,我想创建一个带有按钮的用户

它是分块工作的,但我不能让这两块一起工作

我有这段代码(适用于functions.php,但不在我的createaccount.php文件中)

 $userid = new WP_User(wp_create_user( 'My_new_name' , '123458' , 'me@mail.com'));
   $userid->set_role('client');  //custom role 'client' already set

当echo"test"时,jquery//php文件上的这一点有效;

$(document).ready( function() {
   $('#newbtnaccount').click( function() {
      $.post('php/createaccount.php', { } , 
                      function(data) {
                         alert(data);
    });
  });
});  

我已经尝试了很多选择,但似乎什么都不起作用。

有谁能帮忙吗?谢谢

在wordpress中,您可以向admin-AJAX.php发出AJAX请求,并在functions.php文件中附加带有wp_ajax_my_action(用于登录用户)和wp_ajax_nopriv_my_action(用于非登录用户)的函数。

1.将admin-ajax.php url设置为JS变量

header.php中,将其添加到头部:

<script type="text/javascript">
var ajax_url = '<?php echo admin_url('admin-ajax.php'); ?>';
</script>

2.通过ajax请求功能

您需要在请求中添加一个action参数,以反映您需要在functions.php中调用的函数——让我们称之为create_user

$.post(ajax_url, {action: 'create_user'} , function(data) {
  alert(data);
});

3.在functions.php中创建函数

functions.php中,添加以下内容:

function ajax_create_user() {
  $userid = new WP_User(wp_create_user( 'My_new_name' , '123458' , 'me@mail.com'));
  $userid->set_role('client');
  // echo whatever you need to return
}
add_action( 'wp_ajax_create_user', 'ajax_create_user' );
add_action( 'wp_ajax_nopriv_create_user', 'ajax_create_user' );

阅读Wordpress 中有关AJAX的更多信息