google.com, pub-5256078404460534, DIRECT, f08c47fec0942fa0
ايوتيك ايوتيك
recent

آخر الأخبار

recent
random
جاري التحميل ...

طريقة إضافة نجوم تقييم المقالات في ووردبريس

منذ فترة و أنا أستقبل أسئلة عبر البريد اﻹلكتروني أو من خلال التعليقات حول الطريقة التي أستعملها لوضع نجوم تقييم المقالات و كيفية إظهارها في قوقل، لهذا السبب قررت كتابة هذه التدوين التي سأحاول من خلالها شرح الطريقة التي أستعملهابالتفصيل، اﻹضافة التي أستعملها أنا التي هي إضافة WP-PostRatings.


ظهور مقالة أنواع المقالات المخصصة في قوقل
مثال ظهور مقالة أنواع المقالات المخصصة في قوقل

إضافة WP-PostRatings ليست هي اﻹضافة المجانية الوحيدة التي تمكّن من وضع نجوم التقييم، لكن حسب رأيي هي أفضل إضافة في مجالها لكونها تمنح حرية كاملة في التخصيص و لا تثقل كاهل الموقع بكثرة اﻹعدادات و التنسيقات و ملفات الجافاسكربت كما هو الحال مع أغلب اﻹضافات …


تنصيب و إعداد إضافة WP-PostRatings


أول شيء نقوم به هو تنصيب اﻹضافة، بعدها نتوجه إلى التقييم => إعدادات التقييم و نقوم بإختيار صورة التقييم التي نريدها، ثم نقوم بتحديد رقم أعلى تقييم نريده لمواضيعنا و بعدها تفعيل خاصية Google Rich Snippets لكي تتمكن عناكب قوقل من أرشفة و عرض نجوم التقييمات بجانب روابط مقالاتنا في نتائج البحث.


هذه صورة لﻹعدادات التي أعتمدها أنا في موقي


إعدادات إضافة WP-PostRatings
إعدادات إضافة WP-PostRatings

باقي اﻹعدادت هي اختيارية و يمكن ﻷي واحد ضبطها حسب ذوقه و رغبته.


عرض نظام التقييم للمقالات


اﻵن وصلنا ﻷهم مرحلة و هي عرض نظام التقييمات في أسفل المقالات. في صفحة اﻹضافة على المستدع الرسمي لووردبريس، المطور يوفر لنا أكواد جاهزة ﻷي نتمكن من استعمالها و عرض التقييمات في أي مكان نريده من القالب.


مثلا لعرض التقييمات في المقالات يمكننا وضع هذا الكود داخل اللوب (Loop):








if(function_exists('the_ratings')) {
the_ratings();
}





12345
if(function_exists('the_ratings')) { the_ratings(); }




الكود بكل بساطة يقوم بالتحقق من وجود الوظيفة the_ratings() و بعدها تفعيلها في القالب.


لكن، رغم بساطة الكود قد يواجه البعض، خصوصا المبتدئين في ووردبريس صعوبة في إضافته إلى قالبهم، لهذا قمت بعمل كود خاص لكي يتمكن أي شخص من إضافة التقيمات لموقعه بطريقة أبسط و أسهل.


الكود الذي عملته هو التالي:








