From eed4750e50ceed7f8336666639053d337e014c3d Mon Sep 17 00:00:00 2001 From: Ryan Boren Date: Wed, 11 Feb 2004 04:51:19 +0000 Subject: [PATCH] Add author_name query and author permalinks. git-svn-id: https://develop.svn.wordpress.org/trunk@863 602fd350-edb4-49c9-b593-d223f7449a82 --- wp-admin/options-permalink.php | 4 ++++ wp-admin/upgrade-functions.php | 11 +++++++++++ wp-admin/users.php | 5 +++-- wp-blog-header.php | 18 +++++++++++++++++- 4 files changed, 35 insertions(+), 3 deletions(-) diff --git a/wp-admin/options-permalink.php b/wp-admin/options-permalink.php index bdf5be2057..ed5f79ab4e 100644 --- a/wp-admin/options-permalink.php +++ b/wp-admin/options-permalink.php @@ -177,6 +177,8 @@ $sitecommentfeedquery = $site_root . 'wp-feed.php?feed=$1&withcomments=1'; $front = substr($permalink_structure, 0, strpos($permalink_structure, '%')); $catmatch = $front . 'category/'; $catmatch = preg_replace('|^/+|', '', $catmatch); + $authormatch = $front . 'author/'; + $authormatch = preg_replace('|^/+|', '', $authormatch); ?>
@@ -187,6 +189,8 @@ RewriteRule ^ [QSA] RewriteRule ^ [QSA] RewriteRule ^(.*)/$ wp-feed.php?category_name=$1&feed=$2 [QSA] RewriteRule ^?(.*) index.php?category_name=$1 [QSA] +RewriteRule ^(.*)/$ wp-feed.php?author_name=$1&feed=$2 [QSA] +RewriteRule ^?(.*) index.php?author_name=$1 [QSA] RewriteRule ^ [QSA] RewriteRule ^ [QSA]
diff --git a/wp-admin/upgrade-functions.php b/wp-admin/upgrade-functions.php index d4b439add4..8a37fbf7fa 100644 --- a/wp-admin/upgrade-functions.php +++ b/wp-admin/upgrade-functions.php @@ -680,6 +680,17 @@ function upgrade_110() { maybe_add_column($tableusers, 'user_status', "ALTER TABLE `$tableusers` ADD `user_status` INT DEFAULT '0' NOT NULL ;"); $wpdb->query("ALTER TABLE `$tableposts` CHANGE `comment_status` `comment_status` ENUM( 'open', 'closed', 'registered_only' ) DEFAULT 'open' NOT NULL"); + maybe_add_column($tableusers, 'user_nicename', "ALTER TABLE `$tableusers` ADD `user_nicename` VARCHAR(50) DEFAULT '' NOT NULL ;"); + + // Set user_nicename. + $users = $wpdb->get_results("SELECT ID, user_nickname, user_nicename FROM $tableusers"); + foreach ($users as $user) { + if ('' == $user->user_nicename) { + $newname = sanitize_title($user->user_nickname); + $wpdb->query("UPDATE $tableusers SET user_nicename = '$newname' WHERE ID = '$user->ID'"); + } + } + // Convert passwords to MD5 and update table appropiately $query = 'DESCRIBE '.$tableusers.' user_pass'; $res = $wpdb->get_results($query); diff --git a/wp-admin/users.php b/wp-admin/users.php index 4be93b9d64..ac9a7e58b1 100644 --- a/wp-admin/users.php +++ b/wp-admin/users.php @@ -66,14 +66,15 @@ case 'adduser': $user_login = addslashes(stripslashes($user_login)); $pass1 = addslashes(stripslashes($pass1)); $user_nickname = addslashes(stripslashes($user_nickname)); + $user_nicename = sanitize_title($user_nickname); $user_firstname = addslashes(stripslashes($user_firstname)); $user_lastname = addslashes(stripslashes($user_lastname)); $now = current_time('mysql'); $result = $wpdb->query("INSERT INTO $tableusers - (user_login, user_pass, user_nickname, user_email, user_ip, user_domain, user_browser, dateYMDhour, user_level, user_idmode, user_firstname, user_lastname) + (user_login, user_pass, user_nickname, user_email, user_ip, user_domain, user_browser, dateYMDhour, user_level, user_idmode, user_firstname, user_lastname, user_nicename) VALUES - ('$user_login', MD5('$pass1'), '$user_nickname', '$user_email', '$user_ip', '$user_domain', '$user_browser', '$now', '$new_users_can_blog', 'nickname', '$user_firstname', '$user_lastname')"); + ('$user_login', MD5('$pass1'), '$user_nickname', '$user_email', '$user_ip', '$user_domain', '$user_browser', '$now', '$new_users_can_blog', 'nickname', '$user_firstname', '$user_lastname', '$user_nicename')"); if ($result == false) { die ('ERROR: Couldn’t register you... please contact the webmaster !'); diff --git a/wp-blog-header.php b/wp-blog-header.php index d0aa6e7828..9d5f3711b0 100644 --- a/wp-blog-header.php +++ b/wp-blog-header.php @@ -10,7 +10,7 @@ if (!file_exists($curpath . '/wp-config.php')) require($curpath.'/wp-config.php'); -$wpvarstoreset = array('m','p','posts','w', 'cat','withcomments','s','search','exact', 'sentence','poststart','postend','preview','debug', 'calendar','page','paged','more','tb', 'pb','author','order','orderby', 'year', 'monthnum', 'day', 'name', 'category_name', 'feed'); +$wpvarstoreset = array('m','p','posts','w', 'cat','withcomments','s','search','exact', 'sentence','poststart','postend','preview','debug', 'calendar','page','paged','more','tb', 'pb','author','order','orderby', 'year', 'monthnum', 'day', 'name', 'category_name', 'feed', 'author_name'); for ($i=0; $iget_var("SELECT ID FROM $tableusers WHERE user_nicename='".$author_name."'"); + $whichauthor .= ' AND (post_author = '.intval($author).')'; +} + $where .= $search.$whichcat.$whichauthor; if ((empty($order)) || ((strtoupper($order) != 'ASC') && (strtoupper($order) != 'DESC'))) {