כמה תוספי וורדפרס הם יותר מידי?

דייב אברג'ל,

עם יותר מ 40,000 תוספים זמינים בחינם לבחירה מתוך ספריית התוספים של WordPress בלבד, ההרגשה שמקבלים היא ממש  כמו ילד שנכנס לחנות ממתקים ענקית.

או שאולי אתם נמנעים לחלוטין מתוספים ושיטת העבודה שלכם היא לשמור על האתר עם המינימום הנדרש של תוספים?

השאלה הראשונה היא: האם יש דבר כזה יותר מדי תוספים? ואם כן, כמה זה יותר מדי? איזה סוג של נזק, אם בכלל, יכול להיגרם על ידי התקנה של מספר גדול של תוספים באתר וורדפרס שלכם?
כיצד עליכם לבחור את התוספים האידאליים עבור האתר?

בפוסט זה אנחנו עומדים לענות על שאלות חשובות אלו.

 

שימוש בתוספי וורדפרס הוא עד כדי כך גרוע?

ראשית – מערכת WordPress עובדת בצורה נהדרת בפני עצמה, אבל לעתים קיים צורך בתוספים מסוימים במידה ואתם רוצים להוסיף תכונות נוספות ופונקציונלית לאתר.

ללא תוספים – WordPress תהיה פלטפורמה מוגבלת במונחים של אפשרויות ופונקציונליות. לכן, בחירת התוספים הנכונים יכולה לשחק תפקיד חשוב בנוגע לתפקוד האתר שלכם.

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

 

תוספים וורדפרס

 

חיפוש והתקנת תוספים הופך מיום ליום לכל כך פשוט ונוח, יחד עם זאת, כמו כל דבר טוב בחיים – גם תוספים מגיעים עם בעיות משלהם.
כל מי שעובד עם  WordPress למשך זמן בוודאות נתקל בבעיות בתוספים אשר גורמות תקלות לאתר בדרך כלשהי, דפים הנטענים לאט, פריטים בתפריט שנעלמים תמונות שלא נטענות וכו'.

אבל עד איזו רמה הבעיות האלה מתרחשות בעקבות התוספים שהתקנתם? והאם הבעיות האלה קשורות למספר הגדול של התוספים שהתקנתם על גבי הWordPress, או שהגורם הוא אחר?

 

כיצד עובדים תוספים?

ישנם תוספי וורדפרס המשפיעים על החלק שנקרא "דשבורד" (אזור הניהול) של האתר, וישנם תוספי וורדפרס המשפיעים על "החלק הקדמי" של האתר (מה שהגולשים רואים).
תוספי "דשבורד" פירוש הדבר – שהם יכולים לספק פונקציונליות שמנהל האתר יכול לנצל (כגון ניתוח סטטיסטיקות, גיבויים או אופטימיזציית מנועי חיפוש) או שהם יכולים להוסיף פונקציות ל"חלק הקדמי" של האתר לטובתם של המבקרים (כגון תצוגת פריטים נוספים, יישומונים או התאמה אישית של גופנים).

התוספים משפיעים על ביצועי האתר בשתי דרכים נפרדות:
  • בקשות HTTP מרובות
  • שאילתות מסד נתונים מרובות

 

מה הן בקשות HTTP?

חלק מתוספי הוורדפרס, (בעיקר תוספי החלק הקדמי) זקוקים לקבציי עיצוב (style) או סקריפטים מותאמים אישית כדי שיפעלו כראוי ולכן תוספים אלו יוסיפו קבצי JavaScript או CSS נוספים לאתר הWordPress שלכם.
קבצים אלו הם תוספות בסיסיות לשינוי המראה החזותי של האתר שלכם וזה בעצם תפקידם העיקרי, אבל כל קובץ שאתם מוסיפים לאתר שלכם – כולל תמונות, יוצר בקשת HTTP חדשה.
זה אומר שבקשות HTTP נוספות ישלחו עבור כל תוסף אשר התקנתם, שבסופו של דבר ישפיע על ביצועי וזמן טעינת האתר וורדפרס שלכם.

HTTP פועל כפרוטוקול של בקשה-תגובה בין הגולש לשרת, כאשר מבקר מגיע לאתר שלכם וניגש לעמוד מסוים, המחשב של הגולש שולח בקשת HTTP לשרת עבור כל קבצים הקשורים לעמוד הספציפי.
לאחר מכן הדפדפן של הגולש מאחזר את הקבצים שהתקבלו מהשרת בו ומקבל את הקובץ בחזרה אל הגולש בצורה של עמוד אינטרנט.

