מטמון בוורדפרס — איך זה עובד באמת, ולמה ההגדרה חשובה מהתוסף
חמש שכבות המטמון של אתר וורדפרס, מה כל אחת פותרת, ואיפה הגדרה שגויה גורמת יותר נזק מתועלת — כולל WooCommerce.
אביר
אחראי מידע ותוכן
תוכן עניינים13 פרקים
מטמון הוא השיפור היחיד שיכול להוריד זמן טעינה מארבע שניות לחצי שנייה בלי לגעת בשורת קוד. הוא גם הדבר שהכי הרבה אתרים מגדירים לא נכון — ואז מציגים לקוח אחד את העגלה של לקוח אחר.
המאמר הזה מסביר את חמש השכבות: מה כל אחת עושה, מתי היא עוזרת, ואיפה היא מסוכנת.
הבעיה שמטמון פותר
כשמבקר מגיע לדף וורדפרס ללא מטמון, קורה הדבר הבא:
- השרת מקבל את הבקשה
- PHP טוען את ליבת וורדפרס — מאות קבצים
- כל תוסף פעיל נטען ומאותחל
- התבנית נטענת
- מתבצעות עשרות עד מאות שאילתות למסד הנתונים
- ה-HTML נבנה
- התוצאה נשלחת
וזה קורה מחדש בכל בקשה, גם כשהתוצאה זהה לחלוטין. מאה מבקרים בדף "אודות" מייצרים מאה פעמים את אותה עבודה.
מטמון שומר את התוצאה ומגיש אותה שוב.
שכבה 1 — מטמון דפים (Page Cache)
מה זה עושה
שומר את ה-HTML המוגמר. הבקשה הבאה מקבלת קובץ מוכן — בלי PHP, בלי מסד נתונים.
ההשפעה: TTFB יורד מ-600–900ms ל-30–80ms. זו הקפיצה הגדולה ביותר שקיימת.
איפה הוא יכול לשבת
ברמת השרת (Nginx FastCGI Cache, LiteSpeed Cache, Varnish) — הבקשה נעצרת לפני שהיא מגיעה ל-PHP בכלל. המהיר ביותר.
ברמת התוסף (WP Rocket, W3 Total Cache, WP Super Cache) — PHP כן מופעל, אבל מפסיק מוקדם ומגיש קובץ שמור. איטי יותר מהשרת, אך זמין בכל סביבה.
ב-CDN — הדף השמור יושב בשרת קצה קרוב למבקר. הכי מהיר גיאוגרפית, והכי מסובך לפינוי.
מתי אסור
דף שהתוכן שלו שונה בין משתמשים לא יכול להיות במטמון דפים משותף:
/cart,/checkout,/my-account- דפים אחרי התחברות
- תוצאות חיפוש
- כל דף עם מידע אישי
זו הטעות שגורמת לנזק אמיתי. חנות שבה /cart נשמר במטמון תציג לכל מבקר את העגלה של הראשון שביקר.
כלל אצבע: אם הדף מכיל משהו שאתם לא רוצים שזר יראה — אל תשמרו אותו במטמון.
מתי לפנות את המטמון
- פרסום או עריכת תוכן — אוטומטי ברוב התוספים
- שינוי מחיר או מלאי
- שינוי בתבנית או ב-CSS
- הפעלה או הסרה של תוסף
מלכודת: פינוי מלא בכל שינוי קטן מרוקן את המטמון של האתר כולו. תוסף טוב מפנה רק את הדפים המושפעים.
שכבה 2 — מטמון אובייקטים (Object Cache)
מה זה עושה
שומר תוצאות שאילתות ופעולות בזיכרון. בניגוד למטמון דפים, הוא עוזר גם לדפים דינמיים.
וורדפרס כולל מטמון אובייקטים מובנה, אבל הוא נמחק בסוף כל בקשה. מטמון אובייקטים מתמיד — Redis או Memcached — שומר בין בקשות.
מתי זה קריטי
- WooCommerce — דפי עגלה ותשלום אינם במטמון דפים, אז מטמון האובייקטים הוא ההגנה היחידה
- אתרים עם משתמשים מחוברים
- אתרים עם הרבה תוספים שמבצעים שאילתות חוזרות
- אתרים עם
wp_optionsגדולה
איך בודקים אם הוא פעיל
התקינו את התוסף Query Monitor והסתכלו בלשונית Object Cache. אם הוא כתוב כלא-מתמיד — אין לכם Redis.
Redis דורש תמיכת שרת. רוב האחסון השיתופי הזול לא מציע אותו; זו אחת הסיבות המעשיות לעבור לאחסון וורדפרס ייעודי או ל-VPS.
שכבה 3 — OPcache
מה זה עושה
PHP הוא שפה מפורשת. בכל בקשה הקוד מהודר מחדש ל-bytecode. OPcache שומר את התוצאה המהודרת בזיכרון.
ההשפעה: 20–30% מזמן ההרצה, בלי שינוי אחד באתר.
זו הגדרת שרת, לא תוסף. אם היא כבויה אצל הספק שלכם — אתם משלמים על הידור מיותר בכל בקשה. שווה לשאול.
הערה למפתחים: OPcache שומר גם קוד ישן אחרי פריסה. בסביבת פיתוח כדאי לכבות, או לפנות אחרי כל שינוי.
שכבה 4 — מטמון דפדפן
מה זה עושה
מנחה את הדפדפן לשמור קבצים סטטיים מקומית. המבקר החוזר לא מוריד שוב את הלוגו, ה-CSS והגופנים.
זה לא מזרז את הביקור הראשון — הוא מזרז כל ביקור אחריו.
הגדרה סבירה
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/webp "access plus 1 year"
ExpiresByType text/css "access plus 1 year"
ExpiresByType application/javascript "access plus 1 year"
ExpiresByType text/html "access plus 0 seconds"
</IfModule>
שימו לב ל-HTML: אפס שניות. HTML במטמון דפדפן ארוך אומר שמבקר יראה תוכן ישן ולא תוכלו לעדכן אותו.
איך מעדכנים קובץ ששמור לשנה? משנים את שמו. style.css?ver=2.4 נחשב קובץ אחר. וורדפרס עושה זאת אוטומטית דרך פרמטר הגרסה — ולכן אין להסיר אותו, למרות שכלי בדיקה ממליצים על כך לפעמים.
שכבה 5 — CDN
מגיש קבצים סטטיים משרת קרוב למבקר. חוסך את זמן ההשהיה הגיאוגרפי.
מה הוא לא עושה: מאיץ את ה-HTML הדינמי, אלא אם הגדרתם Full Page Cache ברמת ה-CDN — שהיא הגדרה עדינה שדורשת חוקי פינוי מדויקים.
לאתר ישראלי עם קהל ישראלי ושרת בישראל, התועלת מתונה. לקהל בינלאומי היא גדולה. הרחבנו במאמר למה מיקום השרת משנה.
הבעיה שמטמון לא פותר
מטמון מסתיר עבודה איטית; הוא לא מייעל אותה. ההבחנה הזו חשובה, כי היא קובעת מתי מטמון יספיק ומתי לא.
דף שנשמר במטמון מוגש מהר בלי קשר לכמה זמן לקח לייצר אותו. אבל:
מישהו משלם על הייצור הראשון. המבקר הראשון אחרי פינוי מטמון מקבל את הגרסה האיטית. באתר עם תוכן שמשתנה הרבה, זה קורה תדיר.
דפים דינמיים לא נהנים. אם 40% מהתנועה שלכם היא לעגלה, לתשלום ולאזור אישי — 40% מהמבקרים לא רואים שום שיפור.
בעומס אמיתי זה מתגלה. גל תנועה מיד אחרי פינוי מטמון מייצר עשרות בקשות שכולן צריכות ייצור מלא בו זמנית. זו התופעה שמכונה Cache Stampede, והיא מפילה אתרים.
המסקנה: מטמון הוא שכבה קריטית, אבל אתר שמייצר דף ב-2.5 שניות ומסתיר את זה מאחורי מטמון הוא אתר עם בעיה שנדחתה. עדיין שווה לתקן את הבסיס.
איך מטמון נשבר בלי שתשימו לב
פרמטרים ב-URL. קישורי UTM מקמפיינים יוצרים כתובת ייחודית לכל מבקר. אם המטמון לא מוגדר להתעלם מהם, כל לחיצה מפרסום מייצרת ערך חדש — והמטמון מתמלא בעותקים של אותו דף.
עוגייה שנוצרת בכל ביקור. רוב תוספי המטמון עוקפים את המטמון כשקיימת עוגייה מסוימת. תוסף שמגדיר עוגייה לכל מבקר מבטל את המטמון לחלוטין, בשקט.
גרסת נייד נפרדת. אם התבנית מגישה HTML שונה לנייד ולשולחני, המטמון חייב לשמור שתי גרסאות — אחרת מחצית מהמבקרים יראו את הפריסה הלא נכונה.
סדר ההפעלה המומלץ
- OPcache — ברמת השרת, אם עוד לא פעיל
- מטמון דפים — הרווח הגדול
- מטמון דפדפן — הגדרה חד-פעמית
- מטמון אובייקטים (Redis) — אם יש WooCommerce או משתמשים מחוברים
- CDN — אם הקהל מפוזר גיאוגרפית
טעויות נפוצות
שני תוספי מטמון במקביל. הם יתנגשו ויגרמו לדפים שבורים או לתוכן ישן שנתקע. אחד בלבד.
מטמון אגרסיבי על חנות. בדקו תמיד בגלישה פרטית: הוסיפו מוצר לעגלה, פתחו חלון אנונימי, ובדקו שהעגלה ריקה.
לשכוח לפנות אחרי שינוי. אם ערכתם CSS והשינוי לא מופיע — זה כמעט תמיד מטמון, באחת מחמש השכבות.
מטמון בסביבת פיתוח. מבלבל ומאט עבודה. כבו אותו שם.
איך בודקים שזה עובד
curl -I https://example.co.il | grep -i "cache\|age\|x-"
חפשו כותרות כמו x-cache: HIT. בקשה ראשונה תהיה MISS, השנייה HIT.
שאלות נפוצות
האם מטמון פוגע ב-SEO? להפך. גוגל מודדת מהירות ממבקרים אמיתיים, ומטמון הוא הדרך המהירה ביותר לשפר אותה. הסיכון היחיד הוא הגשת תוכן ישן לזמן ארוך — ולכן חוקי הפינוי חשובים.
כמה זמן לשמור דף במטמון? לאתר תדמית — ימים. לבלוג — שעות. לחנות עם מלאי משתנה — דקות, או פינוי מבוסס אירועים בלבד. ככל שהתוכן משתנה יותר, כך המטמון קצר יותר.
מה ההבדל בין מטמון לתוסף אופטימיזציה? מטמון שומר תוצאה מוכנה. תוסף אופטימיזציה מכווץ ומאחד קבצים, דוחה סקריפטים ומטפל בתמונות. הם משלימים, ולעיתים ארוזים יחד — מה שמסביר את הבלבול.
האם צריך מטמון אם האתר על VPS? כן, ובמידה רבה יותר. VPS נותן משאבים מוקצים, לא עבודה פחותה. בלי מטמון תבזבזו אותם על ייצור חוזר של אותו דף.
שלוש נקודות לזכור
מטמון דפים הוא הרווח הגדול. הוא הופך 60% מזמן הטעינה לכמעט אפס, והוא הדבר הראשון להפעיל בכל אתר.
מה שאישי לא נשמר. עגלה, תשלום, אזור אישי, תוצאות חיפוש. אתר שמפר את הכלל הזה מציג ללקוח אחד את הנתונים של אחר, וזו תקלה חמורה בהרבה מאתר איטי.
מטמון מסתיר, לא מייעל. אתר שמייצר דף בשתי שניות ומגיש אותו ממטמון הוא אתר עם חוב דחוי. הוא ייפרע ברגע שהמטמון יפונה בשעת עומס.
נכתב על ידי אביר, אחראי מידע ותוכן ב-CloudX. בחבילות אחסון הוורדפרס שלנו מטמון הדפים ו-OPcache מוגדרים ברמת השרת מראש, כולל החרגה אוטומטית של דפי עגלה ותשלום.