在构建网站时重定向URL

时间:2014-03-19 作者:Mike Earley

我的客户想做的是:他希望我建立他的wordpress网站,但在他建立网站的过程中,他希望URL重定向到他的facebook页面。我知道如何在他的域主机上设置重定向,我知道如何在维护模式下设置wordpress站点,但我如何组合这些东西--在仍然构建站点的同时重定向URL?我应该在本地构建它(这是ugh,他在构建时希望访问的b/c),还是为WP站点设置子域(同样是ugh,但并不可怕),或者其他一些我不知道的想法?

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

让我为此编写一个插件(另存为wp-content/plugins/red_visitors.php):

<?php
/**
 * Plugin Name: Redirect visitors
 * Plugin URI: http://wordpress.stackexchange.com/questions/138519
 * Author: still_learning
 */

// function based on http://stackoverflow.com/a/5892694/2948765
// I hope it still works
function __is_login_page() {
    return in_array($GLOBALS[\'pagenow\'], array(\'wp-login.php\', \'wp-register.php\'));
}

// When WP is ready...
add_action(\'init\', function() {
  // Check what kind of page was requested
  if(!is_user_logged_in() && !__is_login_page() && !is_admin()) {
    // Not logged in, not the login page and not the dashboard
    header("Location: http://your-custom-url.com/foo/bar");
    exit;
  }
});
这个脚本应该将每个访问者重定向到指定的位置(我没有测试它)。如果您破坏WordPress安装或犯严重的编程错误导致PHP解释器停止解释,那么它显然会失败。

我不建议使用同一个站点进行开发和生产,即使这只是一个重定向。一种常见的方法是开发服务器,可以通过子域(或仅通过与子域关联的Web空间)访问,也可以通过IPv6访问网内服务器或本地服务器。

结束