כיצד להגדיר זיהוי אוטומטי של עיר המשתמש ב-1C-Bitrix?
אתם רואים מצב: אתר מסחר אלקטרוני על 1C-Bitrix מציג מחירים אחידים לכל רוסיה. לקוח מקזאן רואה מחיר עם משלוח ממוסקבה, למרות שיש מחסן מקומי. ההמרה יורדת, שיעור הנטישה עולה. בעיה זו מתרחשת בכל פרויקט רב-אזורי שלישי. אנחנו פותרים אותה: מגדירים זיהוי אוטומטי של עיר המשתמש מאפס. אנו בוחרים במסד נתונים GeoIP (MaxMind GeoLite2) – חינמי, מתאים ל-90% מהמשימות, מגדירים את מודול sale, מוסיפים גיאולוקיישן דפדפן לדיוק. ניסיון – 7+ שנים, 30+ פרויקטים עם לוגיקה אזורית. עבור חנות טיפוסית עם 10,000 הזמנות בחודש, GeoIP לבדו יכול לחסוך עד $1,500 חודשי על שגיאות משלוח. גיאולוקיישן דפדפן מדויק פי 100 מ-GeoIP בלבד. השיטה המשולבת מניבה דיוק גבוה פי 1.3 מ-GeoIP בלבד. חיסכון שנתי פוטנציאלי: $14,400 מהפחתת שגיאות משלוח והגדלת המרה. קבלו ייעוץ על הגדרה עוד היום.
GeoIP מול גיאולוקיישן דפדפן: מה עדיף?
| שיטה | דיוק | דורש הרשאה | עובד עם VPN |
|---|---|---|---|
| GeoIP לפי IP | ±עיר, 80-90% | לא | לא (שגיאה) |
| ממשק גיאולוקיישן דפדפן | ±100 מ' | כן (דיאלוג משתמש) | כן, אבל VPN יכול להטעות |
גיאולוקיישן דפדפן מדויק פי 100 מ-GeoIP (100 מ' מול דיוק ברמת עיר). השיטה המשולבת מדויקת ב-30% יותר מ-GeoIP בלבד. שימוש בגיאולוקיישן דפדפן עדיף פי 100 על הסתמכות על GeoIP בלבד לזיהוי עיר.
שלבים ליישום זיהוי עיר
שלב 1: התקנת מסד נתונים GeoIP. הורידו GeoLite2-City.mmdb מויקיפדיה MaxMind GeoLite2 והניחו אותו על השרת. בהגדרות מודול sale, ציינו את הנתיב לקובץ.
שלב 2: הגדרת מודול המכירות. הפעילו גיאולוקיישן: Магазин → Настройки → Геолокация. בחרו ספק MaxMind GeoIP. בדקו זיהוי דרך לוח הניהול. התוצאות נשמרות במטמון למשך 24 שעות כדי למנוע עומס על מסד הנתונים.
שלב 3: שמירת עיר בסשן. לאחר הזיהוי, כתבו את העיר ל-$_SESSION['USER_CITY']. עבור משתמשים רשומים, הוסיפו שדה מותאם אישית UF_CITY לפרופיל. דוגמת קוד:
$city = \Bitrix\Sale\Location\GeoIp\Manager::getLocationByIp($ip, LANGUAGE_ID); $_SESSION['USER_CITY'] = [ 'ID' => $city['CITY_ID'], 'NAME' => $city['CITY_NAME'], 'CODE' => $city['CITY_CODE'], ]; שלב 4: הנחיית אישור בממשק המשתמש. הציגו חלון מודאלי "העיר שלך היא ...?" עם כפתורים "כן, נכון" ו"בחר אחרת". לאחר אישור, הגדירו דגל $city = \Bitrix\Sale\Location\GeoIp\Manager::getLocationByIp($ip, LANGUAGE_ID); $_SESSION['USER_CITY'] = [ 'ID' => $city['CITY_ID'], 'NAME' => $city['CITY_NAME'], 'CODE' => $city['CITY_CODE'], ]; . זה מפחית את שיעור הנטישה ב-20-30%.
שלב 5: קישור למחירים ולתוכן. צרו קבוצות מחיר לכל עיר (דרך $_SESSION['CITY_CONFIRMED'] = true). הגדירו ריבוי אתרים אם משתמשים בדומיינים שונים. או קשרו סעיפי בלוק מידע לערים דרך מאפיינים.
למה אישור עיר חשוב?
זיהוי אוטומטי הוא הנחה, לא עובדה. בשימוש ב-VPN או פרוקסי, הוא טועה בכל מקרה חמישי. ההנחיה "העיר שלך היא מינסק?" מפחיתה את שיעור הנטישה ב-20-30%. הציגו אותה בביקור הראשון, תוך בדיקת דגל b_catalog_price_type. לאחר הבחירה – אל תציגו שוב. אנו מבטיחים עבודה תקינה של זיהוי אוטומטי למשך 30 יום לאחר ההשקה.
איך לקשר עיר למחירים ולתוכן?
העיר מקושרת ל:
- אתר Bitrix (ריבוי אתרים) – דומיינים שונים לערים שונות.
- סעיפי בלוק מידע – מחירים ממאפיינים עם מחירים אזוריים.
- קבוצות מחיר
$_SESSION['CITY_CONFIRMED']– כל עיר מקבלת קבוצת מחיר משלה.
זה מונע הצגת נתונים לא רלוונטיים. לדוגמה, מוצר זמין רק במוסקבה לא יופיע בקזאן. חיסכון במשלוח – עד 15%. עבור חנות טיפוסית עם 10,000 הזמנות בחודש, זה יכול לחסוך עד $1,500 חודשי.
מה כלול בהגדרה
- זיהוי עיר אוטומטי ל-1C-Bitrix: התקנת מסד נתונים GeoIP והגדרת מודול.
- גיאולוקיישן Bitrix: יישום גם גיאולוקיישן IP וגם דפדפן.
- GeoIP Bitrix: שימוש במסד נתונים MaxMind GeoLite2.
- מחירים אזוריים Bitrix: קישור קבוצות מחיר לערים שזוהו.
- אתר רב-אזורי Bitrix: תמיכה במספר אתרים או בלוקי מידע.
- זיהוי עיר לפי IP: שימוש במיפוי IP למיקום.
- ממשק גיאולוקיישן API Bitrix: שילוב גיאולוקיישן דפדפן וגיאוקידינג הפוך.
- אישור עיר Bitrix: יישום הנחיית ממשק עם שמירה.
- הגדרת זיהוי גיאוגרפי: הגדרה מלאה ובדיקות.
- פיתוח Bitrix: קוד מותאם אישית והדרכת צוות.
השירות המקיף שלנו מכסה זיהוי עיר לפי IP, שילוב ממשק גיאולוקיישן API ל-Bitrix, הנחיות אישור עיר, הגדרת זיהוי גיאוגרפי לאתרים רב-אזוריים, וקישור מחירים אזוריים לקבוצות מחיר של Bitrix. אנו מתמחים גם בפיתוח Bitrix ובפתרונות GeoIP Bitrix.
תוצרים
- תיעוד מפורט של היישום, כולל קטעי קוד ושלבי הגדרה.
- גישת מנהל לניהול מסד נתונים GeoIP והגדרות מטמון.
- הדרכת צוות (שעה) על תחזוקה ופתרון תקלות של המערכת.
- תמיכה של 30 יום לאחר ההשקה לכל בעיה או התאמה.
איך לזהות דרך דפדפן?
אם המשתמש מאפשר גישה לגיאולוקיישן, קבעו בצורה מדויקת יותר דרך b_catalog_price_type. המירו קואורדינטות לעיר באמצעות גיאוקידינג הפוך דרך Yandex Geocoder API או DaData. דוגמה:
navigator.geolocation.getCurrentPosition(async (pos) => { const resp = await fetch('/local/ajax/detect-city.php', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ lat: pos.coords.latitude, lng: pos.coords.longitude, }), }); const data = await resp.json(); if (data.city) showCityConfirmDialog(data.city); }); בשרת, השתמשו בגיאוקידינג הפוך:
// Яндекс Геокодер $url = "https://geocode-maps.yandex.ru/1.x/?apikey={$key}&format=json" . "&geocode={$lng},{$lat}&kind=locality&results=1&lang=ru_RU"; $response = json_decode(file_get_contents($url), true); $city = $response['response']['GeoObjectCollection']['featureMember'][0] ['GeoObject']['name'] ?? null; לוחות זמנים ועלות
לוחות זמנים להגדרה – בין 2 ל-8 ימים תלוי במורכבות. העלות מחושבת באופן אישי לאחר בדיקת האתר. עלות טיפוסית נעה בין $800 ל-$2,500. עבור חנות בינונית, עלות הגדרה חד-פעמית של $1,500 מובילה לחיסכון חודשי של $1,200. ההשקעה של $1,500 מניבה חיסכון שנתי של $14,400. צרו קשר להערכת פרויקט וייעוץ על הפתרון האופטימלי.
| שלב | זמן |
|---|---|
| הגדרת מסד נתונים GeoIP | 1–2 ש' |
| לוגיקת זיהוי עיר ואחסון | 3–4 ש' |
| גיאולוקיישן דפדפן + גיאוקידינג הפוך | 3–5 ש' |
| הנחיית אישור עיר בממשק | 2–3 ש' |
| קישור למחירים/תוכן | 4–8 ש' |
זיהוי עיר אוטומטי מוגדר הוא דרך להגדיל המרה ב-20-40% לאזורים. הזמינו הגדרה ממומחים מוסמכים וקבלו פתרון מוכן.