כאשר המידע המבוקש מוחזר באמצעות השרת אל הגולש הוא מוחזר בצורת HTML מעוצב כדי שהמבקרים יוכלו לקרוא ולהבין.
הבעיה עם תהליך כזה היא שפעולת אחזור הבקשה לוקחת זמן ובכך יכולה להאט את המהירות האתר.

לפני כשנתיים שוחרר פרוטוקול HTTP/2, פרוטוקול זה הוא השדרוג המשמעותי הראשון של פרוטוקול התקשורת HTTP.
שימוש ב- HTTP/2 צפוי להביא לשיפור מהירויות האתר שלכם ללא כל שינוי קוד קיים מהצד שלכם (ההגדרה מבוצעת מצד השרת).

למאמר המלא בנושא פרוטוקול HTTP/2 – כל מה שרציתם לדעת.

 

בקשות נוספות ממסד הנתונים

תוספים מסוימים עשויים להגדיל את מספר השאילתות מסד הנתונים שנשלחות,
באתרי WordPress – כל המידע של אתר האינטרנט שלכם מאוחסן במסד הנתונים (שם האתר \ תיאור האתר \ משתמשים \ הגדרות תבנית עיצוב ועוד).

במידה ואתם משתמשים בתוסף וורדפרס שמאחסן מידע על גבי מסד הנתונים – למשל תוסף מעקב אחר עמודים / פוסטים, שאילתות נוספות יישלחו למסד הנתונים על מנת לאחזר ולאחסן מידע זה.

שאילתות אלו יגדילו את העומס על שרת מסד הנתונים שלכם ובסופו של דבר ישפיעו על הביצועים של האתר.

אף על פי שרוב התוספים שפותחו בצורה מיטבית יהיו בעלי השפעה מועטה על עומס שרת מסד הנתונים שלכם – חשוב להחליט עד כמה חשובים כל התוספים לאתר שלכם במידה ומדובר בתוספים שמעבירים מידע אל מסד הנתונים. במיוחד אם האתר שלכם מאוחסן בשרת בעל משאבים מועטים.

השקעה בשירות אחסון איכותי – יכולה למנוע את רוב הבעיות שעלולות להתעורר.

 

האם יותר מידי תוספים יכולים לפגוע באתר שלנו?

שאלת מיליון הדולר: האם יותר מידי תוספים באתר שלכם באמת גורם לחוסר יציבות ואיטיות באתר?
ניתן למצוא עשרות מאמרים בנושא, חלקם יסביר כי שימוש מוגזם בתוספים הוא מסוכן וגורם לאיטיות \ חוסר יציבות, וחלקם ישכנע אתכם באותה המידה שזה לא המקרה.

ואכן אין תשובה חד משמעית.

 

כמה תוספים זה יותר מידי?

 

אתרים עם כמות גדולה של תוספים – אילו בעיות יכולות לצוץ?

נושא זה תלוי כמובן אילו תוספים התקנתם, כמה מהתוספים פעילים, איך הם מקודדים (איכות הקוד שלהם), אם הם עובדים על החלק הקדמי או הדשבורד של האתר, האם הם מתבססים על שירותים צד ג' שלא קשורים לאתר שלי, ומה המטרה שלהם?

הנה כמה בעיות שתוכלו לחוות בעקבות בחירת תוספים לא נכונה:

 

בעיה #1 קריסת אתר

גם מפתחים מהשורה הראשונה לא יכולים למנוע לחלוטין בעיות הקשורות לתוספים.

קחו למשל את WP Super Cache ו- W3 Total Cache, שניים מבין תוספי המטמון הנפוצים ביותר עבור וורדפרס, התגלו כבעלי פרצות אבטחה – ביצוע קוד מרחוק (RCE).

כמו כן, לא פעם שמענו על בעיות של בעלי אתרים רבים שהשתמשו בתוספי וורדפרס חינמיים (מתוך ספריית התוספים הרשמית של וורדפרס) עם מעל ל20 מיליון הורדות ולפתע התגלו כבעלי פרצות אבטחה.

 

העניין הוא שזהו חלק מהאופי של קהילת הוורדפרס ורצונה להישאר פרויקט קוד פתוח.
מאחר ומדובר על מערכת קוד פתוח שכל אחד יכול לערוך אותה, להוסיף לה ולשתף אותה (במצב המקורי או ערוך), סביר להניח שתתקלו במקרים בהם רכיב כלשהו במערכת יהיה כתוב בצורה לא טובה, ויגרום לתקלות (ברוב המקרים תוסף אבל לעתים אפילו בקוד המקור של המערכת). לצערנו זה אחד החסרונות במערכת קוד פתוח.

