העברה מ-Drupal 7 ל-Drupal 10: מדריך שלב-אחר-שלב

האתר שלך על Drupal 7 כבר לא מקבל עדכוני אבטחה, וכל יום של חוסר פעולה מגדיל סיכונים. אנחנו מבצעים הגירה ל-Drupal 10 עם כתיבה מלאה מחדש של קוד מותאם אישית והעברת נתונים באמצעות Migrate API. הצוות שלנו מספק את הפרויקט במפתח מלא—מביקורת ועד תמיכה, ומבטיח מעבר אמין ללא פגיעה בלוחות זמנים.

פיתוח ותחזוקה של כל סוגי האתרים:

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

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

השירותים שאנו מציעים
מציג 1 מתוך 1כל 2062 השירותים
העברה מ-Drupal 7 ל-Drupal 10: מדריך שלב-אחר-שלב
מורכב
מ- 2 שבועות עד 3 חודשים

הכישורים שלנו:

שאלות נפוצות

העבודות האחרונות

  • פיתוח אתר חברה B2B ADVANCE
    פיתוח אתר חברה B2B ADVANCE
    1502
  • פיתוח אפליקציית ווב עבור FEEDME
    פיתוח אפליקציית ווב עבור FEEDME
    1344
  • פיתוח אתר עבור BELFINGROUP
    פיתוח אתר עבור BELFINGROUP
    1052
  • פיתוח חנות מקוונת לחברת FURNORO
    פיתוח חנות מקוונת לחברת FURNORO
    1306
  • פיתוח אפליקציית ווב עבור Enviok
    פיתוח אפליקציית ווב עבור Enviok
    1049
  • פיתוח אתר לחברת FIXPER
    פיתוח אתר לחברת FIXPER
    1033

דרופל 7 כבר לא מקבל עדכוני אבטחה. האתר שלך חשוף להתקפות, ואין נתיב שדרוג ישיר לדרופל 10 — רק הגירה מלאה. השלמנו למעלה מ-20 פרויקטים כאלה, החל מ-50 ועד 200,000 צמתים. הניסיון שלנו עוזר להימנע ממלכודות נפוצות ולצמצם את זמן ההשבתה למינימום.

Migrate API מאיץ את העברת התוכן פי 3–5 בהשוואה לייצוא ידני. אבל הגירה אינה רק תוכן: מודולים וערכות נושא מותאמים אישית חייבים להיכתב מחדש לחלוטין. דרופל 7 הוא פרוצדורלי וחסר Composer; דרופל 10 הוא מונחה עצמים על Symfony עם ניתוב מבוסס YAML. ההבדלים הארכיטקטוניים מחייבים ריפקטורינג מלא של הקוד.

הגירה מדרופל 7 לדרופל 10: הוראות שלב-אחר-שלב

הבדלים ארכיטקטוניים: למה זה לא שדרוג

דרופל 7 ודרופל 10 הם מערכות שונות ארכיטקטונית. D7 אינו משתמש ב-Composer, OOP, או רכיבי Symfony. תוכן מוגר באמצעות Migrate API, בעוד קוד ערכת נושא ומודולים נכתב מחדש לחלוטין. זהו ריפקטורינג מלא, לא עדכון. לדוגמה, mymodule.routing.yml ב-D7 הופך לניתובי YAML, ופונקציות פרוצדורליות הופכות לשירותים המשתמשים בהזרקת תלות.

אסטרטגיות הגירה: איך לבחור

אסטרטגיה תיאור זמן השבתה מתי להשתמש
Migrate API הגירה פרוגרמטית של תוכן ממסד הנתונים של D7 ל-D10. ניתן להריץ מספר פעמים לפני המעבר. דקות רוב הפרויקטים
הגירת תוכן ידנית ייצוא דרך Views, ייבוא דרך Migrate או ידנית. שעות אתרים עם פחות מ-100 צמתים
Big bang עצירה מלאה של D7, הגדרת D10, הגירה של הכל בבת אחת. ימים אתרים פשוטים שבהם זמן השבתה מקובל

Migrate API הוא האפשרות המומלצת. הוא מאפשר להריץ הגירות מספר פעמים, ולהוסיף רק תוכן ששונה. ההבדל במאמץ בין Migrate API להגירה ידנית הוא פי 3–5 לטובת האוטומציה. שימוש ב-Migrate API יכול להפחית את התקציב ב-60-80%.

איך Migrate API עובד מתחת למכסה המנוע? Migrate API משתמש בתוספים של מקור, עיבוד ויעד עבור כל ישות. המקור קורא נתונים ממסד הנתונים של D7, העיבוד הופך שדות, והיעד שומר לתוך D10. זה מאפשר שימוש חוזר בתוספים והגדרת מיפוי בקלות.

איך להגר מודולים מותאמים אישית?

