Woocommerce自定义注销没有确认
·
问题:Woocommerce自定义注销没有确认
我正在尝试在 woocommerce 中实现自定义注销而无需注销确认。
我创建了一个页面并添加了此代码。并将此页面的链接添加到菜单。但它不起作用。
session_start();
session_destroy();
header("Location:http://www.liberatium.com/");
解答
确认发生是因为您在 URL 中缺少必要的随机数,正在 wp-login.php 中检查
case 'logout' :
check_admin_referer('log-out');
...
使用 wp_logout_url 来检索包含 nonce 的 URL。如果要重定向到自定义 URL,只需将其作为参数传递。
<a href="<?php echo wp_logout_url('http://www.liberatium.com/') ?>">Log out</a>
如果这不起作用意味着,在functions.php中添加下面的函数并尝试上面的代码......
add_action('check_admin_referer', 'logout_without_confirm', 10, 2);
function logout_without_confirm($action, $result)
{
/**
* Allow logout without confirmation
*/
if ($action == "log-out" && !isset($_GET['_wpnonce'])) {
$redirect_to = isset($_REQUEST['redirect_to']) ?
$_REQUEST['redirect_to'] : '';
$location = str_replace('&', '&', wp_logout_url($redirect_to));;
header("Location: $location");
die();
}
}
更多推荐
所有评论(0)