برای افزودن لایک اینستاگرام یا فیسبوک (لایک قلبی یا شستی) به همراه عددی که تعداد لایک را نمایش می دهد در خدمت شما هستیم. می توانید برای وبسایت خود درست مانند digital98.ir یک سیستم لایک و دیسلایک مطالب و دیدگاه های وردپرس بدون افزونه و یا با افزونه به شکل ایجکس ایجاد کنید.

برای این کار از توابعی که به صورت رایگان و متن باز توسط آقای جان مسترسون (Jon Masterson) در سایت گیت هاب (github) به آدرس WordPress-Post-Like-System منتشر شده استفاده می کنیم.

نقاط قوت سیستم لایک مطالب و دیدگاه وردپرس بدون افزونه

برخی از ویژگی های سیستم لایک نوشته و نظرات با این روش عبارتند از:

  1. لایک و دیسلایک پست ها و نظرات وردپرس به شکل آژاکس (ایجکس Ajax)
  2. استفاده از آیکون های svg، فونت ایکون، فونت awesome و یا تصویر در پروژه
  3. فراخوانی دکمه های لایک در نوشته و نظرات وردپرس توسط تابع
  4. امکان استفاده در حلقه وردپرس یا کوئری های وردپرس
  5. قابلیت تعیین آیکون متفاوت برای نوشته های لایک شده
  6. امکان لایک یا دیسلایک مطالب و دیدگاه ها توسط کاربر
  7. نمایش تعداد لایک و همچنینی تعداد و مطلب لایک شده توسط کاربران در پروفایلشان
  8. امکان ساخت کوئری برای نمایش نوشته یا دیدگاه های دارای بیشترین لایک درست مانند مطالب پر لایک digital98
  9. قابلیت نمایش لایک بر حسب کیلو (مثلا 1k یا 1m)
  10. و …

آموزش ایجاد لایک مطالب و دیدگاه وردپرس بدون افزونه

برای شروع ابتدا فایل های افزونه را از سرور گیت هاب و یا از این لینک دانلود کنید. پس از استخراج فایل از حالت فشرده، فایل پی اچ پی post-like.php را در کنار سایر فایلهای قالب وردپرس مان کپی کنید. سپس قطعه کد زیر را در فایل فانکشن پوسته که با نام functions.php شناخته می شود قرار دهید تا توابع افزونه لایک را فراخوانی کنیم.

include_once('post-like.php');

در پوشه js فایلی با نام simple-likes-public.js وجود دارد که برای ایجاد قابلیت ایجکس مورد استفاده قرار می گیرد.
این فایل جی کوئری را نیز به پوشه js قالب منتقل کنید. (اگر پوسته وردپرس تان پوشه js ندارد آنرا بسازید و فایل simple-likes-public.js را درون آن کپی کنید)

در پوشه css فایلی با نام simple-likes-public.css وجود دارد که باید کدهای استایل موجود در آنرا کپی کرده و در استایل پوسته که با نام style.css شناخته می شود قرار دهید. تقریبا کار فراخوانی و شناساندن توابع سیستم لایک مطالب و دیدگاه وردپرس بدون افزونه تمام شده و اکنون می توانید با استفاده از توابع زیر در حلقه و کوئری وردپرس بخش لایک مطالب را نمایش دهید.

تابع لایک مطالب
<?php echo get_simple_likes_button(get_the_ID()); ?>
تابع لایک دیدگاه ها
<?php echo get_simple_likes_button(get_comment_ID(),1); ?>

تغییر آیکون پسندیدن و نپسندیدن سیستم لایک وردپرس

برای تغییر آیکون های لایک و دیسلایک فایل post-like.php را در ویرایشگر php اجرا کنید سپس به عبارت get_liked_icon و get_unliked_icon را جستجو کنید، اکنون می توانید با تغییر ایکون svg پیشفرض (خط 305 و 315) به فونت آیکون دلخواه یا ایکون تصویری، شخصی سازی های لازم را انجام دهید.

نمایش تعداد لایک مطلب

برای نمایش تعداد لایک مطلب از تابع زیر استفاده نمایید:

 <?php echo get_post_meta( get_the_ID(), "_post_like_count", true ); ?> 

نمایش تعداد لایک بدون آیکون

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

$like_count = get_post_meta( get_the_ID(), "_post_like_count", true );
$like_count = ( isset( $like_count ) && is_numeric( $like_count ) ) ? $like_count : 0;
echo $like_count;

کوئری نمایش مطالب دارای بیشترین لایک

 <?php $sticky = get_option('sticky_posts'); $arms = array( 'post_type' => 'post','post__not_in' => $sticky, 'post_status' => 'publish', 'meta_key'  => '_post_like_count','orderby' => 'meta_value_num', 'order' => 'DESC','posts_per_page' => 10); $the_query = new WP_Query($arms); if ($the_query->have_posts()) : while ($the_query->have_posts()) : $the_query->the_post(); ?> <li><a target="_blank" href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li> <?php endwhile; wp_reset_postdata(); else : ?> <li><?php _e( 'متاسفم مطلبی برای نمایش وجود ندارد' ); ?></li> <?php endif; ?> 

برای نمایش مطالبی که بیشترین لایک را دریافت کرده اند، از کوئری فوق استفاده کنید. در این کوئری تعداد 10 عنوان به همراه لینک مطلب نمایش داده می شود برای تغییر تعداد مطالب قابل نمایش مقدار متغییر posts_per_page را تغییر دهید.

اگر تمایل به استفاده این قابلیت به صورت افزونه را دارید می توانید به صورت افزونه از جعبه دانلود، دریافت و در سایت وردپرسی خود استفاده نمائید.