首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Wordpress -头()不工作

Wordpress -头()不工作
EN

Stack Overflow用户
提问于 2014-07-25 16:34:39
回答 1查看 1.9K关注 0票数 0

在我的标题中,我有以下代码:

代码语言:javascript
复制
<?php 
global $post;
$pgid = $post->ID;

if (is_user_logged_in() || is_page(344)) { //page 344 is the Login Page
 } else { 

$url = admin_url();

    header("Location: http://cherry.virtek-innovations.com/login-screen");
    die();
     } ?>

这段代码应该将未登录的用户发送到登录页面,但是我得到了以下错误:

代码语言:javascript
复制
Warning: Cannot modify header information - headers already sent by (output 
started at /home1/virtek/public_html/cherry/wp-content/themes/twentytwelve/
resumen.php:2) in /home1/virtek/public_html/cherry/wp-content/themes/
twentytwelve/header.php on line 10

这是我在resumen.php文件中的代码

代码语言:javascript
复制
<?php 
get_header(); 

/*

    Template Name: Resumen

*/
?>

我不知道它为什么不能工作,我正在使用用户Meta插件,你们中有人在我的代码中发现了什么错误吗?或者知道任何其他的方法,以拥有一个自定义登录页面,除非您登录,否则不会让您进入?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-25 22:04:42

您可以尝试使用wp_redirect()函数来进行重定向吗?例如,将其放在主题的functions.php文件中:

代码语言:javascript
复制
function redirect_logged_out_users() {
    if ( ! is_user_logged_in() ) {
        wp_redirect( home_url() . '/login-screen/', 301 );
        exit();
    }
}
add_action( 'template_redirect', 'redirect_logged_out_users' );

这在运行template_redirect钩子时执行。这是在将任何内容发送到浏览器之前,这样您就不会得到此方法的“已发送的标题”问题。

参考文献: redirect

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24960410

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档