Forcing Wordpress to use HTTP_HOST
Wednesday, November 21st, 2007At times, it is convenient to force Wordpress to use the hostname of the current virtual host context. By default, new versions of wordpress rely on DB configured values for siteurl, home, and url. If for instance, you run multiple codebases for testing, it might be convenient to not have it force the values to the configured ones. To accomplish this, add the following code to a custom wp plugin or just add it to the wp-config.php at the very bottom.
function set_codebase()
{
return 'http://' . $_SERVER['HTTP_HOST'];
}
remove_action('template_redirect', 'redirect_canonical');
add_filter ( 'pre_option_siteurl', 'set_codebase' );
add_filter ( 'pre_option_home', 'set_codebase' );
add_filter ( 'pre_option_url', 'set_codebase' );
This code can further be wrapped in a conditional so it only gets executed under explicit circumstances.
add to del.icio.us
add to technorati favs
email this