كيفية تعطيل WP-Cron في ووردبريس (واستخدام Real Cron بدلاً من ذلك)

كيفية تعطيل WP-Cron في ووردبريس

هل تريد تعطيل WP-Cron واستخدام Real Cron بدلاً من ذلك؟

يمكن أن يساعدك استبدال WP-Cron مع Real Cron الخاصة بك في تشغيل المهام المجدولة لموقعك بشكل أكثر موثوقية وكذلك تقليل الحمل على خادمك للمواقع ذات الزيارات المرتفعة.

في هذا المقال، سنشرح ما هو WP-Cron ولماذا قد ترغب في تعطيله إذا لم تكن على دراية بهذا التكتيك. بعد ذلك، سنوضح لك كيفية تعطيل WP-Cron واستبداله مع Real Cron خطوة بخطوة.

ما هو WP-Cron ؟

WP-Cron هو ملف/ميزة مسؤولة عن التحكم في المهام الحساسة للوقت لموقع ووردبريس الخاص بك.

على سبيل المثال، لنفترض أنك حددت موعدًا لنشر مشاركة يوم الأربعاء المقبل في الساعة 9:30 صباحًا. يتأكد WP-Cron من حدوث ذلك في الوقت المحدد (أو على الأقل بالقرب من “في الوقت المحدد” قدر الإمكان – قريب عن ذلك في ثانية).

بالإضافة إلى التأكد من عمل ميزات ووردبريس الأساسية، تعتمد العديد من مكونات ووردبريس الإضافية أيضًا على WP-Cron للتعامل مع الأجزاء الحساسة للجدولة في الإضافة.

إذا كنت ترغب في عرض جميع المهام المجدولة على موقعك، فيمكنك استخدام إضافة مجانية مثل WP-Crontrol. إذا انتقلت إلى أدوات ← Cron Events ، يمكنك رؤية جميع المهام التلقائية التي جدولها ووردبريس للتشغيل ومدى تكرار تنفيذها:

WordPress Cron Events

كما يوحي الاسم، يأتي wp-cron من نظام جدولة cron الأكثر عمومية والذي تستخدمه أنظمة تشغيل Unix. ومع ذلك، يختلف wp-cron عن أنظمة الجدولة تلك، كما أن wp-cron ليس وظيفة cron حقيقية.

الاختلاف الكبير هو أن wp-cron لا يتم تنفيذه إلا عندما تقوم أنت أو شخص آخر بزيارة موقع الويب الخاص بك (إما في الواجهة الأمامية أو في لوحة التحكم الخاصة بك). عندما يزور شخص ما موقعك، سيقوم WordPress بتشغيل ملف wp-cron.php والتحقق من المهام المجدولة. إذا كانت هناك مهمة، فسوف تقوم بتنفيذها.

ومع ذلك، يمكن أن يمثل هذا مشكلة للمواقع ذات عدد الزيارات المنخفض لأن wp-cron يعمل فقط عندما تكون هناك زيارة.

لماذا يجب عليك تعطيل wp-cron؟

هناك سببان وراء تعطيل wp-cron واستبداله بوظيفة cron المخصصة لك:

  1. الموثوقية – كما هو موضح في المثال أعلاه، لا يمكن الاعتماد على wp-cron دائمًا في المواقع منخفضة الزيارات لأنها تحتاج إلى زيارة موقع الويب لتنفيذه. مع وظيفة cron الحقيقية أو ما يسمى ب Real Cron، يمكنك تعيين مهامك للتنفيذ كل X دقيقة بغض النظر عن أي شيء – حتى لو لم تكن هناك زيارات.
  2. الأداء – في المواقع ذات عدد الزيارات المرتفع، لا يحب بعض الأشخاص wp-cron لأن ووردبريس سيشغل ملف wp-cron.php في كل زيارة تقريبًا. يحاول WordPress الحد من ذلك من خلال عدم تشغيله أكثر من مرة واحدة كل 60 ثانية، ولكن لا يزال من الممكن أن يكون هناك تباطؤ في أداء ووردبريس لأسباب فنية مختلفة، مثل الزيارات المتزامنة التي تؤدي إلى تشغيل wp-cron.

