مشاكل في إعداد تعليقات ajax

لقطات الشاشة:






إليك مقتطف من الأخطاء المتكررة في السجلات:

[2022-04-16 00:08:52] comment_formatter.ERROR: format.missing_post_data {"keys":"discourse_permalink,discourse_comments_raw"} 
[2022-04-16 00:09:06] comment_formatter.ERROR: format.missing_post_data {"keys":"discourse_permalink,discourse_comments_raw"} 
[2022-04-16 00:09:08] comment_formatter.ERROR: format.missing_post_data {"keys":"discourse_permalink,discourse_comments_raw"} 
[2022-04-16 00:09:50] comment_formatter.ERROR: format.missing_post_data {"keys":"discourse_permalink,discourse_comments_raw"}

عندما أنشئ منشورًا جديدًا، فإنه يعمل ويتم إنشاء الموضوع. ومع ذلك، عندما يتم إرسال تعليق في Discourse، لا تتم مزامنته مع WordPress.

لم أغير الكثير، يمكنك رؤية الإعدادات أعلاه. أي أفكار حول ما أفعله بشكل خاطئ أو ما أفتقده؟

لقد اتبعت الأدلة هنا:

تعديل:
لدي نفس هذا الخطأ، ولكن في المنتديات، كانت هذه هي النتيجة الوحيدة للبحث عن:
comment_formatter.ERROR: format.missing_post_data

هل هذه مشكلة معروفة؟ أو يمكن حلها؟

إعجاب واحد (1)

أهلاً بك،

  1. إذا أمكن، هل يمكنك ربطي بمنشور على موقع ووردبريس الخاص بك حيث ترى المشكلة؟
  2. هل هناك سبب لاستخدامك تعليقات ajax؟ (لديك خيار “تحميل التعليقات مع Ajax” محدداً).
إعجاب واحد (1)

مرحباً أنجوس،

  1. نعم، بالتأكيد: 60 Linux Networking commands and scripts (هذه هي المشاركة الوحيدة المتزامنة حتى الآن)
  2. لقد تحققت من Ajax فقط كملاذ أخير بعد ساعات من عدم عمل الأشياء بالكامل. لقد قمت الآن بإلغاء تحديد Ajax. أخمن أنه بدون خطافات الويب (webhooks)، استغرق الفاصل الزمني للمزامنة بعض الوقت.

يبدو أن الأمر يعمل الآن، لكن التنسيق غير أنيق بعض الشيء. أخمن أن عليّ معرفة CSS؟

أيضاً، هل هناك طريقة لإظهار روابط “انضم إلى المناقشة” لصفحة المنتدى الرئيسية لـ Discourse الخاصة بنا للمنشورات القديمة في مدونة ووردبريس؟ - بمعنى آخر، إذا لم تكن هناك تعليقات على منشور، أو إذا لم تتم مزامنة المنشور مسبقاً مع Discourse، فسيضيف المكون الإضافي رابطاً عاماً لصفحة المنتدى الرئيسية لـ Discourse الخاصة بي بدلاً من تركها فارغة.

شكراً جزيلاً على المساعدة.

إعجاب واحد (1)

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

لن يظهر رابط “انضم إلى المناقشة” في المواضيع غير المرتبطة. يمكنك إضافة شيء كهذا بنفسك، بشكل منفصل عن المكون الإضافي، عن طريق استخدام فلتر comments_template في ملف functions.php الخاص بالسمة الخاصة بك. لم أختبر هذا الرمز، ولكن شيئًا كهذا سيعمل:

use WPDiscourse\Utilities\Utilities as DiscourseUtilities;

function non_discourse_comments_template( $comment_template ) {
   global $post;
   $post_id = $post->ID;
   $discourse_post_id = get_post_meta( $post_id, 'discourse_post_id', true );

   if ($discourse_post_id) {
     return;
   } else {
     $options = DiscourseUtilities::get_options();
     $discourse_permalink = $options['url'];
     $link_text = "Join the Discussion";
     return '<div class="wpdc-join-discussion"><a class="wpdc-join-discussion-link" href="' . esc_url_raw( $discourse_permalink ) . '" target="_blank" rel="noreferrer noopener">' . esc_html( $link_text ) . '</a></div>';
   }
}
add_filter( "comments_template", "non_discourse_comments_template" );
إعجابَين (2)

تم تقسيم 4 مشاركات إلى موضوع جديد: أخطاء تنسيق التعليقات في السجلات

