简介:从其他人的网站学会的美化,现在免费给大家使用
参考图
将下方代码放在子比主题的func.php
或者functions.php
的文件中保存,最后清理缓存即可。
function zib_user_signout($buttons)
{
$buttons[] = array(
'html' => '',
'icon' => zib_get_svg('user-color'),
'name' => '我要注销',
'tab' => 'signout',
);
return $buttons;
}add_filter('zib_user_center_page_sidebar_button_1_args', 'zib_user_signout');
function zib_user_signout_page($tabs_array)
{
$tabs_array['signout'] = array(
'title' => '我要注销',
'nav_attr' => 'drawer-title="我要注销"',
'loader' => '<div style="padding: 40px 20px;" class="colorful-bg c-blue flex jc zib-widget">
<div class="colorful-make"></div>
<div class="text-center">
<div class="em4x">
<svg class="icon" aria-hidden="true">
<use xlink:href="#icon-user-color"></use>
</svg>
</div>
<div class="mt10 em14 padding-w10 font-bold mb40">我要注销</div>
<div class="placeholder" style="width: 120px;height: 30px;"></div>
</div></div>',
);
return $tabs_array;
}
add_filter('user_ctnter_main_tabs_array', 'zib_user_signout_page');
function zib_main_user_tab_content_signout()
{
$current_user_id = get_current_user_id();
$html = '<div style="padding: 40px 20px;" class="colorful-bg c-blue flex jc zib-widget">
<div class="colorful-make"></div>
<div class="text-center">
<div class="em4x">
<svg class="icon" aria-hidden="true">
<use xlink:href="#icon-user-color"></use>
</svg>
</div>
<div class="mt10 em14 padding-w10 font-bold mb40">我要注销</div>
<div class="em12 mt20 text-left">
<p>注销账号后,您将无法恢复该账号的所有数据和内容,请确保您已经备份了重要的信息。</p>
<p>如果您的账号有未完成的订单或其他重要事务,请先处理完毕再进行注销操作。</p>
<p>注销账号可能需要一定时间,请耐心等待。</p>
</div>
<div class="mt20 text-left">
<input type="checkbox" id="confirmSignout" name="confirmSignout">
<label for="confirmSignout"> 我确定要注销我的账号</label>
</div>
<div class="mt40">
<button class="btn btn-danger" id="signoutButton" disabled>我要注销</button>
</div>
</div></div>';
$html .= '<script>
document.addEventListener("DOMContentLoaded", function() {
var signoutCheckbox = document.getElementById("confirmSignout");
var signoutButton = document.getElementById("signoutButton");
signoutCheckbox.addEventListener("change", function() {
signoutButton.disabled = !this.checked;
});
signoutButton.addEventListener("click", function() {
if (confirm("您确定要注销您的账号吗?该操作无法撤销!")) {
// 通过Ajax请求来处理注销
var xhr = new XMLHttpRequest();
xhr.open("POST", "' . admin_url('admin-ajax.php') . '", true);
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xhr.onload = function() {
if (xhr.status === 200) {
alert("您的账号已注销。");
location.reload();
} else {
alert("注销失败,请重试。");
}
};
xhr.send("action=zib_user_signout&user_id=' . $current_user_id . '");
}
});
});
</script>';
return zib_get_ajax_ajaxpager_one_centent($html);
}
add_filter('main_user_tab_content_signout', 'zib_main_user_tab_content_signout');
function zib_user_signout_handler()
{
if (isset($_POST['user_id']) && is_user_logged_in()) {
$user_id = intval($_POST['user_id']);
if ($user_id === get_current_user_id()) {
global $wpdb;
$wpdb->update(
$wpdb->users,
array(
'user_login' => '',
'user_pass' => '',
'user_nicename' => '',
'user_email' => '',
'user_url' => '',
'user_activation_key'=> '',
'user_status' => '',
'display_name' => '该账号已注销'
),
array('ID' => $user_id)
);
wp_logout();
wp_send_json_success();
} else {
wp_send_json_error('无效的用户ID');
}
} else {
wp_send_json_error('未登录或无效请求');
}
}
add_action('wp_ajax_zib_user_signout', 'zib_user_signout_handler');
如下图一样
教程结束
© 版权声明
THE END
暂无评论内容