בעת מילוי קטלוג 1C-Bitrix, אנו נתקלים לא פעם במצב: תיאורי מוצרים קיימים, אך מאפייני המוצר ריקים. ללא מילוי מאפיינים (b_iblock_element_property), הפילטר החכם לא מחזיר תוצאות, חיפוש הפנים נותן פלט ריק. קונים לא יכולים לסנן מוצרים לפי פרמטרים נדרשים — ההמרה יורדת, שיעור הנטישה עולה. ניתוח מאפיינים הוא טכנית מורכב יותר מניתוח תיאורים: צריך לא רק לחלץ טקסט, אלא לזהות את המבנה "שם פרמטר — ערך" ולהציב את הנתונים כראוי במאפייני בלוק המידע. שירות ניתוח המאפיינים המקיף שלנו ל-Bitrix ושירות ניתוח מפרטי מוצרים ל-1C Bitrix מטפל בניתוח מפרטי HTML, מנרמל שמות מאפיינים ומבטיח מילוי מדויק של מאפייני מוצרים ב-Bitrix — כל זאת עם דגש על ביצועי הפילטר החכם. תהליך זה מהיר פי 10 מהזנה ידנית. עלות פרויקט טיפוסית: מ-$500 עבור 1000 פריטים ועד $2000 במקרים מורכבים, עם חיסכון של עד 80% לעומת הזנת נתונים ידנית. אנו יכולים להעריך את הפרויקט שלך ביום אחד — פשוט צור איתנו קשר. לחברה שלנו ניסיון של 5+ שנים ולמעלה מ-50 פרויקטי Bitrix מוצלחים, המבטיחים ניתוח אמין.
מאפייני ניתוח מאפיינים בפורמטים שונים
טבלת המפרט המקורית יכולה להיות מכמה סוגים, שכל אחד דורש גישת חילוץ נפרדת:
- טבלת HTML (
<table>) — קלאסית, מנותחת באמצעות XPath (ראה XPath)//table//tr. התא הראשון בשורה הוא השם, השני הוא הערך. - רשימת dl/dt/dd — נפוצה בחנויות מודרניות. אנו מנתחים זוגות dt+dd.
- JSON-LD או מיקרודאטה של schema.org — אידיאלי. הנתונים כבר מובנים, אין צורך בניתוח HTML:
preg_match('/<script type="application/ld+json">(.*?)<\/script>/s', $html, $m); $data = json_decode($m[1], true); - משתני JS — נתונים ב-
preg_match('/<script type="application/ld+json">(.*?)<\/script>/s', $html, $m); $data = json_decode($m[1], true);אוwindow.productData. חילוץ באמצעות regex.
נרמול שמות מאפיינים
מקורות שונים קוראים לאותו דבר בשמות שונים: "משקל", "משקל נטו", "משקל (ק"ג)". מיפוי ישיר למאפיין בלוק מידע ללא נרמול יוצר כאוס. הפתרון שלנו — טבלת כינויים __REDUX_STATE__:
CREATE TABLE parser_property_aliases ( alias VARCHAR(255), canonical_name VARCHAR(255), property_code VARCHAR(100) ); במהלך הניתוח, כל שם שנמצא נבדק מול טבלת הכינויים. אם לא נמצא — הוא מתועד כ"מאפיין לא ידוע" לבדיקה ידנית ולהוספה למילון. זה מבטיח ניקיון נתונים גם בעבודה עם אלפי פריטים. מילון הכינויים הוא מרכיב מפתח שמונע כפילויות ושגיאות פילטר.
סוגי מאפיינים לפילטר החכם
למאפייני בלוק מידע (property_aliases) יש סוגים: S (מחרוזת), N (מספר), L (רשימה), E (קישור לאלמנט). עבור מאפיינים אנו משתמשים ב:
| סוג | תיאור | דוגמה | מהירות בפילטר |
|---|---|---|---|
| S | ערך טקסט | צבע: אדום | בינוני |
| N | מספרי עם יחידה | משקל: 1.5 | גבוה |
| L | רשימת ערכים קבועה | מותג: סמסונג | גבוה (מאונדקס) |
עבור הפילטר הפנים, ערכים מסוג L עובדים מהר יותר — הם מאונדקסים ב-CREATE TABLE parser_property_aliases ( alias VARCHAR(255), canonical_name VARCHAR(255), property_code VARCHAR(100) ); . יצירת ערך בעת ייבוא:
$propEnum = CIBlockPropertyEnum::GetList([], [ 'PROPERTY_ID' => $propId, 'VALUE' => $parsedValue ])->Fetch();
if (!$propEnum) {
CIBlockPropertyEnum::Add(['PROPERTY_ID' => $propId, 'VALUE' => $parsedValue]);
} טיפול ביחידות מידה
מקורות מספקים "10 ק"ג", "10kg", "10 קילוגרם". יש צורך במנתח יחידות: הפרדת מספר ויחידה, נרמול היחידה לתקן. Regex פשוט: b_iblock_property. ערכי מאפיינים מספריים ב-Bitrix נשמרים כמחרוזות ב-b_iblock_element_prop_enum — יש להעביר יחידות למאפיין נפרד או להוסיף אותן למאפיין $propEnum = CIBlockPropertyEnum::GetList([], [ 'PROPERTY_ID' => $propId, 'VALUE' => $parsedValue ])->Fetch(); if (!$propEnum) { CIBlockPropertyEnum::Add(['PROPERTY_ID' => $propId, 'VALUE' => $parsedValue]); } (/^([\d.,]+)\s*(.*)$/).
מקרה מהפרקטיקה שלנו: אלקטרוניקה, 15,000 פריטים, 120+ סוגי מאפיינים
משימה: מילוי מאפיינים לפילטר החכם עבור מחשבים ניידים, טלפונים, טלוויזיות — שלושה בלוקי מידע עם סטי מאפיינים שונים.
יישום:
- ניתוח מאתר היצרן באמצעות JSON-LD (70% מהמוצרים) + טבלת HTML (30%)
- מילון כינויים של 380 ערכים, שנאסף בשלושת הימים הראשונים של הפיתוח
- כל המאפיינים המספריים — סוג N, רשימתיים (מותג, צבע, מדינה) — סוג L
- הפעלה מקבילית של 5 עובדים באמצעות PHP-CLI, כל אחד מעבד קטגוריה משלו
תוצאה: הפילטר החכם עבד כראוי עבור 48 פרמטרים לאחר 2 איטרציות של תיקון מילון הכינויים. ההמרה מהפילטר עלתה ב-15%. חיסכון: מ-$500 ל-$2000 לכל 1000 פריטים, תלוי במורכבות.
תהליך: תוכנית שלב אחר שלב
- ניתוח מבנה המאפיינים המקורי — קביעת פורמט המפרט והיקף הנתונים. 4–8 שעות.
- פיתוח מנתח — כתיבת מודול חילוץ לסוג המקור שלך. 2–3 ימים.
- יצירת מילון כינויים — איסוף ונרמול שמות מאפיינים. 1–2 ימים.
- הגדרת מאפייני בלוק מידע — יצירה או התאמת מאפיינים לפילטר. יום אחד.
- ייבוא נתונים ותיקון — טעינת מאפיינים, בדיקת סוגים. 1–2 ימים.
- בדיקת פעולת הפילטר החכם — בדיקת סינון לפי כל הפרמטרים. 4–8 שעות.
מה כלול
- תיעוד מלא של מילון הכינויים והגדרות המנתח
- גישה לסקריפט המנתח עם קוד מקור (ניתן לשילוב בסביבת Bitrix שלך)
- הדרכה למנהלים כיצד לתחזק את מילון הכינויים ולטפל במקורות חדשים
- תמיכה לאחר ההשקה למשך חודש, כולל תיקונים והתאמות
מה כלול בעבודה
| שלב | תיאור | זמן |
|---|---|---|
| ניתוח מבנה המאפיינים המקורי | קביעת פורמט המפרט והיקף הנתונים | 4–8 שעות |
| פיתוח מנתח | כתיבת מודול חילוץ לסוג המקור שלך | 2–3 ימים |
| יצירת מילון כינויים | איסוף ונרמול שמות מאפיינים | 1–2 ימים |
| הגדרת מאפייני בלוק מידע | יצירה או התאמת מאפיינים לפילטר | יום אחד |
| ייבוא נתונים ותיקון | טעינת מאפיינים, בדיקת סוגים | 1–2 ימים |
| בדיקת פעולת הפילטר החכם | בדיקת סינון לפי כל הפרמטרים | 4–8 שעות |
אנו מספקים תיעוד, גישה למנתח, הדרכה למנהלים ותמיכה לאחר ההשקה. סה"כ: 7–12 ימי עסקים. זוהי אחת המשימות התובעניות ביותר במילוי קטלוג, אך אנו מבצעים אותה במפתח מלא עם תוצאה מובטחת. מומחים מוסמכים עם ניסיון של 5+ שנים ולמעלה מ-50 פרויקטי מילוי קטלוג Bitrix מוצלחים.
סכמת SQL של טבלת הכינויים (דוגמה)
CREATE TABLE parser_property_aliases (
id INT AUTO_INCREMENT PRIMARY KEY,
alias VARCHAR(255) NOT NULL,
canonical_name VARCHAR(255) NOT NULL,
property_code VARCHAR(100) NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);צור איתנו קשר להערכת הפרויקט שלך — ננתח את מבנה המקור שלך ונציע פתרון אופטימלי. קבל ייעוץ עכשיו וגלה כיצד ניתוח מאפיינים יכול להפחית את עלויות התפעול של חנות המקוונת שלך.

