diff options
Diffstat (limited to 'wp-includes/canonical.php')
-rw-r--r-- | wp-includes/canonical.php | 38 |
1 files changed, 22 insertions, 16 deletions
diff --git a/wp-includes/canonical.php b/wp-includes/canonical.php index 5ad4457..4c58027 100644 --- a/wp-includes/canonical.php +++ b/wp-includes/canonical.php @@ -2,7 +2,8 @@ /** * Canonical API to handle WordPress Redirecting * - * Based on "Permalink Redirect" from Scott Yang and "Enforce www. Preference" by Mark Jaquith + * Based on "Permalink Redirect" from Scott Yang and "Enforce www. Preference" + * by Mark Jaquith * * @author Scott Yang * @author Mark Jaquith @@ -11,31 +12,34 @@ */ /** - * redirect_canonical() - Redirects incoming links to the proper URL based on the site url + * Redirects incoming links to the proper URL based on the site url * - * Search engines consider www.somedomain.com and somedomain.com to be two different URLs - * when they both go to the same location. This SEO enhancement prevents penality for - * duplicate content by redirecting all incoming links to one or the other. + * Search engines consider www.somedomain.com and somedomain.com to be two + * different URLs when they both go to the same location. This SEO enhancement + * prevents penality for duplicate content by redirecting all incoming links to + * one or the other. * - * Prevents redirection for feeds, trackbacks, searches, comment popup, and admin URLs. - * Does not redirect on IIS, page/post previews, and on form data. + * Prevents redirection for feeds, trackbacks, searches, comment popup, and + * admin URLs. Does not redirect on IIS, page/post previews, and on form data. * - * Will also attempt to find the correct link when a user enters a URL that does not exist - * based on exact WordPress query. Will instead try to parse the URL or query in an attempt - * to figure the correct page to go to. + * Will also attempt to find the correct link when a user enters a URL that does + * not exist based on exact WordPress query. Will instead try to parse the URL + * or query in an attempt to figure the correct page to go to. * * @since 2.3 * @uses $wp_rewrite * @uses $is_IIS * - * @param string $requested_url Optional. The URL that was requested, used to figure if redirect is needed. + * @param string $requested_url Optional. The URL that was requested, used to + * figure if redirect is needed. * @param bool $do_redirect Optional. Redirect to the new URL. - * @return null|false|string Null, if redirect not needed. False, if redirect not needed or the string of the URL + * @return null|false|string Null, if redirect not needed. False, if redirect + * not needed or the string of the URL */ function redirect_canonical($requested_url=null, $do_redirect=true) { global $wp_rewrite, $is_IIS; - if ( is_feed() || is_trackback() || is_search() || is_comments_popup() || is_admin() || $is_IIS || ( isset($_POST) && count($_POST) ) || is_preview() ) + if ( is_feed() || is_trackback() || is_search() || is_comments_popup() || is_admin() || $is_IIS || ( isset($_POST) && count($_POST) ) || is_preview() || is_robots() ) return; if ( !$requested_url ) { @@ -137,7 +141,8 @@ function redirect_canonical($requested_url=null, $do_redirect=true) { // www.example.com vs example.com $user_home = @parse_url(get_option('home')); - $redirect['host'] = $user_home['host']; + if ( isset($user_home['host']) ) + $redirect['host'] = $user_home['host']; // Handle ports if ( isset($user_home['port']) ) @@ -210,12 +215,13 @@ function redirect_canonical($requested_url=null, $do_redirect=true) { } /** - * redirect_guess_404_permalink() - Tries to guess correct post based on query vars + * Attempts to guess correct post based on query vars * * @since 2.3 * @uses $wpdb * - * @return bool|string Returns False, if it can't find post, returns correct location on success. + * @return bool|string Returns False, if it can't find post, returns correct + * location on success. */ function redirect_guess_404_permalink() { global $wpdb; |