如何避免将WordPress中的302重定向到作者页面?

时间:2020-11-18 作者:DrWho

在我的主题中,当我脱机时尝试访问作者的页面时,它会执行302重定向到主页,我正在查看主题文件和作者。php我看到了以下代码,我认为这些代码可以实现重定向:

if ( ! is_user_logged_in() ) {
    wp_safe_redirect( home_url() );
    exit;
}

get_header();
我不使用子主题,所以我想通过一些片段或最佳实践来避免这种重定向。我已经搜索过了,但我看到的是如何为重定向生成一个片段的答案,而不是如何避免它。

1 个回复
最合适的回答,由SO网友:Tom J Nowell 整理而成

但我看到的是如何为重定向生成一个片段的答案,而不是如何避免它。

That\'s because you can\'t. 如果我们能转身wp_safe_redirectwp_redirect 将其转换为非操作并禁用,则下一条语句始终为exit; 从而结束请求。结果是,您的作者档案没有HTML,浏览器显示一个空白屏幕。您最多可以更改它重定向到的位置,但无法通过挂钩和过滤器禁用重定向。

For this reason, a snippet cannot work. 除非你的主题提供了一个过滤器来切换这种行为,否则就没有什么可挂接的。根据您共享的代码,此主题没有做到这一点。

因此,要解决此问题,您有3个选项:

修改主题以删除重定向使用替换的子主题author.php 对于删除重定向的版本,请主题供应商删除该重定向或提供切换设置,并等待更新。选项2和3是最佳做法。

相关推荐

Get_the_Author_meta()和Get_User_meta()有什么不同?

我有个问题:get_the_author_meta() 返回元get_user_meta() 对于相同的元键返回false,我不知道为什么会发生这种情况。关于用户元数据,我应该何时使用其中一种?I tried this:get_the_author_meta(\'afzfp_user_status\', $user->ID); get_user_meta(\'afzfp_user_status\', $user->ID, true); It returns:String \"t