WordPress插件缓存问题


WordPress plugin caching issues

我试图通过我写的自定义插件在我的网站上设置和读取WordPress内的cookie。

add_action( 'wp_head', 'my_cookie_code' );

我写的代码工作,然而,一旦它被部署到我们的实时服务器,它不能。

我认为这是因为我们的WordPress缓存系统。当我关闭它时,我的cookie代码工作,但一旦它打开,它就不工作了。

没有关闭我的WordPress缓存系统,我怎么能让我的代码工作?

我希望每个页面都被缓存系统缓存,但我仍然希望执行我的一小段代码。

谢谢

看来这是WPEngine缓存系统的问题。

当我将我的代码从基于PHP切换到基于JavaScript时,我能够解决我所遇到的问题。

关于这个问题的更多信息可以在这里找到:WPEngine

cookie和php会话
<?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 );
}
?>

您需要联系WPE支持人员,让他们在您的安装中从Varnish缓存中专门排除这些cookie。Staging是未缓存的,这就是为什么它在那里工作。