我正在尝试将loggedin用户重定向到我在后端创建的页面,我想使用我的索引这样做
因此,我添加了do_action
包装在if语句中is_user_loggedin()
调用我的函数。
功能如下:
function my_redirect() {
global $bp;
if ( $bp->current_component == $bp->root_domain ) {
bp_core_redirect($bp->current_component == MY_CUSTOM_SLUG );
}
}
但它不起作用。当您导航到该页面时,该页面会显示出来,但在查看根页面(索引)时,它不会重定向。
以下是索引中的内容。php
<?php if ( is_user_logged_in() ) : ?>
<?php do_action( \'my_redirect\'); ?>
<?php endif; ?>
提前感谢:)
最合适的回答,由SO网友:Brian Fegter 整理而成
我想你要做的是创建一个自定义挂钩。您应该这样做,使其正常工作:
<?php if ( is_user_logged_in() )
my_redirect(); ?>
如果可以在模板中直接使用该函数,则无需将其作为操作。当您想更改core的行为或不想更改现有模板时,主要使用操作。
由于您正在创建自己的模板,因此只需直接调用该函数即可减少开销。我会在get\\u header()或任何字符呈现之前执行此操作,否则您将收到一个PHP错误。