【问题标题】:WordPress Cookie Redirect - Home Page to Blog PageWordPress Cookie 重定向 - 主页到博客页面
【发布时间】:2015-12-16 06:08:15
【问题描述】:

我正在使用 WordPress,我希望用户在第一次访问时转到主页,但在之后的每一次访问中,我希望他们被重定向到博客。

主页:

www.website.com

博客:

www.website.com/blog

我猜最好的方法是设置一个 cookie?

我不知道要编辑什么 PHP 文件或任何东西......

【问题讨论】:

  • 我认为这是stackoverflow.com/questions/6943968/… 的欺骗,但它没有一个公认的答案。不过,这是正确的想法。你可能想在你的帖子中添加一个 Apache 标签,因为我认为这是一个重要的部分。
  • @jmargolisvt - 不是重复的,也不需要 apache 。简单的php 将结合wordpress 条件。看我的回答。

标签: php wordpress redirect cookies


【解决方案1】:

在你的主题functions.php(或插件)中

function o99_set_newvisitor_cookie() {
    if ( !is_admin() && !isset($_COOKIE['sitename_newvisitor'])) {
        setcookie('sitename_newvisitor', 1, time()+3600*24*100, COOKIEPATH, COOKIE_DOMAIN, false);
    }
}
add_action( 'init', 'o99_set_newvisitor_cookie');

之后

if (isset($_COOKIE['sitename_newvisitor'])) {
     echo 'Welcome back!'; // or redirect using wp_redirect( 'some_url/' ); exit;
}
else {
     echo 'Hello new visitor!'; // or redirect using wp_redirect( home_url() ); exit;
}

这应该可以完成工作。

Wordpress 本身有一个名为 wp_setcookie() 的函数,但它已被弃用并被 wp_set_auth_cookie() 取代,我相信它仅适用于用户身份验证。不知道为什么,但可能是因为引入了 cookie 法律(您也需要考虑到这一点)

总之,另请参阅 codex 中的普通 PHP setcookie() 文档和 wp_redierct() 函数。

【讨论】:

  • 非常感谢,但我收到了这个错误:prntscr.com/8idq6j 我按照建议将代码放在了函数文件中。这是代码:prntscr.com/8idpvd
  • 非常感谢!它正在工作,但现在有一个小问题..当我尝试访问 WordPress 的管理区域时,也被重定向了......有没有办法停止 URL www.website.com/wp- 上的重定向管理员?
  • 随意使用!is_admin()条件。
猜你喜欢
  • 2017-07-09
  • 2015-05-30
  • 2017-01-02
  • 1970-01-01
  • 2021-07-06
  • 2015-03-25
  • 1970-01-01
  • 1970-01-01
  • 2018-07-10
相关资源
最近更新 更多