【发布时间】:2019-01-24 17:46:38
【问题描述】:
我想存储访问者访问过的博客的数据。我会在最近访问的博客部分展示给他们看。 对于这个功能,我当然必须使用 Cookie。
所以我想检查 cookie 是否存在, 如果不存在,则应使用当前页面 ID 的值创建一个新 cookie。 如果存在,则应将我当前页面的 ID 添加到 cookie 中的字符串中。
下面是我的代码,它不起作用。 PS:我在评论中提到了一些事情
global $wp_query; //Its global variable in Wordpress
if(!isset($_COOKIE['recent_posts'])) {
$cookie_value = $wp_query->post->ID; //this returns current page's ID
setcookie('recent_posts', $cookie_value, time() + (86400 * 30), "/"); // 86400 = 1 day
$_COOKIE['recent_posts'] = $cookie_value;
echo $_COOKIE['recent_posts'];
}
else {
$previous_cookie = $_COOKIE['recent_posts'];
$current_cookie = $previous_cookie.','.$wp_query->post->ID;
setcookie('recent_posts', $current_cookie, time() + (86400 * 30), "/"); // 86400 = 1 day
}
【问题讨论】:
-
具体是什么不起作用?其次,
if语句的需要是什么?看来您正在做同样的事情,所以为什么不直接调用setcookie而不使用 if 语句。意思是,ifcookie 不存在,它将创建它,如果存在,它将覆盖它。 -
如果块正在执行但 cookie 没有被创建
-
@Script47 我犯了一个错误。我必须在 HTML 标记之前使用此代码