echo '<a href="' . get_author_link(0, $authordata->ID, $authordata->user_nicename) . '" title="' . sprintf(__("Posts by %s"), wp_specialchars(the_author($idmode, false))) . '">' . the_author($idmode, false) . '</a>';
}
-function get_author_link($echo = false, $author_id, $author_nicename) {
+function get_author_link($echo = false, $author_id, $author_nicename = '') {
global $wpdb, $wp_rewrite, $post, $cache_userdata;
$auth_ID = $author_id;
$link = $wp_rewrite->get_author_permastruct();
$file = get_settings('home') . '/';
$link = $file . '?author=' . $auth_ID;
} else {
- if ( '' == $author_nicename )
- $author_nicename = $cache_userdata[$author_id]->user_nicename;
+ if ( '' == $author_nicename ) {
+ $user = get_userdata($author_id);
+ if ( !empty($user->user_nicename) )
+ $author_nicename = $user->user_nicename;
+ }
$link = str_replace('%author%', $author_nicename, $link);
$link = get_settings('home') . trailingslashit($link);
}