מאגר ידע
משימות מתוזמנות ו-cron jobs
כיצד להוסיף לוח זמנים, מדוע מנגנון ה-cron של WordPress אינו אמין, וכיצד לראות אם הוא פעל.
אתרים ← האתר שלך ← משימות מתוזמנות.
הוספת משימה
פקודה ותזמון. הפקודה פועלת באותה סביבה כמו האתר, עם אותה גרסת PHP, כך ש־wp cron event run --due-now או php artisan schedule:run פועלים בדיוק כפי שהם פועלים במעטפת (shell) שלך.
ה־cron של WordPress
WordPress מתזמנת את המשימות שלה לפי צפיות בעמוד, כך שאתר שקט מבצע את העבודה המתוזמנת שלו באיחור או בכלל לא, ואתר עמוס מריץ אותה אלפי פעמים. אף אחד מהמצבים האלה אינו רצוי.
הפתרון הוא שתי שורות. הגדר את DISABLE_WP_CRON כ־true קובץ wp-config.php, ולאחר מכן הוסף לכאן תזמון אמיתי המריץ את wp cron event run --due-now מדי חמש דקות. הפוסטים המתוזמנים שלך ותוסף הגיבויים שלך ירוצו אז לפי השעון ולא בהתאם לתעבורה.
בדיקה האם המשימה רצה
כל משימה שומרת את ההרצות האחרונות שלה יחד עם קוד היציאה (exit code) והפלט. משימה שמעולם לא הפיקה פלט מעולם לא רצה, וזו התשובה לשאלה הנפוצה ביותר לגבי מסך זה.
מה המערכת אינה יכולה לעשות
משימה מתוזמנות מוגבלת בזמן — היא נעצרת אם היא פועלת זמן רב בהרבה מהתזמון שלה, כך שמשימה שנתקעה אינה יכולה לצבור עותקים של עצמה. אם יש לך עבודה שלוקחת שעות בצורה לגיטימית, פצל אותה או פנה לתמיכה ונעזור לך לבדוק זאת.