لایک و دیس لایک مطالب وردپرس بدون افزونه یعنی با استفاده از کد را در این بخش ارائه خواهیم کرد تا شما به راحتی بتوانید امکان لایک مطالب وردپرس را به سایت خود اضافه کنید. اگر مقالات قبلی ما را مشاهده کرده باشید مطلب مرتبطی در رابطه با افزونه لایک مطالب وردپرس و همچنین کامنت ها را ارائه کردیم در این مقاله شما این قابلیت را با استفاده از افزونه به سایت خود اضافه می کردید اما با توجه به اینکه برخی از کاربران درخواست هایی داشتن جهت ارائه قابلیت لایک و دیس لایک مطالب وردپرس بدون افزونه، ما تصمیم گرفتیم یک مقاله جدید ارائه کنیم و اموزش اضافه کردن امکان لایک مطالب وردپرس بدون افزونه فقط با چند قطعه کد را ارائه کنیم.
کد لایک و دیسلایک مطالب وردپرس برای آن دسته از افرادی می باشد که قصد ندارند از افزونه استفاده کنند و همچنین دلیلی نمی بینند برای اضافه کردن هر امکانی در سایت از افزونه های کاربردی وردپرس استفاده کنند و … با ما همراه باشید تا آموزش را شروع کنیم.
قابلیت لایک مطالب وردپرس در برخی از موارد میتواند از جایگاه ویژه ای برای مدیران وب سایت ها داشته باشد تا بتوانند با استفاده از این قابلیت میزان رضایت مندی و بازخورد مطالب سایتشان را بسنجند یعنی شما با اضافه کردن این قابلیت به وردپرس خود کابران می تواند پست های منتشر شده را لایک و دیس لایک کنند با این حال شما خواهید فهمید که پست و مطلبی که منتشر کردید چه مقدار توانسته کاربران را راضی کند.
لایک و دیس لایک مطالب وردپرس بدون افزونه
با استفاده از کد زیر شما می توانید لایک و دیس لایک مطالب وردپرس بدون افزونه را در کنار تمام محتوای سایت خود داشته باشید، با این کار شما یک دکمه پسندیدند و نپسندیدند در انتها و یا ابتدای مطالب خود خواهید داشت که بر اساس نیاز خود میتوانید در یک جایگاه مناسب قرار دهید تا کاربران بر اساس کوکی خود بتوانند به هر نوشته لایک ثبت کنند. همچنین میتوانند دیس لایت یا همان نپسندیدن را انجام دهند.
برای شروع کار قطعه کد زیر را در فایل فانکشن functions.php قالب وردپرس خود قرار دهید.
<?php function likeThis($post_id,$action = 'get') { if(!is_numeric($post_id)) { error_log("خطا : مقدار عددی برای post_id ارسال نشده است"); return; } switch($action) { case 'get': $data = get_post_meta($post_id, '_likes'); if(!is_numeric($data[۰])) { $data[۰] = ۰; add_post_meta($post_id, '_likes', '۰', true); } return $data[۰]; break; case 'update': if(isset($_COOKIE["like_" . $post_id])) { return; } $currentValue = get_post_meta($post_id, '_likes'); if(!is_numeric($currentValue[۰])) { $currentValue[۰] = ۰; add_post_meta($post_id, '_likes', '۱', true); } $currentValue[۰]++; update_post_meta($post_id, '_likes', $currentValue[۰]); setcookie("like_" . $post_id, $post_id,time()+(۶۰*۶۰*۲۴*۳۶۵)); break; } } function mw_Likes($post_id) { $likes = likeThis($post_id); $who = ' بار پسندیده شده است '; if($likes == ۱) { $who = ' بار پسندیده شده است '; } if(isset($_COOKIE["like_" . $post_id])) { print '<a href="#" class="likeThis done" id="like-'.$post_id.'">'.$likes.$who.'</a>'; return; } print '<a href="#" class="likeThis" id="like-'.$post_id.'">'.$likes.$who.'</a>'; } function setUpPostLikes($post_id) { if(!is_numeric($post_id)) { error_log("خطا : مقدار عددی برای post_id ارسال نشده است"); return; } add_post_meta($post_id, '_likes', '۰', true); } function checkHeaders() { if(isset($_POST["likepost"])) { likeThis($_POST["likepost"],'update'); } } function jsIncludes() { wp_enqueue_script('jquery'); wp_register_script('Mw-likesScript', get_template_directory_uri(). '/js/Mw-likesScript.js' ); wp_enqueue_script('Mw-likesScript',array('jquery')); } add_action ('publish_post', 'setUpPostLikes'); add_action ('init', 'checkHeaders'); add_action ('get_header', 'jsIncludes'); ?>
خب با اضافه کردن قطعه کد فوق در فایل فانکشن در واقع شما امکان لایک و دیسلایک مطالب وردپرس بر اساس کوکی کاربران را به سایت خود اضافه کردید ( منظور از کوکی این است که هر کاربر برای هر نوشته فقط می تواند یک لایک ثبت کند)
در ادامه فایل زیر ( Mw-likesScript.js) را دانلود و وارد پوشه پوسته وردپرس خود شوید و آنرا داخل پوشه js آپلود کنید. حتما توجه داشته باشید که فایل مذکور را داخل پوشه js قالب آپلود کنید. اگر داخل پوسته وردپرس شما چنین پوشه ای وجود ندارد حتما یک پوشه با این نام ایجاد و سپسفایل مذکور داخل آن آپلود کنید.
در مرحله بعدی شما باید به وسیله قطعه کد زیر دکمه پسندیدن و نپسندیدن مطالب وردپرس را در بالا یا پایین نوشته ها نمایش دهید.
<?php mw_Likes(get_the_ID()); ?>
برای نمایش دکمه لایک و دیسلایک در صفحات ، نوشته یا مطالب وب سایت کافیست کد فوق را داخل فایل single.php (داخل پوشه قالب قرار دارد ) و در جایگاه مناسب قرار دهید و در نهایت فایل را ذخیره کنید.
توجه: چنانچه قصد دارید تا قابلیت لایک و دیسلایک را نیز به کامنت ها اضافه کنید باید کد فوق را داخل فایل مربوط به کامنت و در جایگاه مناسب قرار دهید.
شما می توانید با استفاده از این آموزش و کد بالا امکان پسندیدن و نپسندیدن را به نوشته ها ، برگه ها ، کامنت ها و در هر قسمتی از وب سایت خود اضافه کنید که ما در این آموزش به نوشته ها ( single.php )پرداختیم.
فایل مربوط به کامنت ها ( comments.php ) و فایل مربوز به برگه ها ( page.php )
خب بعد از درج قطعه کد ها در فایل های مذکور می توانید نتیجه کار را ببینید خواهید دید که یک دکمه با عنوان پسندیدن در نوشته شما ایجاد و با کلیک کردن روی آن شمارنده ی لایک یک واحد اضافه می شود.
کد لایک و دیس لایک مطالب وردپرس
توجه: ما در این مطلب اقدام به ارائه ۲ آموزش با دو نوع کد متفاوت جهت ایجاد لایک و دیس لایک مطالب وردپرس بدون افزونه کردیم که روش اول را در ابتدا آموزش دادیم و در ادامه به روش دوم و با استفاده از کد دیگر خواهیم پرداخت شما می توانید یکی از این روش ها را جهت اضافه کردن قابلیت لایک مطالب وردپرس در سایت استفاده کنید.
روش دوم:
ایجاد لایک و دیسلایک مطالب وردپرس بدون افزونه
چنانچه به هر دلیلی از آموزش بالا برای اضافه کردن قابلیت لایک در نوشته های وردپرس خود استفاده نکردید می توانید از روش دوم برای این منظور استفاده کنید.
برخی از ویژگی های کد لایک و دیسلایک مطالب به وردپرس و کامنت ها
- پسندیدن و نپسندیدن پست ها ، دیدگاه های وردپرس یا همان کامنت ها به شکل آجاکس
- قابلیت نمایش تعداد لایک ها یا شمارش به صورت k ( برای مثال 1k)
- دارای قابلیت نمایش تعداد لایک ها در پروفایل کاربری
- قابلیت تعیین انواع آیکون برای لایک مطالب
- امکان استفاده از انواع آیکون ها با فرمت svg ، انواع فونت آیکون یا تصاوی دلخواه
- دارای قابلیت ساخت کوئری برای نمایش نوشته ها کامنت های دارای بیشترین لایک یا پسندیدن
- امکان فراخوانی دکمه پسندیدن در نوشته و دیدگاه های وردپرس
- و بسیاری دیگر…
خوب برای شروع کار در( روش دوم ) ابتدا افزونه زیر را با لینک مستقیم دانلود کنید
دانلود افزونه WordPress Post Like System
بعد از دریافت پلاگین آن را از حالت زیپ یا فشرده خارج کنید داخل فایل های افزونه به دنبال فایل “ post-like.php ” بگردید و در نهایت پس از پیدا کردن فایل مذکور آن را در کنار سایر فایل های قالب وردپرس خود کپی کرده و اقدام به وارد کردن کد زیر فایل فانکشن functions.php پوسته وردپرس خود کنید. با این کار شما تابع افزونه لایک را فراخوانی می کنید پس حتما کد زیر را داخل فایل فانکشن پوسته خود قرار دهید.
include_once('post-like.php');
داخل پوشه افزونه ای که از حالت زیپ خارج کردید فایلی به نام ” simple-likes-public.js ” در داخل پوشه js افزونه قرار دارد که قابلیت ایجکسی بودن لایک مطالب وردپرس می باشد . این فایل را از مسیر قالب خود و در پوشه به نام js آپلود کنید.چنانچه قالب شما پوشه ای به نام js ندارند یک پوشه با این نام ایجاد و سپس اقدام به آپلود فایل ” simple-likes-public.js ” کنید.
در ادامه برای استایل و زیبا سازی دکمه پسندیدم و نپسندیدن مطالب وردپرس بدون افزونه میبایست فایل ” simple-likes-public.css ” را از داخل پوشه css افزونه که از حالت فشرده خارج کردید پیدا و ویرایش کنید ( برای ویرایش کردن این نوع فایل می توانید از نرم افزار Notepad++ استفاده کنید.) خب شما می بایست کدهای داخل این فایل را کپی و در انتهای کد های فایل ” style.css ” قالب وردپرس خود وارد و فایل رو ذخیره کنید.
کار تمام است حالا برای نمایش دکمه لایک در نوشته های وردپرس و یا دیدگاها باید از کد زیر استفاده کنید.
تابع لایک مطالب <?php echo get_simple_likes_button(get_the_ID()); ?> تابع لایک دیدگاه ها <?php echo get_simple_likes_button(get_comment_ID(),1); ?>
کد بالا را می توانید در در فایل single.php قالب وردپرس خود در مکان مناسب وارد کنید با این کار شما دکمه لایک و دیس لایک را به نوشته های وب سایت خود اضافه خواهید کرد همچنین می توانید با اضافه کردن کد فوق در فایل مربوط به کامنت ها این قابلیت را در نظرات وردپرس خود داشته باشید و همچنین برگ ها که ما در این بخش به نوشته ها پرداختیم.
فایل مربوط به کامنت ها ( comments.php ) و فایل مربوز به برگه ها ( page.php )
اما تغییر آیکون لایک و دیس لایک
برای اینکه بتوانید آیکون های لایک و دیسلایک پیشفرض را تغییر دهید کافیست فایل post-like.php به حالت ویرایش در آوردید و به دنبال عبارت get_liked_ico درget_unliked_icon بگردید و برای تغییر دادن آیکون svg به فونت آیکون های دلخواه و همچنین آیکون های تصویری در ( خط ۳۰۵ و ۳۱۵ ) اقدام کنید.
ایجاد کوئری نمایش مطالب وب سایت با بیشترین لایک
با استفاده از این کد شما می توانید مطالب و نوشته های خود را که بیشترین لایک را دارند در سایت نمایش دهید.
<?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; ?>
خوب کد فوق برای نمایش مطالب و نوشته های بیشترین لایک می باشد که می توانید در وب سایت خود از آن استفاده کنید، که به صورت پیشفرض ما روی 5 نوشته قرار دادیم که شما می توانید با تغییر دادن متغییر posts_per_page تعداد را افزایش و یا کم کنید.
خوب به پایان این مقاله آموزشی وردپرس یعنی ایجاد لایک و دیس لایک مطالب وردپرس بدون افزونه رسیدیم از اینکه ما را تا پایان همراهی کردید بسیار سپاسگزاریم، موفق باشید.
چنانچه در رابطه با این آموزش سوال و یا مشکلاتی دارید میتوانید از بخش دیدگاه ها بپرسید تا در سریع ترین زمان پاسخ دهیم.
در این رابطه بخوانید:
افزونه لایک و دیس لایک مطالب وردپرس
یک پاسخ
عالی ممنون