一尘不染

如何在WordPress中设置,获取和销毁cookie?

php

如何在WordPress中设置,获取和销毁cookie?

我在网上冲浪,但思路不清楚,请帮助我找到方法。


阅读 551

收藏
2020-05-29

共1个答案

一尘不染

您可以使用PHP在服务器端或客户端使用JavaScript在服务器端检索和操作Cookie。

在PHP中,您可以使用设置Cookie
setcookie()。请注意,必须在将任何输出发送到浏览器之前完成此操作,这在Wordpress中可能是很大的挑战。您几乎只限于可以通过插件或主题文件(functions.php例如)设置的一些早期运行的钩子,例如

add_action('init', function() {
    if (!isset($_COOKIE['my_cookie'])) {
        setcookie('my_cookie', 'some default value', strtotime('+1 day'));
    }
});

在PHP中检索cookie更加容易。只需从$_COOKIE超级全局名称中获取它们,例如

$cookieValue = $_COOKIE['my_cookie'];

要取消设置Cookie,需要将Cookie设置为过去的过期日期,例如

setcookie('my_cookie', null, strtotime('-1 day'));

对于JavaScript,我建议您看一下jQuery
cookie插件之一(因为jQuery已经是Wordpress的一部分)。尝试http://plugins.jquery.com/project/Cookie

2020-05-29