From 60dc951513f58dcf7ab6ebb200a08c4b9b5545ec Mon Sep 17 00:00:00 2001 From: Thiery Laverdure Date: Fri, 15 Jul 2016 11:44:49 -0400 Subject: [PATCH] Redirect wp-admin to wp-admin/ (#96) When attempting to access `wp-admin` unauthenticated, WordPress redirects to `wp-admin` instead of `wp-admin/` which causes issues with all the links in the admin until you add the trailing slash. --- cli/drivers/WordPressValetDriver.php | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/cli/drivers/WordPressValetDriver.php b/cli/drivers/WordPressValetDriver.php index 282f750..7e8fbb2 100644 --- a/cli/drivers/WordPressValetDriver.php +++ b/cli/drivers/WordPressValetDriver.php @@ -28,6 +28,23 @@ public function frontControllerPath($sitePath, $siteName, $uri) $_SERVER['PHP_SELF'] = $uri; $_SERVER['SERVER_ADDR'] = '127.0.0.1'; - return parent::frontControllerPath($sitePath, $siteName, $uri); + return parent::frontControllerPath( + $sitePath, $siteName, $this->forceTrailingSlash($uri) + ); + } + + /** + * Redirect to uri with trailing slash. + * + * @param string $uri + * @return string + */ + private function forceTrailingSlash($uri) + { + if (substr($uri, -1 * strlen('/wp-admin')) == '/wp-admin') { + header('Location: '.$uri.'/'); die; + } + + return $uri; } }