דלגו לתוכן

משימות Cron

משימות Cron מאפשרות להפעיל פקודות או בקשות URL באופן אוטומטי לפי לוח זמנים קבוע. לדוגמה, ניתן להגדיר הפעלה תקופתית של WordPress WP-Cron, ניקוי קבצים זמניים או שליחת דוחות.

Cron הוא שירות מערכת שמריץ פקודות בזמנים מוגדרים מראש. בממשק הניהול של Devim ניתן לנהל ולהגדיר משימות Cron בקלות.

כל משימת Cron מורכבת משני רכיבים:

  • פקודה או כתובת URL — מה להריץ (לדוגמה: פקודת wp-cli או בקשת HTTP)
  • מרווח זמן — מתי להריץ (לוח זמנים Cron)
  1. באזור האישי, כנסו לשירות האחסון שלכם, לחצו על ניהול אצל האתר הרצוי, ואז על מתקדם בתפריט הצד.

  2. גללו מטה עד למשימות Cron. כאן תוכלו לראות את המשימות המוגדרות ולנהל אותן.

    משימות Cron

  3. לחצו על הוסף משימה. ייפתח טופס הוספה מתחת לרשימה:

    הוספת משימת Cron חדשה

  4. בחרו את התדירות הרצויה (כל דקה, כל 15 דקות, כל שעה, וכו’) או בחרו מותאם אישית והזינו ביטוי Cron ידני.

  5. הזינו את הפקודה להרצה.

  6. לחצו על הוסף משימה כדי לשמור.

ניתן לבחור בין מרווחי זמן מוגדרים מראש או להגדיר לוח זמנים מותאם אישית באמצעות ביטוי Cron:

  • כל דקה
  • כל 15 דקות
  • כל 30 דקות
  • כל שעה
  • פעם ביום
  • פעם בשבוע
  • פעם בחודש
  • מותאם אישית — הזינו ביטוי Cron ידני (ראו הסבר על תחביר Cron למטה)

ברירת המחדל של WordPress היא להפעיל משימות מתוזמנות (Cron) כל פעם שמבקר נכנס לאתר. גישה זו יכולה לגרום לבעיות ביצועים ולאי-ביצוע משימות בזמן אם אין תנועה לאתר.

הפתרון המומלץ הוא להגדיר משימת Cron במערכת של Devim שתפעיל את ה-Cron של WordPress באופן אוטומטי, ולבטל את ה-Cron המובנה של WordPress.

  1. הוסיפו משימת Cron חדשה עם הנתונים הבאים:

    • פקודה: wp-cli cron event run --due-now --path=public_html
    • מרווח זמן: כל 15 דקות (מותאם אישית: */15 * * * *)
  2. ערכו את קובץ wp-config.php שלכם והוסיפו את השורה הבאה מעל להגדרת ABSPATH:

    define('DISABLE_WP_CRON', true);

ביטוי Cron מורכב מ-5 שדות שמגדירים את התזמון:

* * * * *
│ │ │ │ │
│ │ │ │ └── יום בשבוע (0-7, כאשר 0 ו-7 הם ראשון)
│ │ │ └──── חודש (1-12)
│ │ └────── יום בחודש (1-31)
│ └──────── שעה (0-23)
└────────── דקה (0-59)
ביטוי תיאור
*/5 * * * * כל 5 דקות
0 * * * * כל שעה בדיוק
*/15 * * * * כל 15 דקות
0 0 * * * פעם ביום (חצות)
0 3 * * * כל לילה בשעה 3:00
0 0 * * 1 פעם בשבוע (יום שני בחצות)
0 0 1 * * פעם בחודש (ראשון לחודש בחצות)

לאחר יצירת משימת Cron, ניתן:

  • לערוך את הפקודה או מרווח הזמן
  • למחוק משימה שאינה נחוצה עוד