باختصار، يمكن أن يكون تعلم كيفية تعطيل WP-Cron مفيدًا لكل من المواقع ذات الزيارات المنخفضة والمواقع عالية الزيارات، وإن كان ذلك لأسباب مختلفة.

كيفية تعطيل WP-Cron

لتعطيل WP-Cron ، أضف ما يلي إلى ملف wp-config.php ، قبل السطر الذي يقول “That’s all, stop editing! Happy publishing.” ملاحظة: يؤدي هذا إلى تعطيل تشغيله عند تحميل الصفحة، وليس عند الاتصال به مباشرة عبر wp-cron.php.

define('DISABLE_WP_CRON', true);
تعطيل WP-Cron في ووردبريس

كيفية جدولة System Cron

ستحتاج بعد ذلك إلى جدولة wp-cron.php من خادمك.

عند تعطيل wp-cron ، يلزمك إعداد وظيفة cron الخاصة بك حتى تستمر المهام التلقائية لموقعك في العمل.

إذا كنت تستخدم استضافة مع cPanel ، فيمكنك أيضًا إنشاء نظام cron من لوحة التحكم الخاصة بهم. ملاحظة: تأكد من تعطيل WP-Cron الافتراضي أعلاه أولاً.

الخطوة 1: سجّل الدخول إلى cPanel. في قسم Advanced، انقر فوق Cron Jobs.

جدولة System Cron في cPanel

الخطوة 2: ضمن قسم Add New Cron Job ، يمكنك الاختيار من بين عدد من الجداول المحددة مسبقًا، مثل مرتين في الساعة أو مرة واحدة في الأسبوع. من المرجح أن يكون لدى مقدم خدمة الاستضافة حدًا لعدد المرات التي يسمح فيها بتشغيل وظائف cron. مرتين في الساعة هو إعداد شائع للإستضافات المشتركة.

في حقل Command أضف الأمر التالي. استبدل https://domain.com باسم المجال الخاص بك. قد يختلف هذا الأمر قليلاً بناءً على كيفية تكوين الاستضافة الخاصة بك. ثم انقر فوق “Add New Cron Job”.

wget -q -O - https://domain.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1
كيفية جدولة System Cron

كيفية جدولة System Cron على استضافة Cloudways

إذا كنت تستخدم استضافة كلاود وايز (أنا أستخدمها)، فطريقة إعداد Cron مختلفة قليلاً. قم بتسجيل الدخول إلى النظام الأساسي Cloudways ثم انتقل إلى لوحة إدارة التطبيقات > Cron Job Management > القسم المتقدم.

ثم أضف الأمر التالي وانقر فوق حفظ التغييرات:

*/5 * * * * wget -q -O - 'https://domain.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1
جدولة System Cron على استضافة Cloudways

لا تنسى استبدال https://domain.com باسم المجال الخاص بك.

في الأمر أعلاه، أولاً، قمت بتحديد فترة خمس دقائق لوظيفة cron. يمكنك استخدام هذا الموقع للتحقق من تعبير الجدول الزمني.

تهانينا! لقد نجحت في إضافة وظيفة cron حقيقية.

الخلاصة

آمل أن تساعدك هذه المقالة في فهم كيفية عمل WP-Cron في WordPress وكيفية إعداد وظيفة cron حقيقية على خادم مباشر.

إذا لم تكن مرتاحًا لإعداد مهام cron على خادمك أو إذا كان مزود الاستضافة لا يوفر الوصول، فيمكنك أيضًا استخدام حل جهة خارجية مثل EasyCron.

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

أنمار النقيب

حول أنمار النقيب

مدون & مطور، أُشارك كل ما تعلمته حول تحسين مواقع ووردبريس للسرعة، ودروس تحسين محركات البحث (SEO). إقرأ سيرتي الذاتية لتتعلم المزيد عني.

اترك تعليقاً

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