نحوه اضافه کردن مقام کاربران در کنار کامنت های آنان در وردپرس

یکی از خوانندگان مقالات ما، از ما پرسید که آیا این امکان وجود دارد که در قسمتی که کاربران سایت کامنت می گذارند، در کنار نام هر کاربر، مقام یا شغل کاربر در سایت نیز مشخص شود؟ نشان دادن مقام کاربران ( به خصوص کاربرانی مانند نویسندگان، ادیتورها و ادمین ها) در کنار نام آن ها در کامنت ها، اعتبار کامنت ها را بالا می برد که در این مقاله ما به شما نشان خواهیم داد که چگونه به راحتی مقام هر کاربر را در کنار نام آن ها در بخش کامنت ها در وردپرس قرار دهید.

چرا باید مقام هر کاربر را ثبت کنید؟

اگر شما سایتی دارید که به کاربران اجازه می دهید در سایت شما ثبت نام کنند، ثبت مقام هر کاربر باعث می شود که کاربران با هم آشنایی بیشتری پیدا کنند.

برای مثال کاربری که در سایت شما وظیفه ادیت را دارد وقتی کامنت می گذارد، در کنار اسم او کلمه ادیتور ثبت می شود که باعث می شود بقیه کاربران بدانند که این کامنت از طرف یک ادیتور ثبت شده است. که این کار باعث افزایش اعتماد کاربران و فعالیت بیشتر آنان در بخش کامنت ها می شود.

بسیاری از قالب های وردپرس تنها نام کسی که آن کامنت را ثبت کرده نشان می دهند و هیچ گونه اطلاعاتی از مقام آن کاربر نمی گذارند. حال بیایید ببینیم که چگونه می توان این قابلیت را در وردپرس فعال کرد.

نحوه اضافه کردن مقام کاربران در بخش کامنت ها در وردپرس

برای این کار باید یک سری کد به قالب خود اضافه کنید. اولین چیزی که احتیاج دارید این است که کد زیر را در فایل functions.php قالب خود قرار دهید.

 

۱

۲

۳

۴

۵

۶

۷

۸

۹

۱۰

۱۱

۱۲

۱۳

۱۴

۱۵

۱۶

۱۷

۱۸

۱۹

۲۰

۲۱

۲۲

۲۳

۲۴

۲۵

۲۶

۲۷

۲۸

۲۹

if ( ! class_exists( ‘WPB_Comment_Author_Role_Label’ ) ) :

class WPB_Comment_Author_Role_Label {

public function __construct() {

add_filter( ‘get_comment_author’, array( $this, ‘wpb_get_comment_author_role’ ), 10, 3 );

add_filter( ‘get_comment_author_link’, array( $this, ‘wpb_comment_author_role’ ) );

}

 

// Get comment author role

function wpb_get_comment_author_role($author, $comment_id,     $comment) {

$authoremail = get_comment_author_email( $comment);

// Check if user is registered

if (email_exists($authoremail)) {

$commet_user_role = get_user_by( ’email’, $authoremail );

$comment_user_role = $commet_user_role->roles[0];

// HTML output to add next to comment author name

$this->comment_user_role = ‘ <span class=”comment-author-label comment-author-label-‘.$comment_user_role.'”>’ .  ucfirst($comment_user_role) . ‘</span>’;

} else {

$this->comment_user_role = ”;

}

return $author;

}

 

// Display comment author

function wpb_comment_author_role($author) {

return $author .= $this->comment_user_role;

}

}

new WPB_Comment_Author_Role_Label;

endif;

 

این کد باعث خواهد شد که تغییری در قالب سایت وردپرس شما ایجاد شود و مقام کاربرانی که در سایت ثبت نام کرده اند نیز در کنار نام آنها نمایش داده می شود. حال شما می توانید نتیجه کار خود را ببینید. برای این کار به سراغ یکی از پست های سایتتان که کاربرانی که در سایت شما ثبت نام کرده اند و در زیر آن کامنت گذاشته اند رفته و خواهید دید که مقام آنها در سایت نیز در کنار نام آن ها در کامنت نمایش داده شده است. کاربرانی که در سایت ثبت نام نکرده اند مانند قبل فقط نام آنها نمایش داده می شود. مانند شکل زیر:

حال که این کار را با موفقیت انجام دادیم، وقت آن رسیده که به این کار خود کمی استایل دهیم و شکل آن را زیباتر کنیم.

زیباسازی دیدگاه ها با استفاده از CSS

در کدی که ما در قالب خود قرار دادیم ما از کلاس CSS برای نمایش مقام کاربر استفاده کردیم و حال می توانیم از همین کدهای CSS برای تنظیم استایل هر کاربر استفاده کنیم مثلا برای هر کدام رنگ متفاوتی قرار دهیم و غیره

میتوانید به عنوان مثال از کد CSS زیر استفاده کنید:

۱

۲

۳

۴

۵

۶

۷

۸

۹

۱۰

۱۱

۱۲

۱۳

۱۴

۱۵

۱۶

۱۷

۱۸

۱۹

۲۰

۲۱

۲۲

۲۳

.comment-author-label {

    padding: 5px;

    font-size: 14px;

    border-radius: 3px;

}

.comment-author-label-editor {

background-color:#efefef;

}

.comment-author-label-author {

background-color:#faeeee;

}

.comment-author-label-contributor {

background-color:#f0faee;

}

.comment-author-label-subscriber {

background-color:#eef5fa;

}

.comment-author-label-administrator {

background-color:#fde9ff;

}

 

که با قرار دادن کد بالا نتیجه به صورت زیر خواهد شد:

 

 

امیدواریم که این مقاله به شما کمک کرده باشد که از این بعد بتوانید مقام کاربران را در کنار نام آنان در قسمت کامنت ها به نمایش بگذارید.

 

Leave a comment

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *