פיתוח אתר לסוכנות רכב על 1C-Bitrix
אנו מפתחים אתרים לסוכנויות רכב על 1C-Bitrix שהופכים מבקרים ללידים. לצוות שלנו ניסיון של למעלה מ-12 שנים בפיתוח Bitrix וביצענו יותר מ-80 פרויקטים עבור סוכנויות רכב. אתר של סוכנות רכב הוא לא רק קטלוג — הוא כלי בחירה מתוחכם. מבקרים לא מוסיפים מכוניות לעגלה — הם בוחרים, משווים, מחשבים הלוואות ומזמינים נסיעות מבחן. משך הביקור הממוצע באתר סוכנות הוא 6–9 דקות, עם 3–4 מעברי פילטרים ו-2–3 פתיחות של כרטיסי מכוניות. אם פילטר יצרן-דגם מאט, התמונות נטענות אחת אחת, או שמחשבון ההלוואה דורש רענון עמוד, המבקר עוזב ל-auto.ru. אנו בונים ארכיטקטורה שתואמת לאגרגטורים במהירות אך נשארת ניתנת לניהול מפאנל הניהול של Bitrix.
ארכיטקטורת קטלוג: מכוניות חדשות ויד שנייה
ההחלטה הראשונה היא האם לאחסן מכוניות חדשות ויד שנייה בבלוק מידע אחד או בנפרד. בלוק מידע אחד עם סעיפים לפי סוג מתאים לסוכנויות רב-מותגיות עם עד 2000 פריטים: 80% מהמאפיינים חופפים, ומאפיינים ריקים לא מנפחים את טבלת b_iblock_element_property. שני בלוקי מידע מוצדקים כאשר מכוניות חדשות נוצרות דרך קונפיגורטור (יצרן → דגם → רמת גימור) ומכוניות יד שנייה הן מקרים ספציפיים לפי VIN. אנו ממליצים עבור סוכנות בינונית (500–3000 מכוניות): בלוק מידע "מכוניות" עם סעיפים "חדשות" ו"יד שנייה", בלוקים Highload עבור "יצרנים", "דגמים", "דורות", "רמות גימור", ובלוק מידע "מבצעים".
מאפייני מכונית — לפחות 40 שדות. מפתחיים לסינון ואגרגטורים:
| מאפיין | קוד | סוג | אינדוקס |
|---|---|---|---|
| יצרן | BRAND | S:Highload | אינדקס פאקטים |
| דגם | MODEL | S:Highload | אינדקס פאקטים |
| שנה | YEAR | N (מספר) | אינדקס פאקטים |
| מחיר | PRICE | N | אינדקס פאקטים |
| קילומטראז' | MILEAGE | N | אינדקס פאקטים |
| סוג מנוע | ENGINE_TYPE | L (רשימה) | אינדקס פאקטים |
| נפח מנוע | ENGINE_VOLUME | N | אינדקס פאקטים |
| תיבת הילוכים | TRANSMISSION | L (ידני, אוטומטי, רובוטי, CVT) | אינדקס פאקטים |
| הנעה | DRIVE | L | אינדקס פאקטים |
| סוג מרכב | BODY_TYPE | L | אינדקס פאקטים |
| צבע | COLOR | S | אינדקס פאקטים |
| VIN | VIN | S | לא (התאמה מדויקת) |
| סטטוס | STATUS | L | אינדקס פאקטים |
| תמונות | PHOTOS | F (מרובה) | לא |
| תצוגת 360 חיצונית | SPIN_360_URL | S | לא |
| פנורמת פנים | INTERIOR_PANORAMA | S | לא |
למה סינון מדורג הוא קריטי לקטלוג?
ה-bitrix:catalog.smart_filter הסטנדרטי מציג את כל ערכי המאפיינים בו-זמנית. משתמש בוחר יצרן BMW — אבל רשימת הדגמים עדיין מציגה Camry, Ceed. זה פוגע בחוויית המשתמש. יש צורך בסינון מדורג: בחירת יצרן → חישוב מחדש של דגמים, בחירת דגם → חישוב מחדש של דורות.
אפשרות 1: בקר AJAX מותאם אישית. נקודת קצה נפרדת /api/catalog/filter-values/:
class FilterValuesController extends \Bitrix\Main\Engine\Controller
{
public function getModelsAction(int $brandId): array
{
$models = [];
$res = \CIBlockElement::GetList(
[],
['IBLOCK_ID' => CAR_IBLOCK_ID, 'ACTIVE' => 'Y', 'PROPERTY_BRAND' => $brandId],
['PROPERTY_MODEL' => 'CNT'],
false,
['PROPERTY_MODEL']
);
while ($row = $res->Fetch()) {
$models[] = ['id' => $row['PROPERTY_MODEL_VALUE'], 'count' => $row['CNT']];
}
return $models;
}
}בצד הלקוח — class FilterValuesController extends \Bitrix\Main\Engine\Controller { public function getModelsAction(int $brandId): array { $models = []; $res = \CIBlockElement::GetList( [], ['IBLOCK_ID' => CAR_IBLOCK_ID, 'ACTIVE' => 'Y', 'PROPERTY_BRAND' => $brandId], ['PROPERTY_MODEL' => 'CNT'], false, ['PROPERTY_MODEL'] ); while ($row = $res->Fetch()) { $models[] = ['id' => $row['PROPERTY_MODEL_VALUE'], 'count' => $row['CNT']]; } return $models; } } , עדכון בחירת הדגם באמצעות Choices.js או Tom Select. אפשרות 2: טעינה מוקדמת של עץ תלות JSON — מהיר יותר אך לא משקף את המלאי בפועל. שילוב: טעינה מוקדמת של העץ + חישוב מחדש של ספירות ב-AJAX על כל שינוי פילטר — חוויית משתמש אופטימלית.
עבור מחווני טווח (מחיר, קילומטראז', שנה) — BX.ajax.runAction מספק MIN/MAX, בצד הלקוח noUiSlider, AJAX דרך count.
איך להימנע משגיאות ביצירת פיד XML?
אגרגטורי רכב הם מקור התנועה העיקרי. לכל אחד יש פורמט XML משלו ושדות חובה. auto.ru משתמש בפורמט cars.xml:
<cars>
<car>
<mark_id>BMW</mark_id>
<folder_id>X5</folder_id>
<modification_id>xDrive30d</modification_id>
<body_type>ALLROAD_5_DOORS</body_type>
<year>2024</year>
<run>0</run>
<color>ЧЕРНЫЙ</color>
<transmission>AUTOMATIC</transmission>
<engine_type>DIESEL</engine_type>
<engine_volume>3.0</engine_volume>
<price>7890000</price>
<currency>RUR</currency>
<vin>WBAJC51090B123456</vin>
<unique_id>car_12345</unique_id>
<images>
<image>https://site.ru/upload/cars/12345/photo1.jpg</image>
</images>
</car>
</cars>שדות קריטיים: bitrix:catalog.smart_filter ו-bitrix:catalog.section חייבים להתאים לספריית הייחוס של האגרגטור. אנו בונים בלוק Highload <cars> <car> <mark_id>BMW</mark_id> <folder_id>X5</folder_id> <modification_id>xDrive30d</modification_id> <body_type>ALLROAD_5_DOORS</body_type> <year>2024</year> <run>0</run> <color>ЧЕРНЫЙ</color> <transmission>AUTOMATIC</transmission> <engine_type>DIESEL</engine_type> <engine_volume>3.0</engine_volume> <price>7890000</price> <currency>RUR</currency> <vin>WBAJC51090B123456</vin> <unique_id>car_12345</unique_id> <images> <image>https://site.ru/upload/cars/12345/photo1.jpg</image> </images> </car> </cars> לתרגום ערכים (אוטומטי → AUTOMATIC עבור auto.ru, "אוטומטי" עבור Avito). יצירה — מחלקה אבסטרקטית mark_id, יישומים קונקרטיים לכל פורמט. סוכן רץ כל 30–60 דקות, קבצים ב-folder_id. לפני החלפה — אימות סכמת XSD; במקרה של שגיאה — הודעה למנהל.
השוואת מכוניות
משתמשים מוסיפים עד 4 מכוניות להשוואה דרך כפתור בקטלוג. מזהים נשמרים ב-localStorage (לא מחובר) או בבלוק Highload FeedMapping (מחובר). הרכיב טוען מאפיינים לפי מערך מזהים, מציג טבלה עם הדגשת הבדלים.
מחשבוני טרייד-אין והלוואות
טרייד-אין: טופס הערכה — יצרן, דגם, שנה, קילומטראז', מצב. בצד הלקוח, JavaScript לוקח מחיר בסיס מבלוק Highload BaseFeedGenerator ומחיל מקדמים. הערכה מדויקת לאחר בדיקה. מחשבון הלוואות — נוסחת אנונה עם מחוונים, ריביות מבלוק Highload "בנקים שותפים".
אינטגרציה עם 1C ומלאי
סנכרון דרך CommerceML (החלפה סטנדרטית של Bitrix עם 1C, התאמת מיפוי מאפיינים) או 1C REST API (שירות HTTP, עדכונים כל 15–30 דקות). המפתח הוא VIN. פרטים נוספים בתיעוד Bitrix (CommerceML).
תצוגת 360 ותוכן ויזואלי
תצוגת 360 — סט של 36–72 תמונות מסביב, ספריית SpriteSpin. פנורמת פנים — תמונה כדורית, צפייה דרך Pannellum.js. קבצים מאוחסנים ב-/upload/feeds/.
הזמנת נסיעת מבחן ושירות
טופס הזמנה — דרך UserCompare או Bitrix24 REST API (TradeInPrices עם מקור TEST_DRIVE). הלקוח מקבל אישור SMS. הזמנת שירות — דומה עם בחירת סוג עבודה.
SEO ו-Schema.org
כל כרטיס מכונית הוא דף נחיתה. תבניות SEO: כותרת "קנה #BRAND# #MODEL# #YEAR# — #CITY# | סוכנות", תיאור עם מפרטים. סימון Schema.org /upload/cars/{ID}/360/ + bitrix:form.result.new:
{
"@context": "https://schema.org",
"@type": "Vehicle",
"name": "BMW X5 xDrive30d",
"brand": {
"@type": "Brand",
"name": "BMW"
},
"model": "X5",
"vehicleModelDate": "2024",
"mileageFromOdometer": {
"@type": "QuantitativeValue",
"value": "0",
"unitCode": "KMT"
},
"fuelType": "Diesel",
"vehicleTransmission": "Automatic",
"color": "Black",
"vehicleIdentificationNumber": "WBAJC51090B123456",
"image": [
"https://site.ru/upload/cars/12345/photo1.jpg"
],
"offers": {
"@type": "Offer",
"price": "7890000",
"priceCurrency": "RUB",
"availability": "https://schema.org/InStock",
"seller": {
"@type": "AutoDealer",
"name": "Название дилера"
}
}
} מה כלול בפרויקט
- תיעוד ארכיטקטוני (בלוקי מידע, בלוקים Highload, מיפוי מאפיינים).
- גישה לפאנל ניהול, CRM, אירוח.
- הדרכה למנהלים על ניהול קטלוג ופידים.
- תמיכה טכנית ל-30 יום לאחר ההשקה.
- קוד מקור והוראות פריסה.
שלבים ולוחות זמנים
| היקף | לוחות זמנים |
|---|---|
| סוכנות מותג יחיד, עד 200 מכוניות, פילטר בסיסי | 6–8 שבועות |
| סוכנות רב-מותגית, 500–2000 מכוניות, פידים + 1C | 10–14 שבועות |
| רשת סוכנויות, 3000+ מכוניות, ריבוי אתרים, CRM | 14–24 שבועות |
לוחות הזמנים אינם כוללים צילום והכנת תוכן 360 — אלה תהליכים מקבילים. אנו נעריך את הפרויקט שלך ונציע פתרון אופטימלי. צור קשר לייעוץ.

