From b9ddde32f88d21147f25d641c416b10f68214899 Mon Sep 17 00:00:00 2001 From: Mark Jaquith Date: Thu, 5 Jul 2012 13:23:39 +0000 Subject: [PATCH] =?UTF-8?q?Re=C3=ABnable=20canonical=20redirects=20for=20I?= =?UTF-8?q?IS.=20Let's=20work=20out=20any=20remaining=20bugs=20in=20this?= =?UTF-8?q?=20cycle.=20fixes=20#20484.=20reverts=20[17492].=20see=20#16639?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://develop.svn.wordpress.org/trunk@21207 602fd350-edb4-49c9-b593-d223f7449a82 --- wp-includes/canonical.php | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/wp-includes/canonical.php b/wp-includes/canonical.php index 7001c98bcb..77a523923e 100644 --- a/wp-includes/canonical.php +++ b/wp-includes/canonical.php @@ -18,7 +18,9 @@ * 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. + * admin URLs. Does not redirect on non-pretty-permalink-supporting IIS 7, + * page/post previews, WP admin, Trackbacks, robots.txt, searches, or on POST + * requests. * * 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 @@ -26,7 +28,7 @@ * * @since 2.3.0 * @uses $wp_rewrite - * @uses $is_IIS + * @uses $is_iis7 * * @param string $requested_url Optional. The URL that was requested, used to * figure if redirect is needed. @@ -35,9 +37,9 @@ * not needed or the string of the URL */ function redirect_canonical( $requested_url = null, $do_redirect = true ) { - global $wp_rewrite, $is_IIS, $wp_query, $wpdb; + global $wp_rewrite, $is_iis7, $wp_query, $wpdb; - if ( is_trackback() || is_search() || is_comments_popup() || is_admin() || !empty($_POST) || is_preview() || is_robots() || $is_IIS ) + if ( is_trackback() || is_search() || is_comments_popup() || is_admin() || !empty($_POST) || is_preview() || is_robots() || ( $is_iis7 && !iis7_supports_permalinks() ) ) return; if ( !$requested_url ) {