מודולים מותאמים אישית של דרופל 7 חייבים להיכתב מחדש לחלוטין עבור דרופל 10. לדוגמה, composer create-project drupal/recommended-project drupal10-site cd drupal10-site composer require drupal/migrate_plus drupal/migrate_tools drupal/migrate_upgrade drupal/migrate_source_csv drush en migrate migrate_plus migrate_tools migrate_upgrade -y מוחלף בקובץ YAML בשם settings.php, ופונקציות פרוצדורליות הופכות למחלקות עם הערות. מורכבות השכתוב תלויה בגודל המודול. לעיתים קרובות, כל הלוגיקה העסקית דורשת ריפקטורינג. בקשו ביקורת אתר כדי להעריך את המאמץ.

איך אנחנו מבצעים הגירה: שלב-אחר-שלב

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

composer create-project drupal/recommended-project drupal10-site
cd drupal10-site
composer require drupal/migrate_plus drupal/migrate_tools drupal/migrate_upgrade drupal/migrate_source_csv
drush en migrate migrate_plus migrate_tools migrate_upgrade -y

חברו את מסד הנתונים של D7 כמסד נתונים נוסף ב-$databases['migrate']['default'] = [ 'driver' => 'mysql', 'database' => 'drupal7_db', 'username' => 'db_user', 'password' => 'db_pass', 'host' => '127.0.0.1', 'port' => '3306', 'prefix' => '', ]; :

$databases['migrate']['default'] = [
    'driver' => 'mysql',
    'database' => 'drupal7_db',
    'username' => 'db_user',
    'password' => 'db_pass',
    'host' => '127.0.0.1',
    'port' => '3306',
    'prefix' => '',
];

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

drush migrate:import upgrade_d7_user_role
drush migrate:import upgrade_d7_node_type
drush migrate:import upgrade_d7_field
drush migrate:import upgrade_d7_field_instance
drush migrate:import upgrade_d7_taxonomy_vocabulary
drush migrate:import upgrade_d7_taxonomy_term
drush migrate:import upgrade_d7_user
drush migrate:import upgrade_d7_file
drush migrate:import upgrade_d7_node_complete
drush migrate:import upgrade_d7_menu
drush migrate:import upgrade_d7_block

אזורים בעייתיים ופתרונותיהם

  • CCK/Field API: אוסף שדות ב-D7 אינו מוגר ישירות — נדרש המודול drush migrate:import upgrade_d7_user_role drush migrate:import upgrade_d7_node_type drush migrate:import upgrade_d7_field drush migrate:import upgrade_d7_field_instance drush migrate:import upgrade_d7_taxonomy_vocabulary drush migrate:import upgrade_d7_taxonomy_term drush migrate:import upgrade_d7_user drush migrate:import upgrade_d7_file drush migrate:import upgrade_d7_node_complete drush migrate:import upgrade_d7_menu drush migrate:import upgrade_d7_block .
  • Views: Views 3 (D7) מועברים חלקית. תצוגות מורכבות עם קשרים חייבות להיבנות מחדש ידנית.
  • קבצי מדיה: קבצים מועתקים דרך התוסף migrate_field_collection, עם נתיב המקור המצוין ב-file_copy.

צרו קשר לייעוץ — נבדוק את מורכבות הפרויקט שלכם ונציע תוכנית אופטימלית.

איך למזער זמן השבתה?

אנו משתמשים בהגירה דלתא. כמה ימים לפני המעבר, אנו מריצים הגירה מלאה ראשונית. ביום המעבר, אנו תחילה מעבירים את D7 למצב תחזוקה, ואז מריצים עדכונים מצטברים: source_base_path. לאחר מכן, אנו מעבירים DNS ל-D10 ומבטלים את מצב התחזוקה. זמן ההשבתה המלא הוא 15-30 דקות. צרו קשר כדי להעריך את הפרויקט שלכם.

מה כלול בעבודה?

  • ביקורת מלאה של אתר D7 הנוכחי (מודולים, ערכות נושא, תוכן, מסד נתונים)
  • הגירת תוכן דרך Migrate API עם אחריות לשלמות
  • שכתוב מודולים וערכות נושא מותאמים אישית ל-OOP/Symfony
  • הגדרת מודולי SEO (metatag, redirect, pathauto)
  • הגירת בדיקות ובדיקות קבלה
  • תיעוד הארכיטקטורה החדשה, גישת שרת ומנהל
  • שבועיים של תמיכה לאחר ההגירה

בקשו ביקורת אתר D7 כדי לקבל לוחות זמנים ועלות מדויקים.

לוחות זמנים ועלות

סוג אתר לוח זמנים
פשוט (< 100 צמתים, סוגי תוכן סטנדרטיים) 2-3 שבועות
בינוני (500-5000 צמתים, מודולים מותאמים אישית) 4-8 שבועות
גדול (50 אלף+ צמתים, תלות מורכבת) 3-6 חודשים

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