ملف comments.php

1. يعني إيه ملف comments.php؟

ملف comments.php هو الملف المسؤول عن عرض كل التعليقات الخاصة بالبوست أو الصفحة، وكمان بيحتوي على نموذج يسمح للزوار يكتبوا تعليق جديد.
أي قالب ووردبريس احترافي لازم يحتوي على ملف ده عشان نظام التعليقات يشتغل كويس.

2. إزاي تعرض التعليقات في القالب؟

في ملف comments.php بنستخدم دالة ووردبريس:

if ( have_comments() ) {
    // عرض عدد التعليقات
    echo '<h3>' . get_comments_number() . ' تعليق</h3>';
    
    // عرض قائمة التعليقات
    wp_list_comments( array(
        'style'       => 'ol',       // القائمة بشكل مرتب ordered list
        'short_ping'  => true,       // عرض التعليقات الصغيرة (Pingbacks) بشكل مختصر
        'avatar_size' => 50          // حجم صورة المستخدم
    ));
}

الكود ده بيشوف هل فيه تعليقات ولا لأ، ولو فيه، بيعرضها بطريقة مرتبة وجميلة.

3. التحكم في شكل التعليقات

تقدر تتحكم في شكل التعليقات باستخدام callback function في wp_list_comments.
لو عايز شكل مخصص، تكتب دالة بتحدد تصميم التعليق، لكن عشان نبسط الموضوع ممكن تستخدم التصميم الافتراضي اللي ووردبريس بيقدمه.

4. إضافة نموذج إضافة تعليق

عشان تضيف نموذج إضافة تعليق في نهاية صفحة التعليقات، تستخدم:

comment_form();

الوظيفة دي بتجيب نموذج جاهز بشكل مرتب، واللي يكتب تعليقه هيتسجل في الموقع.

5. مثال كامل لملف comments.php

<?php
if ( post_password_required() ) {
    echo '<p>الموضوع ده محمي بكلمة سر، لازم تدخلها عشان تشوف التعليقات.</p>';
    return;
}
?>

<div id="comments" class="comments-area">

<?php if ( have_comments() ) : ?>
    <h3 class="comments-title">
        <?php
        $comments_number = get_comments_number();
        if ( $comments_number === 1 ) {
            echo 'تعليق واحد';
        } else {
            echo $comments_number . ' تعليقات';
        }
        ?>
    </h3>

    <ol class="comment-list">
        <?php
        wp_list_comments( array(
            'style'       => 'ol',
            'short_ping'  => true,
            'avatar_size' => 50,
        ) );
        ?>
    </ol>

<?php else : ?>
    <p>مافيش تعليقات لحد دلوقتي. كن أول واحد يعلق!</p>
<?php endif; ?>

<?php comment_form(); ?>

</div><!-- #comments -->

6. نصائح مهمة لإدارة التعليقات

  • فعل خاصية الموافقة اليدوية على التعليقات في إعدادات ووردبريس
  • استخدم إضافات مكافحة السبام زي Akismet
  • شجع الزوار على التعليق بإضافة نص ترحيبي أو دعوة في نموذج التعليقات
  • خلي شكل نموذج التعليقات بسيط وواضح

7. مراجعة سريعة

  • ملف comments.php بيعرض التعليقات ونموذج إضافة تعليق
  • بتستخدم have_comments() وwp_list_comments() لعرض التعليقات
  • بتستخدم comment_form() عشان تعرض نموذج إضافة تعليق
  • ممكن تخصص شكل التعليقات بدوال callback لكن الافتراضي كفاية للمبتدئين

8. أسئلة شائعة

س: أقدر أغير تصميم نموذج التعليقات؟
ج: أيوه، تقدر تعدل في إعدادات comment_form() أو تبني نموذجك بنفسك.

س: إزاي أمنع التعليقات السبام؟
ج: استخدم إضافة Akismet أو أي إضافة مضادة للسبام.

س: هل التعليقات بتظهر تلقائياً؟
ج: لا، لو فعلت الموافقة اليدوية لازم توافق عليها الأول.

9. كود جاهز لتخصيص نموذج التعليقات أو شرح تفصيلي؟

لو حابب تخصص شكل نموذج التعليقات بدل النموذج الافتراضي، ممكن تستخدم الدالة comment_form() مع مجموعة خيارات بتتحكم في النصوص والشكل بسهولة.

مثال عملي لتخصيص نموذج التعليقات:

<?php
$comments_args = array(
    'title_reply'          => 'اترك تعليقك هنا',
    'label_submit'         => 'أرسل التعليق',
    'comment_notes_before' => '<p>برجاء احترام قواعد النقاش.</p>',
    'comment_notes_after'  => '<p>شكراً لمشاركتك!</p>',
    'fields'               => array(
        'author' => '<p class="comment-form-author"><label>الاسم <span class="required">*</span></label><input type="text" name="author" required></p>',
        'email'  => '<p class="comment-form-email"><label>البريد الإلكتروني <span class="required">*</span></label><input type="email" name="email" required></p>',
    ),
    'comment_field'        => '<p class="comment-form-comment"><label>التعليق</label><textarea name="comment" required></textarea></p>',
);

comment_form($comments_args);
?>

شرح الكود:

  • 'title_reply': عنوان فوق نموذج التعليق
  • 'label_submit': نص زر الإرسال
  • 'comment_notes_before' و 'comment_notes_after': نصوص قبل وبعد النموذج
  • 'fields': الحقول الأساسية زي الاسم والإيميل
  • 'comment_field': مربع نص التعليق

9. نهاية الدرس: “التعليقات روح الموقع وتواصل مع الزوار”

التعليقات بتدي الموقع حياة وروح، وبتخلي الزوار يتفاعلوا مع المحتوى بتاعك.
ملف comments.php هو الباب اللي بتفتح منه الحوار ده، فحافظ عليه نظيف ومنظم، وشجع جمهورك يشاركوا معاك دايمًا.

لو حابب نكمل مع دروس زي تخصيص نموذج التعليقات أو دمج إضافات تعليقات، قولي وأنا جاهز! ✌️

هل تحب كود جاهز لتخصيص نموذج التعليقات أو شرح تفصيلي؟

أكيد يا محمد، هزودلك القسم 10 بكود جاهز بسيط لتخصيص نموذج التعليقات مع شرح مبسط: