معرفی 5 هک کاربردی بخش نظرات وردپرس

بخش نظرات یکی از بخش های مهم سایته.چرا که اولین هدف شما از نوشتن پست جلب خوانندست.پس شما دوست دارید به هر طریقی بخش های سایتتون رو طوری طراحی کنید که  رضایت کامل کاربرانتون رو جلب کنید.افزونه ها،کد ها و هک های زیادی برای بهبود و ارتقای کیفیت این بخش تا به حال معرفی شده.در این مقاله چندی از کاربردی ترین راهکار هایی که سبب تغییرات مطلوبی در بخش نظرات سایت شما می شن رو انتخاب کردم و هر یک رو هم توضیح خواهم داد.با این بخش همراه باشید.

هک وردپرس:معرفی هک های کاربردی بخش نظرات وردپرس

بخش نظرات که در وردپرس اصطلاحش بخش دیدگاههای محصوب میشه قبلا نحوه کار و مدیریت دیدگاهها در وردپرس رو تو سایت قرار دادیم که برای اطلاعات بیشتر می تونید مطالعه کنید.

1 – افزودن لینک های فعال به نظرات:

چه شما به کاربرانتون این اجازه رو بدید که بدون ورود به حسابشون در سایت نظر بذارن و چه اجازه ندید،اغلب مجبورید که نظرات رو ادیت کنید،به عنوان اسپم مشخصشون کنید و….

به صورت پیش فرض وردپرس قسمتی به نام ویرایش رو در هر نظر تعبیه کرده که با کلیک بر روی اون می تونید نظرات رو ویرایش کنید.ولی لینکی با عنوان حذف، یا مشخص کردن نظر به عنوان اسپم وجود نداره.با ما همراه باشید که با استافده از همین هک این بخش هارو به وردپرستون اضافه کنید.

ابتدا کد زیر رو در فایل function.php پیست کنید.

function delete_comment_link($id) {if (current_user_can('edit_post')) {echo '| <a href="'.admin_url("comment.php?action=cdc&c=$id").'">del</a> ';echo '| <a href="'.admin_url("comment.php?action=cdc&dt=spam&c=$id").'">spam</a>';}}

1

بعد از این که فایل رو مجددا سیو کردید ، فایل comments.php رو در باز کنید و کد زیر رو در هر جایی از فایل که دوست دارید قرار بدید.(این که کد رو در کجای فایل در ج کنید به محلی که تمایل دارید لینک ها در نظرات  قرار بگیرن بستگی داره.)

delete_comment_link(get_comment_ID());

2- خلاص شدن از لینک های HTML موجود در نظرات

مدیران سایت و بلاگر ها به دنبال راه هایی برای ارتقا سایتشون هستن و متاسفانه اسپمر ها در همه جا هستن!.اون چه که ممکنه خیلی آزار دهنده به نظر بیاد تعداد زیاد لینک هایی هست که در نظرات درج می شه و اغلب نامربوط هستن.

به صورت پیش فرض ،وردپرس URL هارو در نظرات به لینک تبدیل می کنه.به هرحال اگه شما هم از وجود این لینک ها رنج می برید،برای خلاص شدن از این لینک ها کافیه طبق معمول فایل مربوط به این تغییرات در وردپرس رو،یعنی فایل رو،یعنی فایل function.php رو باز کنید و کد زیر رو در اون درج کنید.

function plc_comment_post( $incoming_comment ) {$incoming_comment['comment_content'] = htmlspecialchars($incoming_comment['comment_content']);$incoming_comment['comment_content'] = str_replace( "'", '&apos;', $incoming_comment['comment_content'] );return( $incoming_comment );}function plc_comment_display( $comment_to_display ) {$comment_to_display = str_replace( '&apos;', "'", $comment_to_display );return $comment_to_display;}add_filter('preprocess_comment', 'plc_comment_post', '', 1);add_filter('comment_text', 'plc_comment_display', '', 1);add_filter('comment_text_rss', 'plc_comment_display', '', 1);add_filter('comment_excerpt', 'plc_comment_display', '', 1);

 

2

3- جداسازی نویسنده نظرات با استایل متفاوت

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

اگه دوست دارید استایل نظرات متفاوت با هم باشه .بدین منظور ابتدا نیاز دارید فایل comment.php رو باز کنید و خط زیر رو در اون پیدا کنید:

<?php foreach comment as $comment) { ?>

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

<?php$isByAuthor = false;if($comment->comment_author_email == get_the_author_email()) {$isByAuthor = true;}?>

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

<li class="<?php echo $oddcomment; ?>" id="comment-<?php comment_ID() ?>">

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

 

3

 

سپس کلاس زیر رو در ادامه کدی که پیدا کردید درج کنید:

<li class="<?php echo $oddcomment; ?> <?php if($isByAuthor ) {echo 'authorcomment';} ?>" id="comment-<?php comment_ID() ?>">

در نهایت کافیه کلاس CSS رو برای  نویسنده نظری که قصد داریم نظرشو جداسازی کنیم بسازیم.برای این کار فایل style.css رو باز کنید و کد زیر رو در ادامه اون درج کنید.همون طور که می بینید بخشی در کد وجود داره که رنگ مربوط به جداسازی به صورت پیش فرض در اون نوشته شده.شما میتونید از هر رنگی که مایل هستید  به جای اون استفاده کنید:

.authorcomment{color:#fff;font-weight:bold;background:#068;}

4 – نمایش تعداد نظرات به صورت عمومی

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

<?php$count_posts = wp_count_posts();$posts = $count_posts->publish;$count_comments = get_comment_count();$comments = $count_comments['approved'];echo "There's a total of ".$comments." comments on my blog, with an average ".round($comments/$posts)." comments per post.";?>

5 – نمایش تعداد نظرات به صورت عمومی

پیش از این آموزشی رو در این بابت داشتیم که پرنظرترین پست ها رو می تونستید به نمایش بذارید.ولی این کد به شما کمک می کنه تا پرنظر ترین پست ها رو در فاصله زمانی ای که خودتون دوست دارید در صفحه اصلی مشخص کنید.

برای این کار کد رو در فایل function.php در ج کنید.

فراموش نکنید که در خط سوم فاصله زمانی رو مطابق با تمایلتون تغییر بدید.

<ul><?php$result = $wpdb->get_results("SELECT comment_count,ID,post_title, post_date FROM $wpdb->posts WHERE post_date BETWEEN '2009-06-01' AND '2009-07-01' ORDER BY comment_count DESC LIMIT 0 , 10");foreach ($result as $topten) {$postid = $topten->ID;$title = $topten->post_title;$commentcount = $topten->comment_count;if ($commentcount != 0) {?><li><a href="<?php echo get_permalink($postid); ?>"><?php echo $title ?></a></li><?php }}?></ul>

موفق باشید

منبع: بیگ تم

 

 

دیدگاهتان را بنویسید

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