From 71847c3df1a345a1e9d7b109ca8b5e293be4e6a5 Mon Sep 17 00:00:00 2001 From: Peter Westwood Date: Wed, 23 Dec 2009 16:23:40 +0000 Subject: [PATCH] Check that get_page_hierarchy() returns something before trying to build the verbose page rules in WP_Rewrite::page_uri_index(). Fixes #11578. git-svn-id: https://develop.svn.wordpress.org/trunk@12520 602fd350-edb4-49c9-b593-d223f7449a82 --- wp-includes/rewrite.php | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/wp-includes/rewrite.php b/wp-includes/rewrite.php index 4c8d9e68ca..b2aebe199d 100644 --- a/wp-includes/rewrite.php +++ b/wp-includes/rewrite.php @@ -786,15 +786,17 @@ class WP_Rewrite { //get pages in order of hierarchy, i.e. children after parents $posts = get_page_hierarchy($wpdb->get_results("SELECT ID, post_name, post_parent FROM $wpdb->posts WHERE post_type = 'page'")); + + // If we have no pages get out quick + if ( !$posts ) + return array( array(), array() ); + //now reverse it, because we need parents after children for rewrite rules to work properly $posts = array_reverse($posts, true); $page_uris = array(); $page_attachment_uris = array(); - if ( !$posts ) - return array( array(), array() ); - foreach ($posts as $id => $post) { // URL => page name $uri = get_page_uri($id);