فى الدرس السابق، تعرفنا على طريقة برمجة صفحة عرض التدوينة single.php، وفى هذا الدرس -بإذن الله- سنكمل ما بدأناه الدرس الماضي، وسنتحدث عن الجزء الخاص بعرض معلومات الكاتب، والآن لنبدأ فى العمل الممتع !
الآن لدي بداخل صفحة single.php، لدي جزء خاص بعرض معلومات كاتب التدوينة، وتظهر تلك المعلومات عبر الكود التالي:
بدايةً فى ملف comments.php، سنقوم بوضع تحقق لمعرفة ما إذا كان المستخدم له الحق فى تحميل هذا الملف أم لا، وإن لم يكون له تلك الصلاحيات، سيتم إغلاق الملف، لذلك سنضع هذا الكود فى أول الملف:
if (!empty($_SERVER['SCRIPT_FILENAME']) &&
basename($_SERVER['SCRIPT_FILENAME'])=='comments.php'){
die ('Please do not load this page directly. Thanks!');
}
الآن علينا التحقق من إن كانت التدوينة الموجود بها تلك التعليقات محمية بكلمة سر أم لا عبر دالة post_password_required، وإن كانت محمية بكلمة سر فسنعرض رسالة للمستخدم بأنه عليه أن يقوم بإدخال كلمة السر لعرض التعليقات، إذًا فلنضيف هذا الكود أيضًا:basename($_SERVER['SCRIPT_FILENAME'])=='comments.php'){
die ('Please do not load this page directly. Thanks!');
}
if ( post_password_required() ) { ?>
return;
}
الآن سأضع لكم الكود الأساسي، الذي سنعمل عليه، ثم سأقوم بشرحه لكي نفهمه جميعًا:return;
}
if(have_comments()){
?>
Display
}elseif(!comments_open() && !is_page() && post_type_supports(get_post_type(),'comments')){
?>
Comments are closed !
}
?>
والآن قم بوضع كود HTML الخاص بعرض التعليقات بدلاً من كلمة Display، ثم إتبع الآتي لعرض التعليقات:
1- دالة comments_number، وهي تأخذ ثلاثة بارامترات، البارامتر الأول، النص الذي سيتم عرضه فى حالة عدم وجود أى تعليق، والثاني النص الذي سيتم عرضه فى حالة وجود تعليق واحد، والأخير فى حالة وجود أكثر من تعليق، وفي تلك الحالة لعرض عدد التعليقات سيتم إستخدام العلامة المئوية %.
2- دالة wp_list_comments، وهي لعرض التعليقات بشكل إفتراضي، ولكن التعليقات ستظهر بصورة غير متناسقة مع القالب، لذلك سنقوم بإدخال بارامتر لها كالتالي:
wp_list_comments('callback=my_comments');
حيث أن my_comments، ستكون عبارة عن دالة مسئولة عن عرض التعليقات، تلك الدالة بالطبع سنقوم بإنشائها بداخل ملف functions.php، ولذلك سنقوم الآن بفتح ملف functions.php، ومن ثم إنشاء دالة جديدة بذلك الإسم، كالتالي:function my_comments(){
}
ولكن تلك الدالة سنقوم ببرمجتها فى الدرس القادم -بإذن الله-، أما الآن سنترك ذلك، ونقوم ببرمجة نظام صفحات التعليقات، حيث أن التدوينة إذا إحتوت على عدد كبير من التعليقات لا يمكن عرضها جميعها فى صفحة واحدة، ولذلك سنقوم ببرمجة نظام صفحات لها، الآن بداخل ملف comments.php، أسفل دالة wp_list_comments سنقوم بوضع كود HTML الخاص بعرض الصفحات، وسنقوم بإستخدام دالة previous_comments_link لوضع رابط التعليقات الأقدم، وهي دالة تأخذ بارامتر واحد وهو النص الذي سيتم عرضه لهذا الرابط، أما بالنسبة للتعليقات الأحدث، فسيتم عرض رابط لها عن طريق دالة next_comments_link وهي أيضًا تأخذ بارامتر واحد وهو النص الذي سيتم عرضه للرابط.}
ولكن لنجعل هذا الكود أكثر ذكاءًا، حيث يتم إدراج روابط الإنتقال بين صفحات التدوينة تحت هذا الشرط:
if(get_comment_pages_count > 1 && get_option('page_comments')){
}
حيث أننا فى هذا الشرط قمنا بالتحقق من تفعيل إختيار تعدد صفحات التدوينات من لوحة التحكم، ووجود أكثر من صفحة واحدة فى التدوينة ليتم عرض روابط الإنتقال بين الصفحات.}
تبقى لنا الآن شيئان فقط، وهما برمجة دالة my_comments لعرض التعليقات، والشيء الثاني وهو وضع نموذج إنشاء تعليق جديد، وذلك ببساطة يتم عن طريق دالة comment_form فقط، ضعها فى مكانها المناسب وسيتم عرض نموذج إنشاء تعليق جديد.
والآن يتبقى لنا فقط برمجة دالة my_comments لعرض التعليقات؛ لإنهاء جميع ما يخص التعليقات، وذلك ما سنقوم به فى الدرس القادم -بإذن الله-.
ليست هناك تعليقات:
إرسال تعليق