我有一个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的更多信息