شكرًا مرة أخرى على المساعدة والتوجيه الإضافيين!

لقد كنت أقرأ وأبحث عن CSS للصق لتحسين التخطيط ولو قليلاً.

ومع ذلك، نظرًا لأنني لست على دراية بـ CSS/التصميم (بخلاف لصق CSS موجود)، أود إجراء تعديلات أساسية جدًا على تصميم التعليقات المستوردة. وتحديدًا، استخدام صور رمزية أصغر بجوار أسماء مستخدمي المناقشة في التعليقات وإضافة خط أفقي بين المشاركات:
image

هل هذا شيء بسيط بما يكفي لأتمكن من لصق بعض التعليمات البرمجية في /admin/customize/themes/1/common/scss/edit؟

تعديل:
بالنسبة لأي شخص آخر، تمكنت من حل مشكلة تغيير حجم gravatar باستخدام التعليمات البرمجية هنا:

إعجابَين (2)

تمكنت من تنسيق التعليقات. كان التنسيق الخاص بي أساسيًا جدًا لوول… ولكنه تحسين.
الشيء الوحيد المتبقي هو إزالة قائمة المشاركين في أسفل قسم التعليقات المستوردة من WP-Discourse.
لا يمكنني استخدام هذا الرمز لأنه يرمي خطأ بسبب استخدام “self”. هل هناك حل بديل؟

ob_start();
?>
<div id="comments" class="comments-area discourse-comments-area">
<div class="comments-title-wrap">
<h2 class="comments-title discourse-comments-title"><?php echo esc_html( self::get_text_options( 'notable-replies-text' ) ); ?></h2>
</div>
<ol class="comment-list">{comments}</ol>
<div class="respond comment-respond">
<h3 id="reply-title" class="comment-reply-title">
<?php echo esc_html( self::get_text_options( 'continue-discussion-text' ) . ' ' ); ?>
<?php self::discourse_topic_link( self::new_tab() ); ?>
</h3>
<p class="more-replies">{more_replies}</p>
</div>
</div>
<?php
$output = ob_get_clean();

لقد قمت بإزالة هذه الأسطر:

<div class="comment-reply-title">
<h4 class="discourse-participants"><?php echo esc_html( self::get_text_options( 'participants-text' ) ); ?></h4>
<p>{participants}</p>
</div>

ومع ذلك، فإن خطأ بناء جملة “self” لست متأكدًا من كيفية حله. خاصة هذه الأسطر:

<?php echo esc_html( self::get_text_options( 'continue-discussion-text' ) . ' ' ); ?>
<?php self::discourse_topic_link( self::new_tab() ); ?>

لم أقم بإزالة قسم المشاركين. إذا كنت تفكر في القيام بذلك، فامنحه فرصة، كما هو الحال مع ميزات Discourse الأخرى؛ لقد فكر المطورون فيه. يعرض جميع المشاركين حتى بعد استيراد 5 مشاركات فقط من أصل 15. (إعداد قابل للتغيير) بالإضافة إلى ذلك، تستبعد الردود المستوردة المشاركات من أعضاء المنتدى من المستوى 0. وهو ما أجده مفيدًا.

باختصار، لاحظت بمرور الوقت أنه ليست قائمة المشاركين والتعليقات المستوردة متطابقة دائمًا. في كثير من الحالات، يساعد ذلك في تزويد قارئ المدونة برؤية أكثر دقة لمستوى نشاط التعليقات دون الحاجة إلى استيراد كل مشاركة أو المخاطرة باستيراد مشاركات من أعضاء التسجيل الأوائل. (وهو ما أعتقد أنه يمكن تغييره في الإعدادات أيضًا)

إعجابَين (2)

أعتقد أن comment_formatter.ERROR: format.missing_post_data يبالغ في حماسه في الإبلاغ. سأقوم بتعديل ذلك للإصدار القادم. شكراً لمتابعتك الأمر. لا تقلق بشأنه في الوقت الحالي، إلا إذا كنت تواجه مشكلة واضحة.

لا يوجد دليل رسمي لتنسيق التعليقات. هناك عدد قليل من المواضيع الأخرى، على سبيل المثال هذا الموضوع. تأتي سمات WordPress بأشكال وأحجام كثيرة جدًا، لذلك كان يُعتقد في البداية ترك هذا الأمر لمسؤول الموقع. ومع ذلك، أعتقد أن بعض الأدلة الإضافية قد تكون مفيدة.

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

إعجابَين (2)

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.