ספאם / דואר זבל הם בעיה שכל בעלי האתרים נאלצים להלחם מולה. האמת המרה היא שאם יש לכם טפסים כלשהם שאוספים אינפורמציה מהגולשים באתר, אתם כנראה הולכים לקבל מספר פעמים דואר זבל (ספאם) במקרה הטוב, והמון דואר זבל במקרה הפחות טוב.
תופעת הספאם היא בעיה גדולה גם כאשר הטפסים אינם עושים שום דבר שיכול בצורה מתקבלת על הדעת לתת יתרון או איזשהו benefit לספאמר. בעיקרון, ספאמרים מנסים להשתמש באותם טפסים בכדי לקדם את העסק או האתר שלהם ואף עבור מטרות זדוניות יותר. חסימת ספאם יכולה להיות פעולה פרודקטיבית וחשובה ותחסוך מכם את אותן הטרדות מציקות.
בכדי להגן על הטפסים באתר שלכם אתם צריכים להקשות, עד כדי לגרום לכך שזה יהיה בלתי אפשרי לכלי אוטומטי כזה או אחר למלא ולשלוח את הטופס / התגובה. כל זאת כאשר דואגים לכך שהמשתמשים והגולשים באתר שלכם לא יחוו פגיעה כלשהי בחוויית המשתמש ועבורם השליחה של הטופס תהיה קלה ככל הניתן.
זוהי פעולה הדורשת איזון מסויים בין חוויית המשתמש לאבטחת הטפסים באתר. כאשר אתם עובדים עם טפסים ללא תוסף (לצורך העניין ללא מערכת ניהול), הפעולה של אבטחת טפסים ותגובות יכולה להיות מעט מייגעת. לשמחתינו, אנו עובדים עם וורדפרס והיא מאפשרת לנו באמצעות תוספים ובאמצעות שירותים צד שלישי למנוע ספאם בתגובות ובטפסים באתר בצורה פשוטה.
במדריך זה נראה כיצד למנוע ספאם בטפסים של Contact Form 7 באמצעות התוסף אקיזמט אנטי ספאם (Akismet Anti-Spam). השימוש באקיזמט הינו חינמי לאתרים שאינם מסחריים אך במידה והוא אתר מסחרי אתם נדרשים לשלם סכום של כ 5$ בחודש השווה בהחלט את ההשקעה.
מניעת ספאם בטפסים של Contact Form 7 באמצעות אקיזמט
אז כפי שציינו, ספאמרים תוקפים בימינו כל מה שהם יכולים וטפסים של Contact Form 7 אינם יוצאים מן הכלל. התוסף Contact Form 7 מספק מספר דרכים למניעת ספאם ושיתוף הפעולה שלו עם התוסף Akismet Anti-Spam הינו מהלך חשוב באסטרטגיית המניעה.
הדבר הראשון שיש לבצע הוא להפעיל את Akismet. התוסף Akismet מותקן כברירת מחדל עם וורדפרס כך שאתם רק צריכים להפעילו ולהגדיר את מפתח ה API של WordPress.com שבעצם מנוהלת על ידי Automattic שאחראית גם על אקיזמט.
מכאן, שבכדי ליצור מפתח עליכם להיות רשומים ב WordPress.com. תהליך פשוט, בצעו ההרשמה דרך אקיזמט עצמה ותאשרו לאקיזמט גישה לפרטי החשבון שלכם ב WordPress.com כשתדרשו לעשות זאת. לאחר מכן יופיע החלון כבתמונה הבאה:
לחצו על Add Personal Subscription. במסך הבא קחו את הסליידר שמאלה אם אינכם מעוניינים לתרום לאקיזמט כסף ולחצו Create Subscription. הוסיפו את האתר שלכם באמצעות הכפתור Add Site ללא קידומת האתר, כלומר ללא https
או www
.
לאחר שעשיתם זאת פשוט העתיקו את מפתח ה API וגשו לממשק הניהול של וורדפרס > הגדרות > אקיזמט אנטי-ספאם, הכניסו אותו בשדה המבוקש ושימרו.
במידה ומותקן לכם התוסף Jetpack שאף הוא של חברת Automattic הגישה לאקיזמט תתבצע דרך Jetpack > אקיזמט אנטי ספאם.
הוספת אקיזמט לשדות בטופס Contact Form 7
השלב הבא הוא להגדיר כי שדות הטופס ב Contact Form 7 יעבדו מול השירות של אקיזמט. גשו למסך עריכת הטופס ב Contact Form 7 והוסיפו את האפשרויות של אקיזמט לשדות הרלוונטיים בטופס:
1. akismet:author – הוסיפו אפשרות זו לשדה שמקבל את שם השולח.
[text* your-name akismet:author]
2. akismet:author_email – הוסיפו אפשרות זו לשדה המקבל את האימייל של השולח.
[email* your-email akismet:author_email]
3. akismet:author_url – הוסיפו אפשרות זו לשדה שמקבל את ה URL של השולח אם קיים שדה כזה.
[text your-url akismet:author_url]
שימו לב – עליכם להוסיף את האפשרויות ישר לאחר הפרמטר הרלוונטי, כלומר בדוגמה הראשונה ישר לאחר הפרמטר your-name
. לצורך העניין, הקוד הבא יראה שגיאה (configuration error) בטופס:
[text* your-name placeholder "Name" akismet:author]
[email* your-email placeholder "Email" akismet:author_email]
בכל אופן, כאשר אחת מאפשרויות אלו מוטמעות (מומלץ להוסיף את כולן בכדי לקבל תוצאות מדוייקות), התוסף Contact Form 7 יישלח לאקיזמט את כל המידע של שולח הטופס. אקיזמט תבדוק את המידע מול מסד הנתונים שלה ותחליט האם שליחה זו מוגדרת כספאם או לא.
במידה והוחלט כי המייל הוא ספאם, Contact Form 7 תבטל את שליחתו ותראה הודעת שגיאה על המסך בסגנון של ״שליחת ההודעה נכשלה״ ותהיה לה מסגרת כתומה (כברירת מחדל). אם ביצעתם את כל השלבים במדריך, תוכלו לבדוק האם אקיזמט פועלת כראוי על ידי שליחת viagra-test-123 כשם השולח.
עובד / לא עובד? ספרו בתגובות… בכל מקרה אם יכולים לגשת לאקיזמט בלוח הבקרה של וורדפרס ולראות סטטיסטיקות לגבי מספר התגובות או שליחת הטפסים שנחסמו באמצעות התוסף.
לסיכום
אני חייב לומר שהתוסף אקיזמט עובד מצויין וכמעט אינו מפספס. פשוט התקינו אותו, הוסיפו את מפתח ה API ותשכחו מספאם באתר הוורדפרס שלכם. ביצעתי שימוש בתוסף זה בבלוגים קטנים ואף לאתרים הרבה יותר רציניים של חברות סטארטאפ וכדומה.
כשאתם עובדים עם לקוח, שנו את האימייל של הטופס לאימייל שלכם ובצעו את בדיקת הויאגרה. אם הכל עובד כראוי, שנו את האימייל חזרה ויש לכם עוד לקוח מרוצה.
משהו אחד שלא נראה לי וציינתי, הוא כי ברגע והוספתם את ה API של אקיזמט גם התגובות באתר הוורדפרס שלכם יסוננו על ידי התוסף, ללא צורך בהתערבות נוספת מצידכם.
ניתן אגב למנוע ספאם בדרך נוספת. תנו מבט במאמר איך למנוע ספאם ודואר זבל בטפסים של Contact Form 7 באמצעות reCaptcha.
עכשיו לאחר שמנעתם את הספאם מהטפסים ב Contact Form 7, אולי הגיע הזמן לרענן את מראה הטפסים, תנו מבט במאמר משחקים עם עיצוב התוסף Contact Form 7.
מאיפה אני משיגה את ה API של וורדפרס?
אולי קצת מבלבלת הדרך שהצגתי את הדברים. את ה API ניתן להשיג על ידי הרשמה ל Akizmet ובחירת ה Personal Plan שמאשרת לך לבחור אם לתרום כסף אם לא לא לשלם כלל.
תודה רבה! לרגע התבלבלתי וחשבתי שזה כמו גוגל שדורש ש API (רק שבגוגל זה עכשיו בתשלום). אני לא יודעת אם אספיק היום אבל אני אדאג עד מחר להפעיל את הפלאגין ולתת משוב על הפלאגין, בינתים הוא נשמע מעולה…
בגדול אתה אומר שברגע שאני מפעילה את הפלאגין אז אני מקבלת אוטומטית את ה API הדרוש נכון?
לא… את נרשמת בלינק שרשמתי בתגובה הקודמת ומקבלת את ה API מהאתר של אקיזמט בחינם… את ה API שתקבלי את מכניסה בהגדרות הפלאגין.
תודה, הוצאתי API. אני אתקיןאותו ואעדכן איך הולך עם הספאם. בינתיים המדריך שלך ממש מפורט ומדויק, תודה רבה!
היי עשיתי את הבדיקה עם viagra-test-123 ובאמת לא שלח לי את הטופס.. מעולה!!! מחכה לשמוע מהלקוח שלי מה הוא אומר.. 🙂 תודה רבה!
מצויין! שמח לשמוע שעובד… 🙂
בדיוק מה שהייתי צריכה! תודה
הי רועי
אני עובד עם טפסים של אלמנטור ולא עם CF7.
AKSIMET לא מבצע בכלל את העבודה ואני מעריך שזה בגלל בעיית הגדרות.
אשמח לעזרתך
תודה
היי אריק,
לצערי איני מכיר מספיק טוב את אלמנטור בכדי לעזור לך… אולי מישהו מהקוראים בבלוג יוכל. ואם מצאת פתרון שתף אותנו כאן! 🙂
בהצלחה.