בגלל מקרים כאלו ובגלל הכמות האינסופית לכאורה של תוספים חינמיים, שלא לדבר על כל האפשרויות המסחריות הזמינות, אנשים נוטים להיות מודאגים לגבי הביצועים, האבטחה והאמינות של האתר שלהם כשמדובר בשימוש בתוספים.

 

בעיה #2 ביצועים ומהירות אתר

כאשר מדובר בביצועים, הדבר החשוב ביותר הוא מהירות טעינת האתר. באופן טבעי, ככל שמותקנים לכם יותר תוספים באתר – כך תהיה השפעה ישירה על מהירות טעינת האתר.

תזכרו שעבור כל תוסף שנמצא בשימוש נשלחת בקשת HTTP לשרת עבור כל גולש המבקר באתר, דבר זה גורם להוספת קוד לדפדפן בכל פעם שאחד העמודים באתר נטען ויכול להשפיע על מהירות טעינת האתר.

במידה ומדובר בתוסף המתבסס על ספריות וקבצים הנטענים משרתים חיצוניים (לצורך הדוגמה תוסף שמאפשר להוסיף אייקונים לתפריט, ומתבסס על ספריית האייקונים של Font Awesome) – קחו בחשבון שמהירות טעינת האתר שלכם תלויה באופן ישיר בשרת ממנו נטענים הסמלילים (בדר"כ יהיה cdn.fontawesome.com), כך שבמידה ויש עומס על השרת שלהם בעקבות שימוש יתר – זה ישפיע על מהירות טעינת האתר מבלי לעדכן שום דבר באתר שלכם.

חשש נוסף הוא תאימות של מספר תוספים המותקנים על גבי האתר שלכם, התנגשות תוספים זה לא מקרה נדיר והתופעה יכולה לגרום לבעיות, החל מהאטת מהירות האתר ועד לקריסת האתר כולו.

לדוגמה, שימוש במספר תוספי מטמון במקביל תגרום ליצירה של זיכרון מטמון בצורה כפולה ומשולשת, כל אחד מתוספי המטמון יבצע שמירה של הזיכרון כאשר הוא מתבסס על מידע שקיבל לאחר צמצום ומזעור של Html \ CSS \ JavaScript, וינסה לבצע את הפעולה שוב – דבר זה יגרום לאיטיות ופגיעה בתצוגת האתר.

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

 

בעיה #3 פרצות אבטחה

אבטחת האתר שלכם חייבת להיות בעלת חשיבות גבוהה בעבורכם, לא תרצו לראות שכל העבודה הקשה שהשקעתם נהרסה על ידי האקר.

בכל פעם שדבר כזה קורה, המוניטין שהרווחתם ועבדתם קשה בשבילו יכול ללכת לאיבוד בין לילה, עסקים יכולים להיות מושפעים מכך קשות, שלא לדבר על המאמץ והזמן שדורש להתאוששות מהתקפה כזו (לאחר שמנועי החיפוש זיהו את האתר שלכם כפוגעני).

מידי פעם פוגשים תוספי "פרימיום" שלקוחות מוצאים ברחבי הרשת (בדר"כ באתרי הורדות) ומתקינים על גבי האתר שלהם, חשוב מאוד להימנע מכך, להוריד את התוספים מהאתר המקורי של יצרן התוסף ולשמור על עדכונים שוטפים.

 

בעיה #4 בעיות אמינות

בעיה עיקרית נוספת עבור משתמשי WordPress והרצון להתקין כמות רבה של תוספים היא האמינות שלהם.
בעיות אפשריות עבור תוספים שאתם מורידים יכולות להיות איכות קוד ירודה, תוספים שהושבתו, תוספים שמקבלים עדכונים לעתים רחוקות ורמת תמיכה נמוכה.

כל הסיבות האלו יחד יכולות וצריכות לגרום לכם לחשוב פעמיים לפני כל התקנה של תוסף, אשר בסופו של דבר יכולה להביא יותר נזק מאשר תועלת.

 

כיצד תמנעו מבעיות תוספים?

נכון, זה נראה שקיימות לא מעט בעיות היכולות להיגרם מהתקנת תוספים מרובים באתרכם, אבל !! עם תכנון נכון, זהיר הכולל טיפים ממומחים בנושא, ניתן בקלות למנוע בעיות ויחד עם זאת להוציא את המקסימום ממערכת ה-Wordpress ומהתוספים שלכם.

אז הנה כמה טיפים שיעזרו לכם להימנע ולהתגבר על הבעיות הקשורות בשימוש בתוספים:

 

פתרון #1 הימנעו מהתקנת תוספים בעלי שימוש זהה

לפני שאתם חושבים על התקנת תוסף חדש – חשוב מאוד לבדוק את התוספים הקיימים שלכם, האם התכונות שאתם זקוקים להן כבר קיימות באחד התוספים שלכם?

כאשר אתם מודעים לתכונות המלאות של התוספים הקיימים שלכם, תוכלו בקלות למנוע התקנת תוספים כפולים אשר מבצעים את אותן פעולות.

 

פתרון #2 התמודדות עם האטת אתר

יש הטוענים שכמות רבה של תוספים פעילים יכולה להאט את מהירות האתר שלכם משמעותית.
זו הסיבה שתקנת תוסף מטמון כמו למשל WP-Rocket מומלצת מאוד.

כאשר מהירות האתר שלכם מאטה בעקבות התקנת כמות מרובה של תוספים – שימוש בתוסף במטמון לוקח את הקבצים שהשרת מבקש (בקשות HTTP) ומעביר אותם הלאה לגולשים כבקשת סטטית.
כך האתר שלכם יטען קבצים המאוחסנים באופן סטטי וקרוב יותר לשרת שלכם, מה שעוזר לצמצם עומס עיבוד בשרת שלכם ובעקבות כך לשפר באופן משמעותי את הביצועים ואת מהירות האתר בהתאם.

 

פתרון #3 בצעו מבחני ביצועים עבור תוספים באתרכם

אפשרות מתקדמת נוספת היא לבדוק את  טעינת האתר פעמיים, לפני ואחרי התקנת תוסף שאתם מעוניינים בו.
כלי טוב לשימוש זה הוא Speedom, אשר מבצע בדיקת מהירות לאתר ומספק מידע טכני לגבי האתר שלנו, בקשות ה HTTP, זמן התגובה ונתונים נוספים.
לאחר הכניסה לאתר פשוט הזינו את כתובת האתר שלכם באתר ותקבלו רשימת הצעות כיצד תוכל לשפר את המהירות באתרכם.
חישוב מהירות האתר לפני ואחרי התקנת התוסף תעזור לכם להבין כיצד התוסף משפיע על הביצועים הכוללים של האתר.

 

פתרון #4 אבטחה

בעיות אבטחה זהו נושא שיש להתייחס אליו ברצינות  בכל פעם כשאתם משתמשים בסוג כלשהו של מערכת, בלי קשר אם זה באתר שלכם או לא.

בעוד שליבת הוורדפרס מאובטחת מאוד ומעודכנת באופן קבוע על מנת לטפל בבעיות אבטחה, כל מה שנדרש הוא "תוסף אחד רע" על מנת להפוך את האתר לפריץ.
העובדה שתוסף כלשהו באתר שלכם פועל כראוי, לא אומרת שהאתר שלכם לא חשוף לפרצות אבטחה – זו גם הסיבה לכך שחשוב מאוד שיהיו גיבויים לאתר.

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

מומלץ להשתמש רק בתוספים התואמים לגירסת וורדפרס שלכם, תחת הדשבורד באתר שלכם – במסך ניהול התוספים ניתן לראות אזהרה לגבי אתרים שלא נבדקו בגרסת הוורדפרס שלכם.

 

בחרו את התוספים שלכם בחוכמה

קל מאוד להיסחף ולהתקין כמה שיותר תוספים חדשים לאתר שלכם, תוסף בעבור כל פיצ'ר או שינוי תצוגה שאנחנו מעוניינים להוסיף.

אספנו עבורכם רשימה של מספר טיפים שיוכלו להפחית משמעותית ההשפעה השלילית של תוספים על האתר שלכם:

  • כמה תוספים זה יותר מידי? ברוב המקרים הבעיה היא לא בכמות התוספים אלא באיכות הקוד שלהם.
  • בדקו מי המפתח של התוסף – מומלץ לחפש תוספים שפותחו על ידי מפתחים מוכרים בקהילת הWordPress בכדי למנוע בעיות.
  • דירוגים של כוכבים, ביקורות משתמשים ופורומים של תמיכה הם המקומות הטובים כדי לקבל תובנה לגבי האופן שבו התוסף פועל עבור אחרים.
  • קחו בחשבון את חווית המשתמש של הלקוחות שלכם, האם התוסף יהווה פתרון נוח או יסרבל עבורם את השימוש באתרכם?
  • מחקו תוספים אשר לא נמצאים בשימוש, הם מהווים פרצת אבטחה ומשפיעים על ביצועי האתר שלכם.
  • בדקו את הגרסה העדכנית, מספר ההורדות ומספר התקנות פעילות, תוסף אמין ומבוסס יעודכן באופן שוטף ויהיה בעל נתוני הורדה סטטיסטיים גבוהים.
  • הימנעו מהורדה של תוספי "פרימיום" בחינם אשר נמצאים ברחבי הרשת, לרוב הם מכילים פרצות אבטחה.
  • שמרו תמיד על גרסאות מעודכנות של כלל התוספים.

 

לסיכום:

שימוש בתוספים הוא חלק מסוד הקסם של וורדפרס.

הוא מכיל פתרונות רבים המוכנים עבור משתמשים פשוטים ומפתחים מתקדמים מאוד המחפשים לחסוך זמן פיתוח, או פתרונות פשוטים המוכנים עבור משתמשים שאינם יודעים לפתח בעצמם,
יחד עם זאת, שימוש בתוספים צריך להיות ממוקד וזהיר תוך הקפדה על מגוון הטיפים והעצות שסקרנו במאמר זה.

חשוב לזהות את הצורך האמיתי של האתר שלכם והאם הפתרון לזה הוא תוסף חדש או פתרון מותאם אישית, זכרו שהחזקת מספר גדול של תוספים משפיע באופן ישיר על מהירות טעינת האתר, מספר בקשות הHTTP, ביצועי השרת, ומידת הפגיעות של הוורדפרס לבעיות אבטחה שונות.
ולכן ההמלצה שלנו היא לצמצם ככל האפשר את השימוש בתוספים לכמות המינמלית הנדרשת, ותמיד להיות עם האצבע על הדופק בכל הקשור לביצוע שדרוגים ובדיקה מקיפה שהתוספים באתרכם אינם כאלו ש"נזנחו" על ידי המפתחים שלהם ונשארו מאחור מבחינת אבטחה.

 

דייב אברג'ל

סמנכ"ל ומייסד uPress, מפתח Backend & Frontend, מתמחה בשיפור ביצועים לאתרי וורדפרס, טיפול בבעיות אבטחה מתקדמות, ושיווק ברשתות חברתיות. שותף פעיל במספר פרוייקטים מעניינים בתחום המוגשים כתרומה לקהילה - WiPi, Enable, Greenicon, Speedom, ועוד..

  • אולי יעניין אותך..

  • 2 תגובות על “כמה תוספי וורדפרס הם יותר מידי?”

    1. כמות התוספים היא כן בעיה!
      נראה לי ששכחת את ה-בעיה בענק: אינטגרציה!
      "הרבה תוספים" = שילוב של "הרבה" חבילות קוד:
      1. יכול להוביל לקונפליקטים
      2. יכול להגביל שינויים מערכתיים (לדוגמא, תוסף שקורס במעבר ל PHP7 וכדומה)

      בעיה קשה בוורדפרס: הדרישה לעדכון תוספים לצד שמירת ה- database למקרה של קריסה…
      בעיה קשה למפתחים – יכולת לשחזר גרסה קודמת של התוסף…
      שתיהן בעיות אינטגרציה קלאסיות.

      ברור, כפי שמשתמע מהמאמר, שתוסף עם קוד איכותי, מעודכן ובקיצור נטול בעיות
      הוא נטו, תוספת יכולות (פונקציונאליות) לאתר.
      ואז כל המרבה (כשיש צורך אמיתי כמובן) – הרי זה משובח!

      בעיית האינטגרציה מובילה לשאלה מעניינת אחרת:
      האם נכון לעדכן את וורדפרס והתוספים? למול הסיכון של תקלות אינטגרציה?
      גילוי נאות – אני מעדכן בפנאטיות ובטוח שזה לא הכרחי בכל תנאי.

      1. היי מולי, בנוגע ל"אינטגרציה" ישנו פירוט במאמר לגבי הנושא בסעיף – בעיה #2 ביצועים ומהירות אתר, אבל בהחלט אתה צודק ויש לשים דגש לגבי שילוב בין תוספים.
        בנוגע לכמות התוספים – ברוב המקרים הבעיה היא לא בכמות התוספים אלא באיכות הקוד שלהם, אם הם עובדים על החלק הקדמי או הדשבורד של האתר (מאוד משמעותי), האם הם מתבססים על שירותים צד ג' שלא קשורים לאתר שלי (כמו שירותי CDN חיצוניים), ומה המטרה שלהם.
        אני מניח שאתה אדם טכני לכן אתה יודע להביל בין "תוסף טוב" שמקודד בצורה נכונה ואינו משפיע לרעה על האתר מבחינת ביצועים \ אבטחה \ אמינות, ולבין "תוסף רע" שמתאים לכל סוגי המשתמשים עם מאות אופציות בחירה.

    כתיבת תגובה

    האימייל לא יוצג באתר. שדות החובה מסומנים *