افزودن قابلیت لایک کردن نوشته‌ها در وردپرس (بدون نیاز به نصب افزونه)

لایک کردن

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

روش دوم نیز بدون استفاده از شبکه‌های اجتماعی و با نصب و فعال کردن افزونه‌های لایک مطالب وردپرس است. می‌توانید این امکان را به سایت خود اضافه نمایید و این روش هم به دلیل استفاده بسیار زیاد از منابع پردازشی توصیه نمی‌شود. برای استفاده بهتر از وردپرس بهتر است هاست وردپرس تهیه کنید.

در ادامه با ما همراه باشید تا بدون استفاده از کدهای شبکه‌های اجتماعی یا افزونه‌های لایک بتوانید قابلیت لایک کردن پست‌ها را به سایت خود اضافه نمایید.

می‌توانید سورس را ((ss-like)) دانلود کنید.

قابلیت لایک کردن نوشته‌ها

برای اضافه کردن قابلیت لایک کردن پست‌ها در وردپرس بدون نصب افزونه کافیست. تا فایل function.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[0])) {
$data[0] = 0;
add_post_meta($post_id, '_likes', '0', true);
}
return $data[0];
break;
case 'update':
if(isset($_COOKIE["like_" . $post_id])) {
return;
}
$currentValue = get_post_meta($post_id, '_likes');
if(!is_numeric($currentValue[0])) {
$currentValue[0] = 0;
add_post_meta($post_id, '_likes', '1', true);
}
$currentValue[0]++;
update_post_meta($post_id, '_likes', $currentValue[0]);
setcookie("like_" . $post_id, $post_id,time()+(60*60*24*365));
break;
}
}
function ss_Likes($post_id) {
$likes = likeThis($post_id);
$who = ' بار پسندیده شده است ';
if($likes == 1) {
$who = ' بار پسندیده شده است ';
}
if(isset($_COOKIE["like_" . $post_id])) {
print '<a href="#" id="like-'.$post_id.'">'.$likes.$who.'</a>';
return;
}
print '<a href="#" 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', '0', true);
}
function checkHeaders() {
if(isset($_POST["likepost"])) {
likeThis($_POST["likepost"],'update');
}
}
function jsIncludes() {
wp_enqueue_script('jquery');
wp_register_script('ss-likesScript',
get_template_directory_uri(). '/js/ss-likesScript.js' );
wp_enqueue_script('ss-likesScript',array('jquery'));
}
add_action ('publish_post', 'setUpPostLikes');
add_action ('init', 'checkHeaders');
add_action ('get_header', 'jsIncludes');

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

your-theme/js/ss-likesScript.js

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

<?php ss_Likes(get_the_ID()); ?>

با تشکر از این که تا پایان آموزش “افزودن قابلیت لایک کردن نوشته‌ها در وردپرس (بدون نیاز به نصب افزونه)” همراه ما بودید.

دیدگاه خود را ارسال کنید

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

X