是否在评论中将名称链接到作者页面?评论作者Meta在评论中?

时间:2012-04-30 作者:Travis Pflanz

我不知道该如何表达这个问题,所以我确信这就是为什么我在搜索谷歌时也找不到我需要的东西的原因。

我想将所有评论者的名字链接到他们的作者。php页面(如果有)edit_posts 功能(作者、编辑和管理员),否则链接到他们在个人资料中列出的网站。

我没有使用的经验comment_author.

谢谢

1 个回复
最合适的回答,由SO网友:akamaozu 整理而成

编辑了我的答案,因为原始代码有轻微缺陷。测试并三次检查,以确保它完全符合您的要求。:)

Enjoy!

function comment_author_profile_link(){

/* Get the comment author information */

global $comment;
$comment_ID = $comment->user_id;
$author = get_comment_author( $comment_ID );
$url = get_comment_author_url( $comment_ID );

/* Check if commenter is registered or not */
switch ($comment_ID == 0) {

case true: 
/* Unregistered commenter */    

    if ( empty( $url ) || \'http://\' == $url )
        $return = $author;
    else
        $return = "<a href=\'$url\' rel=\'external nofollow\' class=\'url\' target=\'_blank\'>$author</a>";

break;

case false:
    /* Registered Commenter */      

    $registeredID = get_userdata($comment_ID);
    $authorName = $registeredID->display_name;
    $authorLevel = $registeredID->user_level;
    $authorURL = $registeredID->user_url;
    $authorID = $registeredID->ID;

        /* Check if they have edit posts capabilities & is author or higher */

    if ($authorLevel > 1 && user_can($authorID,\'edit_posts\') == true && count_user_posts($authorID) > 0) {
    /* Author+ with Posts */

    $return = \'<a href="\'.home_url().\'/?author=\'.$authorID.\'">\'.$authorName.\'</a>\';

    } else {
    /* Below Author */

    if ( empty( $authorURL ) || \'http://\' == $authorURL )
        $return = $authorName;
    else
        $return = "<a href=\'$authorURL\' rel=\'external nofollow\' class=\'url\' target=\'_blank\'>$authorName</a>";

    }

break;
}

return $return;
}

add_filter(\'get_comment_author_link\', \'comment_author_profile_link\');

结束

相关推荐

WordPress主题中的“文本域”、Comments_Form帮助

我一直在努力创建自己的主题,基本上做到了这一点,但运行了主题检查插件,并提出了一些问题:在整个主题中,无论哪里有文本,我都会使用_e( \'Import / Export\' ); 例如帮助翻译。尽管如此,我还是收到了以下消息:推荐:管理/选项备份中的文本域问题。php。您尚未包含文本域</我试着做一些关于文本域的研究,但由于某种原因,我并没有把它们正确地组合在一起</我收到了关于add\\u custom\\u image\\u header和add\\u custom\\u backgro