将所有页面重定向到主页,但仍允许仪表板

时间:2017-04-08 作者:fightstarr20

我只希望用户能够使用我的WordPress站点的仪表板。我在主页上有一个自定义的登录表单,但除此之外,我不希望他们能够访问前端的任何其他内容。

我看到了以下htaccess fule。。。

# BEGIN redirect to homepage
RewriteEngine on
RewriteCond %{REQUEST_URI} !^/$
RewriteCond %{REQUEST_URI} !\\.(gif|jpe?g|png|css|js|php)$
RewriteCond %{REQUEST_URI} !^/wp-admin [NC]
RewriteRule .* / [L,R=301]
#END redirect to homepage
这看起来可以满足我的需要,但有没有更好的方法来实现它呢?

1 个回复
SO网友:JItendra Rana

只需使用\'template_redirect \' 钩

在WordPress确定要加载哪个模板页面之前,这个操作挂钩就会执行。如果您需要在完全了解所查询内容的情况下进行重定向,那么这是一个很好的挂钩。

add_action(\'template_redirect\',\'redirect_all_pages_to_home\');

function redirect_all_pages_to_home() {
    if ( ! is_front_page() ) {
        wp_redirect( get_home_url() );
        exit;
    }
}

相关推荐

Google Analytics Dashboard for WP in Custom(自定义列中的Google可湿性分析仪表板)

所以我自定义了我的自定义帖子类型列,以便它们按我想要的顺序显示。add_filter(\'manage_publications_posts_columns\', \'set_publication_custom_columns\'); function set_publication_custom_columns( $columns ) { $columns = array( \'cb\' => \'<input type=\"checkbox\" /