我有一个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
这在jquery // php文件上工作时echo'test';
$(document).ready( function() {
$('#newbtnaccount').click( function() {
$.post('php/createaccount.php', { } ,
function(data) {
alert(data);
});
});
});
我已经尝试了很多选项,但是没有看上去有效。
任何可以提供帮助的人? 谢谢!
答案 0 :(得分:1)
在wordpress中,您可以向 admin-ajax.php 发出AJAX请求,并使用wp_ajax_my_action
将函数附加到 functions.php 文件中(对于已登录的用户) )和wp_ajax_nopriv_my_action
(对于非登录用户)。
在 header.php 中,在头部添加:
<script type="text/javascript">
var ajax_url = '<?php echo admin_url('admin-ajax.php'); ?>';
</script>
您需要在请求中添加action
参数,以反映您需要在 functions.php 中调用的函数 - 让我们将其称为create_user
。
$.post(ajax_url, {action: 'create_user'} , function(data) {
alert(data);
});
在 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' );