2004-01-27 10:58:01 +01:00
< ? php
2004-12-16 00:15:17 +01:00
function get_the_author ( $idmode = '' ) {
2004-04-18 21:20:37 +02:00
global $authordata ;
if ( empty ( $idmode )) {
$idmode = $authordata -> user_idmode ;
}
2004-04-27 05:59:13 +02:00
2004-04-18 21:20:37 +02:00
if ( $idmode == 'nickname' ) $id = $authordata -> user_nickname ;
if ( $idmode == 'login' ) $id = $authordata -> user_login ;
if ( $idmode == 'firstname' ) $id = $authordata -> user_firstname ;
if ( $idmode == 'lastname' ) $id = $authordata -> user_lastname ;
if ( $idmode == 'namefl' ) $id = $authordata -> user_firstname . ' ' . $authordata -> user_lastname ;
if ( $idmode == 'namelf' ) $id = $authordata -> user_lastname . ' ' . $authordata -> user_firstname ;
if ( ! $idmode ) $id = $authordata -> user_nickname ;
2004-12-16 00:15:17 +01:00
2004-04-18 21:20:37 +02:00
return $id ;
2004-01-27 10:58:01 +01:00
}
2004-12-16 00:15:17 +01:00
function the_author ( $idmode = '' , $echo = true ) {
if ( $echo ) echo get_the_author ( $idmode );
return get_the_author ( $idmode );
}
function get_the_author_description () {
2004-01-27 10:58:01 +01:00
global $authordata ;
2004-12-16 00:15:17 +01:00
return $authordata -> user_description ;
}
function the_author_description () {
echo get_the_author_description ();
}
function get_the_author_login () {
global $id , $authordata ; return $authordata -> user_login ;
2004-01-27 10:58:01 +01:00
}
function the_author_login () {
2004-12-16 00:15:17 +01:00
echo get_the_author_login ();
2004-01-27 10:58:01 +01:00
}
2004-12-16 00:15:17 +01:00
function get_the_author_firstname () {
global $id , $authordata ; return $authordata -> user_firstname ;
}
2004-01-27 10:58:01 +01:00
function the_author_firstname () {
2004-12-16 00:15:17 +01:00
echo get_the_author_firstname ();
2004-01-27 10:58:01 +01:00
}
2004-12-16 00:15:17 +01:00
function get_the_author_lastname () {
global $id , $authordata ; return $authordata -> user_lastname ;
}
2004-01-27 10:58:01 +01:00
function the_author_lastname () {
2004-12-16 00:15:17 +01:00
echo get_the_author_lastname ();
2004-01-27 10:58:01 +01:00
}
2004-12-16 00:15:17 +01:00
function get_the_author_nickname () {
global $id , $authordata ; return $authordata -> user_nickname ;
}
2004-01-27 10:58:01 +01:00
function the_author_nickname () {
2004-12-16 00:15:17 +01:00
echo get_the_author_nickname ();
2004-01-27 10:58:01 +01:00
}
2004-12-16 00:15:17 +01:00
function get_the_author_ID () {
global $id , $authordata ; return $authordata -> ID ;
}
2004-01-27 10:58:01 +01:00
function the_author_ID () {
2004-12-16 00:15:17 +01:00
echo get_the_author_id ();
2004-01-27 10:58:01 +01:00
}
2004-12-16 00:15:17 +01:00
function get_the_author_email () {
2004-12-23 22:52:09 +01:00
global $authordata ;
return $authordata -> user_email ;
2004-12-16 00:15:17 +01:00
}
2004-12-23 22:52:09 +01:00
2004-01-27 10:58:01 +01:00
function the_author_email () {
2004-12-23 22:52:09 +01:00
echo apply_filters ( 'the_author_email' , get_the_author_email () );
2004-01-27 10:58:01 +01:00
}
2004-12-16 00:15:17 +01:00
function get_the_author_url () {
global $id , $authordata ; return $authordata -> user_url ;
}
2004-01-27 10:58:01 +01:00
function the_author_url () {
2004-12-16 00:15:17 +01:00
echo get_the_author_url ();
2004-01-27 10:58:01 +01:00
}
2004-12-16 00:15:17 +01:00
function get_the_author_icq () {
global $id , $authordata ; return $authordata -> user_icq ;
}
2004-01-27 10:58:01 +01:00
function the_author_icq () {
2004-12-16 00:15:17 +01:00
echo get_the_author_icq ();
2004-01-27 10:58:01 +01:00
}
2004-12-16 00:15:17 +01:00
function get_the_author_aim () {
global $id , $authordata ; return str_replace ( ' ' , '+' , $authordata -> user_aim );
}
2004-01-27 10:58:01 +01:00
function the_author_aim () {
2004-12-16 00:15:17 +01:00
echo get_the_author_aim ();
2004-01-27 10:58:01 +01:00
}
2004-12-16 00:15:17 +01:00
function get_the_author_yim () {
global $id , $authordata ; return $authordata -> user_yim ;
}
2004-01-27 10:58:01 +01:00
function the_author_yim () {
2004-12-16 00:15:17 +01:00
echo get_the_author_yim ();
2004-01-27 10:58:01 +01:00
}
2004-12-16 00:15:17 +01:00
function get_the_author_msn () {
global $id , $authordata ; return $authordata -> user_msn ;
}
2004-01-27 10:58:01 +01:00
function the_author_msn () {
2004-12-16 00:15:17 +01:00
echo get_the_author_msn ();
2004-01-27 10:58:01 +01:00
}
2004-12-16 00:15:17 +01:00
function get_the_author_posts () {
global $id , $post ; $posts = get_usernumposts ( $post -> post_author ); return $posts ;
}
2004-01-27 10:58:01 +01:00
function the_author_posts () {
2004-12-16 00:15:17 +01:00
echo get_the_author_posts ();
2004-01-27 10:58:01 +01:00
}
2004-12-16 00:15:17 +01:00
/* the_author_posts_link() requires no get_, use get_author_link() */
2004-04-18 21:20:37 +02:00
function the_author_posts_link ( $idmode = '' ) {
global $id , $authordata ;
2004-12-12 21:41:19 +01:00
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>' ;
2004-04-18 21:20:37 +02:00
}
2004-03-19 17:20:49 +01:00
function get_author_link ( $echo = false , $author_id , $author_nicename ) {
2005-02-07 08:37:53 +01:00
global $wpdb , $wp_rewrite , $post , $cache_userdata ;
2004-03-19 17:20:49 +01:00
$auth_ID = $author_id ;
2004-12-09 03:40:35 +01:00
$link = $wp_rewrite -> get_author_permastruct ();
2004-03-19 17:20:49 +01:00
2004-12-09 03:40:35 +01:00
if ( empty ( $link )) {
2004-12-24 02:34:47 +01:00
$file = get_settings ( 'home' ) . '/' ;
2005-02-07 10:14:14 +01:00
$link = $file . '?author=' . $auth_ID ;
2004-03-19 17:20:49 +01:00
} else {
2004-04-27 05:59:13 +02:00
if ( '' == $author_nicename ) $author_nicename = $cache_userdata [ $author_id ] -> author_nicename ;
2004-12-09 03:40:35 +01:00
$link = str_replace ( '%author%' , $author_nicename , $link );
$link = get_settings ( 'home' ) . trailingslashit ( $link );
2004-03-19 17:20:49 +01:00
}
2005-02-06 04:40:08 +01:00
$link = apply_filters ( 'author_link' , $link , $author_id , $author_nicename );
2004-03-19 17:20:49 +01:00
if ( $echo ) echo $link ;
return $link ;
}
function wp_list_authors ( $args = '' ) {
parse_str ( $args , $r );
if ( ! isset ( $r [ 'optioncount' ])) $r [ 'optioncount' ] = false ;
if ( ! isset ( $r [ 'exclude_admin' ])) $r [ 'exclude_admin' ] = true ;
if ( ! isset ( $r [ 'show_fullname' ])) $r [ 'show_fullname' ] = false ;
if ( ! isset ( $r [ 'hide_empty' ])) $r [ 'hide_empty' ] = true ;
2004-03-23 05:45:27 +01:00
if ( ! isset ( $r [ 'feed' ])) $r [ 'feed' ] = '' ;
if ( ! isset ( $r [ 'feed_image' ])) $r [ 'feed_image' ] = '' ;
2004-03-19 17:20:49 +01:00
2004-09-03 06:03:55 +02:00
list_authors ( $r [ 'optioncount' ], $r [ 'exclude_admin' ], $r [ 'show_fullname' ], $r [ 'hide_empty' ], $r [ 'feed' ], $r [ 'feed_image' ]);
2004-03-19 17:20:49 +01:00
}
2004-03-23 05:45:27 +01:00
function list_authors ( $optioncount = false , $exclude_admin = true , $show_fullname = false , $hide_empty = true , $feed = '' , $feed_image = '' ) {
2004-12-24 02:34:47 +01:00
global $wpdb ;
2004-03-19 17:20:49 +01:00
2005-03-14 02:09:49 +01:00
$query = " SELECT ID, user_nickname, user_firstname, user_lastname, user_nicename from $wpdb->users " . ( $exclude_admin ? " WHERE user_login <> 'admin' " : '' ) . " ORDER BY user_nickname " ;
2004-03-19 17:20:49 +01:00
$authors = $wpdb -> get_results ( $query );
foreach ( $authors as $author ) {
$posts = get_usernumposts ( $author -> ID );
$name = $author -> user_nickname ;
if ( $show_fullname && ( $author -> user_firstname != '' && $author -> user_lastname != '' )) {
$name = " $author->user_firstname $author->user_lastname " ;
}
if ( ! ( $posts == 0 && $hide_empty )) echo " <li> " ;
if ( $posts == 0 ) {
2005-01-24 08:55:03 +01:00
if ( ! $hide_empty )
$link = $name ;
2004-03-19 17:20:49 +01:00
} else {
2004-12-12 21:41:19 +01:00
$link = '<a href="' . get_author_link ( 0 , $author -> ID , $author -> user_nicename ) . '" title="' . sprintf ( __ ( " Posts by %s " ), wp_specialchars ( $author -> user_nickname )) . '">' . $name . '</a>' ;
2004-03-23 05:45:27 +01:00
if ( ( ! empty ( $feed_image )) || ( ! empty ( $feed )) ) {
$link .= ' ' ;
if ( empty ( $feed_image )) {
$link .= '(' ;
}
$link .= '<a href="' . get_author_rss_link ( 0 , $author -> ID , $author -> user_nicename ) . '"' ;
if ( ! empty ( $feed )) {
2004-06-18 02:22:09 +02:00
$title = ' title="' . $feed . '"' ;
$alt = ' alt="' . $feed . '"' ;
$name = $feed ;
2004-03-23 05:45:27 +01:00
$link .= $title ;
}
$link .= '>' ;
if ( ! empty ( $feed_image )) {
$link .= " <img src= \" $feed_image\ " border = \ " 0 \" $alt $title " . ' />' ;
} else {
$link .= $name ;
}
$link .= '</a>' ;
if ( empty ( $feed_image )) {
$link .= ')' ;
}
}
if ( $optioncount ) {
$link .= ' (' . $posts . ')' ;
}
2004-03-19 17:20:49 +01:00
}
2004-03-23 05:45:27 +01:00
if ( ! ( $posts == 0 && $hide_empty )) echo " $link </li> " ;
2004-03-19 17:20:49 +01:00
}
}
2004-01-27 10:58:01 +01:00
?>