هل يمكن النشر من ووردبريس لفئة معينة فقط؟

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

Hey @vanclute,

يمكنك استخدام فلتر wpdc_publish_after_save لتحقيق ذلك. في ملف functions.php الخاص بـ Wordpress، أضف ما يلي:

function publish_to_discourse( $force_publish, $post_id, $post ) {
  return has_term( TERM, TAXONOMY, $post );
}
add_filter( 'wpdc_publish_after_save', 'publish_to_discourse', 10, 3 );

ستحتاج إلى استبدال TERM و TAXONOMY بما تستخدمه لـ “الفئات” في Wordpress. لاحظ أن TERM يمكن أن يكون مصفوفة، على سبيل المثال

array( 'category name 1', 'category name 2')

مثال

function publish_to_discourse( $force_publish, $post_id, $post ) {
  return has_term( array( 'news', 'blog' ), 'category', $post );
}
add_filter( 'wpdc_publish_after_save', 'publish_to_discourse', 10, 3 );
3 إعجابات

شكرًا. أفضل حقًا عدم الاضطرار إلى تعديل أي ملفات WP ولكنني أقدر التلميحات.

لا داعي لتعديل أي شيء :wink: افعلها كما ينبغي أن تفعل…

قم بتثبيت Code Snippet أو ما شابه وقم بذلك من خلاله (بالتأكيد، يمكنك القيام بذلك كمكون إضافي منفصل إذا كنت تفضل ذلك؛ لا فرق). نفس الشيء تمامًا مثل تثبيت مكون سمة أو مكون إضافي لـ Discourse.

واستخدم ملف functions.php الخاص بـ السمة الفرعية فقط عندما يكون التعديل يعتمد على السمة. هذا ليس هو الحال هذه المرة.

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