前段时间很多朋友让我写一款WordPress为用户添加称号功能的插件,并且还要求要有称号图标。于是今晚上我给他写出来了。

WordPress用户添加称号插件 My Titlesv1.0.0 第5张插图

此插件需要在functions.php里添加:

//获取自定义头衔和图标
// Display custom title and icon on user profile page
function my_titles_display_user_title_and_icon( $user_id ) {
    $title = get_user_meta( $user_id, 'my_title', true );
    $icon_url = get_user_meta( $user_id, 'my_title_icon', true );
    if ( $title ) {
        echo '<div class="my-title">';
        if ( $icon_url ) {
            echo '<img class="my-title-icon" src="' . esc_url( $icon_url ) . '" alt="' . esc_attr( $title ) . '">';
        }
        echo '<span class="my-title-text">' . esc_html( $title ) . '</span>';
        echo '</div>';
    }
}

// Add custom title and icon to user profile page
add_action( 'show_user_profile', 'my_titles_add_user_profile_fields' );
add_action( 'edit_user_profile', 'my_titles_add_user_profile_fields' );
function my_titles_add_user_profile_fields( $user ) {
    $title = get_user_meta( $user->ID, 'my_title', true );
    $icon_url = get_user_meta( $user->ID, 'my_title_icon', true );
?>

    <?php my_titles_display_user_title_and_icon( $user->ID ); ?>
<?php } ?>

在前台你需要放这个称号和图标的位置,添加如下代码:

  <div class="author-info"> 
  <p><?php echo get_the_author_meta( 'description', $author_id ); ?></p>
    <?php my_titles_display_user_title_and_icon( $author_id ); ?>
</div>