我这样编码:
public function register() {
add_action('init', array($this, 'cookie_init'));
}
private function cookie_init() {
if (!isset($_COOKIE['test_key'])) {
setcookie('test_key', 'test_value', time() + 3600, COOKIEPATH, COOKIE_DOMAIN);
}
}
有效。但是,我想在其他地方更新值。调用setcookie时会出现错误(已经发送了一些标题)。另一个问题是如何在需要时添加新的k-v(不是初始点)
感谢您的任何建议!
答案 0 :(得分:0)
您应该更多地考虑您的代码。 您可以创建这样的函数:
function setMyCookie($key, $value) {
if (!isset($_COOKIE[$key])) {
setcookie($key, $value, time() + 3600, COOKIEPATH, COOKIE_DOMAIN);
}
}
此功能不需要在WordPress类引擎中。
您可以将该功能创建为静态成员,以便随时随地调用它。
PS:我不是Wordpress专家,但这似乎不是一个Wordpress问题,而是一个PHP开发风格问题。