我正试图通过我编写的一个定制插件在WordPress中设置和读取cookie。
add_action( 'wp_head', 'my_cookie_code' );
然而,我编写的代码一旦部署到我们的实时服务器上,就无法工作。
我认为这是因为我们的WordPress缓存系统。当我关闭它时,我的cookie代码可以工作,但是一旦它打开,它就不工作了。
在不关闭我的WordPress缓存系统的情况下,我如何才能让我的代码使用它?
我希望每个页面都被缓存系统缓存,但我仍然希望执行我的一些代码。
谢谢
发布于 2016-11-17 17:04:11
这似乎是WPEngine缓存系统的一个问题。
当我将代码从基于PHP的转换为JavaScript时,我能够解决我所遇到的问题。
有关此问题的更多信息可以在这里找到:WPEngine上的Cookies和php会话
发布于 2016-11-10 13:50:51
<?php
//Try this code in function.php file
//set cookie
add_action( 'init', 'setCookie' );
function setCookie() {
setcookie( 'my-name', 'my-value', time() + 3600, COOKIEPATH, COOKIE_DOMAIN );
}
//get Cookie
add_action( 'wp_head', 'getCookie' );
function getCookie() {
$cookie_val = isset( $_COOKIE['my-name'] ) ? $_COOKIE['my-name'] : 'not set';
}
//Delete / Unset Cookie
add_action( 'init', 'unsetCookie' );
function unsetCookie() {
setcookie( 'my-name', '', time() - 3600, COOKIEPATH, COOKIE_DOMAIN );
}
?>发布于 2016-12-27 16:01:48
您需要与WPE支持联系,并让它们在安装时将那些cookie排除在Varnish缓存之外。分期是不需要的,这就是它在那里工作的原因。
https://stackoverflow.com/questions/40529056
复制相似问题