php - 电子商务 : how to display custom success notice message on Logout?

标签 php wordpress woocommerce hook-woocommerce

注销时显示成功消息。 这是我尝试过的代码。但我在注销时没有收到成功消息

这是我试过的代码。但我在注销时没有收到成功消息

function displaynotice() {
    add_action( 'woocommerce_init', 'custom_notice' );
}
add_action('wp_logout', 'displaynotice');

function custom_notice() {
    wc_add_notice( 'This is a Success notice', 'success' );
}

我认为当我注销时,Wordpress 或 Woocommerce 会破坏当前 session 。所以我所有的即时消息也会被破坏或取消设置。因此,使用 session 不是一种选择。

工作解决方案

在函数.php 中

setcookie('done', null, -1, '/');
add_action('wp_logout',function(){
   setcookie("done", "done", time() + (86400 * 30), "/");
});

在我们要显示消息的页面中

<?php 
if(isset($_COOKIE["done"]) && !empty($_COOKIE["done"]) ) {?>
    <div class="woocommerce-message" role="alert">
    You've been logged out successfully.</div>
<?php } ?>

最佳答案

请尝试使用wp_logout 操作 Hook ,因为每当用户注销时都会调用此 Hook ,您应该将注销方法添加到此 Hook 中。

例子:

add_action('wp_logout',function(){
    wc_add_notice( 'This is a Success notice', 'success' );
});

关于php - 电子商务 : how to display custom success notice message on Logout?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55967481/

相关文章:

php - 如果在 WooCommerce 中自动添加包装,则在选择产品重量时不计算最终成本

php - 如何在 PHP 中使用匿名函数

php - 函数回显时出现问题

php - PHP中的mysql_num_rows警告

mysql - 如何使用 docker 容器将后端和前端的 WordPress 分开?

Javascript 使用正则表达式 trim 链接

php - WooCommerce 订单状态从支付网关更改

php - 如何从非管理员用户的类别列表小部件中排除类别

php - Woocommerce - 从订购的产品中获取元数据

php - mysqli 查询没有结果 做点别的事 做点别的事