让我为此编写一个插件(另存为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访问网内服务器或本地服务器。