פרטי מדריך:
- קטגוריה: וורדפרס
- רמת קושי: מתקדמים
- זמן ביצוע: 5 עד 10 דקות
שלום חברים, היום… מיני מדריך קטן וענייני על איך בונים דף 404 בוורדפרס. המדריך הזה נולד בעקבות בניית האתר החדש שלנו. כמו תמיד אני רוצה להציע דף לכל גולש אשר מגיע לאתר ואפילו אם הוא / היא הגיעו לדף שאיננו קיים כבר או מעולם לא היה קיים.
אז איך בונים דף 404 בוורדפרס? ישנם הרבה מדריכים ברחבי הרשת אבל אף אחד מהם לא עבד לי! וחוצמזה, אני רוצה דף שאני יכול לערוך דרך ממשק הניהול ולא ישירות בקוד ואולי גם ליצור תיעוד של שגיאות 404 כדי שאוכל לראות לאיזה דף ניסו להגיע כדי לתקן ולמנוע שגיאות כאלה בעתיד.
סדר פעולות
- ניצור קובץ 404 ונגדיר אותו כדף מותאם
- ניצור דף חדש בוורדפרס ונבחר בתבנית שיצרנו
- נכין פונקציה שתפנה אל הדף בעת שגיאה
- נתעד כל שגיאה כדי שנוכל לתקן
- סיימנו – בנו את התוכן עבור הדף שלכם!
ניצור קובץ 404 ונגדיר אותו כדף מותאם
בצעד זה ניצור דף מותאם (Custom Page) אותו נוכל לערוך היישר ממשק הניהול כמו כל דף אחר ויהווה עבור האתר שלנו דף ברירת מחדל עבור שגיאות 404.1. צרו קובץ בשם 404.php
את הקובץ החדש שלכם יש למקם בתבנית של האתר שלכם
2. העתיקו אליו קוד נדרש
העתיקו את הקוד הקיים בpage.php אל 404.php
3. נהפוך את הקובץ לדף מותאם
בכדי להפוך את הדף לדף מותאם בוורדפרס עלינו לשנות שורת קוד אחת
במקום:
<?php get_header(); ?>
נשנה ל…
<?php /* Template Name: 404 */ get_header(); ?>
ניצור דף חדש בוורדפרס ונבחר בתבנית שיצרנו
כעת ניצור דף חדש בממשק הניהול של האתר שלנו. הגדולה של הדרך הזאת היא שאנו יכולים לערוך את הדף 404 שלנו ישירות ממשק הניהול, לספור כמות צפיות, לבדוק מהיכן הגיעו לדף השגיאה ועוד!נכין פונקציה שתפנה אל הדף בעת שגיאה
הכל מוכן, אבל… וורדפרס עדיין לא תעביר לדף שגיאה במקרה שגולש הגיע לדף שלא קיים באתר שלנו! אז… עכשיו נכין פונקציה שתפנה לדף החדש שלנו במצב של שגיאה.
שימו לב: יש להזין את הכתובת של הדף שיצרנו בסעיף הקודם ולשנות את הID לID של הדף שיצרנו ממש עכשיו
/******************************* ** REDIRECT TO 404 *******************************/ add_action('template_redirect', 'redirect404'); function redirect404() { global $wp_query; if($wp_query->is_404) { $page_id = 100; // שנו לID של הדף שיצרנו $page_url = ''; // שנו לכתובת של הדף שיצרנו update_post_meta($page_id, date('d-m-Y').'|'.time(), get_bloginfo('wpurl').'/'.$_SERVER['REQUEST_URI']); wp_redirect($page_url, 301); exit; } }
מה הפונקציה עושה?
- שורה 4: קושרים את הפונקציה לtemplate_redirect ולפני שהדף נטען
- שורה 7: נבדוק אם הדף הוא שגיאה 404
- שורה 9: נגדיר את הID של הדף (זכרו לשנות)
- שורה 10: נגדיר את הURL של הדף (זכרו לשנות)
- שורה 12: נשמור כל ביקור בדף עם הכתובת המפנה (הסבר בהמשך)
- שורה 13: נפנה אל דף ה404 החדש דנדש שלנו!
הסבר לגבי שורה 12
מכיוון שאני לא אוהב שגולשים מגיעים לדף שגיאה הוספתי שורה קטנה אשר תשמור תיעוד בCUSTOM FIELD של כל ביקור מהדף עם שעה ותאריך וגם כתובת הדף אשר הפנתה לדף 404
בצורה כזאת אנחנו לא משאירים דברים ליד המקרה ונוכל לטפל בעתיד בשגיאות 404 בצורה יעילה!
מסודרים עם דף 404 חדש!
כעת תוכלו לערוך את הדף החדש שלכם ולבחור מה להציג לגולשים אשר מגיעים לדף שגיאה. אני מקווה שאהבתם את המדריך וכי עזרתי. תמצאו עוד המון מדריכים מעולים (אני מקווה) במדור פיתוח אתרי וורדפרס. פרגנו עם לייק ונפגש במדריך הבא…
גיטו (שם עט) 7 ביולי 2015
שלום, אני גיטו
אני בעל בלוג WordPress, מאוחסן על שרתי החברה. רציתי לשאול 2 שאלות:
1. איך אפשר להכניס סקריפטים של CSS לתוך WordPress (לא באחסון עצמאי כמובן)?
2. איך עושים עיצוב של "תיבת קוד", כמו שאתם/אתה עשיתם/עשית (כלומר, מין קופסה כזו שבה כתוב קוד)?
שגיב SEO 9 ביולי 2015
אתה יכול כמובן לשלם על האפשרות להתקין תוספים מסוימים.
אני לא יודע אם אפשר בוורדפרס להתקין את SYNTAX HIGHLIGHTER
אבל זה התוסף שאחראי על הצגת פיסות קוד בדף עצמו.
עידן 13 בדצמבר 2016
היי. תודה על הפוסט. לא כל כך הצלחתי להבין איפה להכניס את הפונקציה של הסעיף האחרון?
בקובץ ה404.php שבנינו בסעיף א', או בעורך הHTML של העמוד שבנינו בסעיף ב' או בכלל בfunctions.php
אשמח לתשובה מהירה.. נתקעתי באמצע. חח תודה רבה 🙂
שגיב SEO 13 בדצמבר 2016
שלום עידן,
יש למקם אותה בקובץ functions.php או קובץ אחר שאתה מכליל (include) בfunctions.php
זה לא ממש משנה כל עוד מדובר על דף שנטען יחד עם כל דף בוורדפרס.