if (function_exists('the_ratings') && !function_exists('sb_ratings') ) {

function sb_ratings($content)
{
if (is_singular('post')) {
ob_start();
?>

<div class="sb-ratings">
<h3 class="sb-ratings-title">لا تذهب دون ترك تقييمك للموضوع</h3>
<?php the_ratings();
?>
</div>

<?php
$output = ob_get_clean();
}

$content = $content.$output;

return $content;
}

function sb_ratings_styles()
{
?>
<style>
.sb-ratings { background: #E5E5E5; border: 2px solid #666666; border-radius: 5px; text-align: center; padding: 20px}
.sb-ratings-title {}
.post-ratings {}
</style>
<?php
}

add_action( 'wp_head', 'sb_ratings_styles' );
add_filter('the_content', 'sb_ratings', 10, 1);
}





123456789101112131415161718192021222324252627282930313233343536373839
if (function_exists('the_ratings') && !function_exists('sb_ratings') ) { function sb_ratings($content) { if (is_singular('post')) { ob_start(); ?> <div class="sb-ratings"> <h3 class="sb-ratings-title">لا تذهب دون ترك تقييمك للموضوع</h3> <?php the_ratings(); ?> </div> <?php $output = ob_get_clean(); } $content = $content.$output; return $content; } function sb_ratings_styles() { ?> <style> .sb-ratings { background: #E5E5E5; border: 2px solid #666666; border-radius: 5px; text-align: center; padding: 20px} .sb-ratings-title {} .post-ratings {} </style> <?php } add_action( 'wp_head', 'sb_ratings_styles' ); add_filter('the_content', 'sb_ratings', 10, 1);}




في اﻷول قمت بالتحقق من وجود الوظيفة the_ratings() لتفادي حدوث خطأ إذا تعطّلت اﻹضافة ﻷي سبب، أي أن هذا الكود فقط سيعمل إذا كانت إضافة WP-PostRatings مفعّلة، و في نفس الوقت تأكدت من عدم وجود وظيفة بإسم sb_ratings() لتفادي حدوث تظارب الوظيفة التي سأقوم بإنشائها مع وظيفة أخرى موجودة بنفس اﻹسم.


محتوى الوظيفة اﻷولى و هذفها مفهوم، في اﻷول قمت بالتحقق من ظهور التقييمات فقط في المقالات بواسطة الوظيفة is_singular() و و بعدها وضعت التقييمات داخل div و إعطائه class أسميته sb-ratings لكي أتمكن من التحكم في تنسيقاته عن طريق ال css تم وضعت عنوان للتقييمات و بعدها عرض قمت التقييمات، و في اﻷخير قمت بتخزين محتوى الوظيفة في متغيّر أسميته $output و بعدها قمت بإضافة هذا المتغّر في آخر محتوى المقالات.


الوظيفة الثانية الهدف منها هو إضافة التنسيقات حيث يمكنك التعديل عليها حسب رغبتك.


في اﻷخير قمت بإضافة الوظيفة اﻷولة إلى فلتر the_content و الوظيفة الثانية للخطاف wp_head.


تغيير Schema تقييم المقالات


اﻹضافة افتراضيا تستعمل ال http://schema.org/Article و هذا شيء جيد إذا كان محتوى موقعك عبارة عن مدونة، لكن يمكنك تغيير ذلك بسهولة بإستعمال الفلتر wp_postratings_schema_itemtype


مثلا إذا كان موقعك محتواه إخباري يمكنك تغيير Article إلى NewsArticle بهذا الكود:








function wp_postratings_schema_itemtype($itemtype) {
return 'itemscope itemtype="https://schema.org/NewsArticle"';
}
add_filter('wp_postratings_schema_itemtype', 'wp_postratings_schema_itemtype');





123456
function wp_postratings_schema_itemtype($itemtype) { return 'itemscope itemtype="https://schema.org/NewsArticle"'; }add_filter('wp_postratings_schema_itemtype', 'wp_postratings_schema_itemtype');




للمزيد من المعلومات حول Schema Microdata قم بزيارة مشروع قم بزيارة schema.org.


كل الأكود التي ذكرت في هذه التدوينة يجب وضعها في ملف functions.php للقالب المفعّل أو إضافتك المخصصة.


هنا أكون قد وصلت لنهاية هذه التدوينة، أتمنا أن تكون قد استفدت و إذا واجهك أي مشكل أو كان عندك أي استفسار المرجوا تركه من خلال التعليقات.


شكرا على الزيارة 🙂

Original Article

عن الكاتب

mohamed salama

مهندس ميكاترونكس و مصمم جرافيكس و مطور صفحات الويب و لي خبره في التسويق الالكتروني و السوشيال الميديا

التعليقات


جميع الحقوق محفوظة

ايوتيك