פיתוח מודול באנרים מותאם אישית ל-1C-Bitrix

פיתוח מודול ניהול באנרים ל-1C-Bitrix אנו מפתחים מודול ניהול באנרים מותאם אישית ל-1C-Bitrix הפותר את הבעיה של ניהול מאות באנרים באזורים מרובים. המודול שלנו מהיר פי 10 מפתרונות מבוססי אינפובלוק – בחירת 10,000 באנרים אורכת 0.1 שניות
השירותים שאנו מציעים
מציג 1 מתוך 1כל 1626 השירותים
פיתוח מודול באנרים מותאם אישית ל-1C-Bitrix
בינוני
~1-2 שבועות

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

שאלות נפוצות

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

  • image_website-b2b-advance_0.webp
    פיתוח אתר חברה B2B ADVANCE
    1454
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    פיתוח אתר לחברת FIXPER
    1018
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    פיתוח מבוסס Bitrix, Bitrix24, 1C לחברה פיתוח ווידג'ט להזמנת תורים אונליין למרכז רפואי
    760
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    פיתוח על בסיס 1C Enterprise עבור MIRSANBEL
    879
  • image_crm_dolbimby_434_0.webp
    פיתוח אתר על CRM Bitrix24 עבור DOLBIMBY
    803
  • image_crm_technotorgcomplex_453_0.webp
    פיתוח על בסיס Bitrix24 עבור חברת TECHNOTORGKOMPLEKS
    1162

פיתוח מודול ניהול באנרים עבור 1C-Bitrix

אנו מפתחים מודול ניהול באנרים מותאם אישית עבור 1C-Bitrix הפותר את הבעיה של ניהול מאות באנרים במספר אזורים. המודול שלנו מהיר פי 10 מפתרונות מבוססי אינפובלוק – בחירת 10,000 באנרים אורכת 0.1 שניות לעומת 1.5 שניות באינפובלוקים. לקוחות בדרך כלל רואים עלייה של 40% ב-CTR וחוסכים שעתיים ביום בניהול באנרים. המחיר מתחיל מ-$500 לגרסה בסיסית, עם תמחור שקוף בחוזה.

דרישות שרת: PHP 8.1+, MySQL 5.7+, מודול Bitrix VM או סביבה דומה, גישה להגדרות cron עבור סוכנים.

מתי יש צורך במודול מותאם אישית במקום פתרון אינפובלוק?

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

כיצד פועל אלגוריתם בחירת הבאנרים?

בליבה נמצאת בחירה אקראית משוקללת המתחשבת בעדיפויות, מגבלות ומיקוד. האלגוריתם רץ ב-O(n) ועובד עבור קטלוגים עם אלפי באנרים.

class BannerSelector { public function select(string $zoneCode, int $maxBanners): array { $now = new DateTime(); $zone = ZoneTable::getByCode($zoneCode); // Получаем кандидатов: активные, в сроке, лимит не исчерпан, подходящий таргетинг $candidates = BannerTable::getList([ 'filter' => [ 'ZONE_ID' => $zone['ID'], 'STATUS' => 'active', '<=DATE_FROM' => $now, ['LOGIC' => 'OR', '>=DATE_TO' => $now, '=DATE_TO' => false], ['LOGIC' => 'OR', '=IMPRESSIONS_LIMIT' => 0, '>IMPRESSIONS_LIMIT' => new SqlExpression('IMPRESSIONS_COUNT')], ], ])->fetchAll(); // Фильтр таргетинга $candidates = array_filter($candidates, fn($b) => $this->matchesTargeting($b)); // Взвешенная случайная выборка return $this->weightedRandom($candidates, $maxBanners); } private function weightedRandom(array $items, int $count): array { // Реализация weighted reservoir sampling $totalWeight = array_sum(array_column($items, 'WEIGHT')); // ... } } 

מודל נתונים ואזורי הצבה

המודול class BannerSelector { public function select(string $zoneCode, int $maxBanners): array { $now = new DateTime(); $zone = ZoneTable::getByCode($zoneCode); // Получаем кандидатов: активные, в сроке, лимит не исчерпан, подходящий таргетинг $candidates = BannerTable::getList([ 'filter' => [ 'ZONE_ID' => $zone['ID'], 'STATUS' => 'active', '<=DATE_FROM' => $now, ['LOGIC' => 'OR', '>=DATE_TO' => $now, '=DATE_TO' => false], ['LOGIC' => 'OR', '=IMPRESSIONS_LIMIT' => 0, '>IMPRESSIONS_LIMIT' => new SqlExpression('IMPRESSIONS_COUNT')], ], ])->fetchAll(); // Фильтр таргетинга $candidates = array_filter($candidates, fn($b) => $this->matchesTargeting($b)); // Взвешенная случайная выборка return $this->weightedRandom($candidates, $maxBanners); } private function weightedRandom(array $items, int $count): array { // Реализация weighted reservoir sampling $totalWeight = array_sum(array_column($items, 'WEIGHT')); // ... } } כולל שלוש ישויות:

  • vendor.banners — באנרים: id, name, zone_id, image_id, image_mobile_id, url, target, alt, title, html_code, date_from, date_to, priority, weight, impressions_limit, impressions_count, clicks_count, status, targeting (JSON), created_at
  • b_vendor_banner — אזורים: id, code, name, description, width, height, max_banners, is_active
  • b_vendor_banner_zone — סטטיסטיקות יומיות: banner_id, date, impressions, clicks, ctr
  • b_vendor_banner_stat — חשיפות גולמיות (אופציונלי): id, banner_id, user_id, session_id, ip, user_agent, created_at

אזורים הם מקומות בעלי שם באתר: b_vendor_banner_impression, header_top, sidebar_right, content_after_article. בתבנית, אנו מחברים את הרכיב:

$APPLICATION->IncludeComponent('vendor:banners.zone', '', [ 'ZONE_CODE' => 'header_top', 'MAX_BANNERS' => 1, ]); 

כיצד פועלים מיקוד והגנה מפני הונאת קליקים?

המיקוד מאוחסן בשדה JSON footer_banner:

{ "geo": {"city_ids": [1, 15, 42]}, "user_groups": [3, 9], "device": "mobile", "pages": ["/catalog/", "/sale/"], "new_visitors_only": true } 

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

// Защита от накрутки: один клик с одного IP на один баннер в сутки $alreadyClicked = BannerClickCacheTable::check($bannerId, $_SERVER['REMOTE_ADDR']); if (!$alreadyClicked) { BannerTable::update($bannerId, ['CLICKS_COUNT' => new SqlExpression('CLICKS_COUNT + 1')]); StatTable::increment($bannerId, 'clicks'); BannerClickCacheTable::set($bannerId, $_SERVER['REMOTE_ADDR']); } 

אנו תומכים בבאנרי HTML עם קוד מותאם אישית (אנימציה, וידאו) — עריכה דרך עורך חזותי עם הגבלת תגים מסוכנים.

ממשק ניהול וסטטיסטיקות

  • רשימת באנרים עם תצוגה מקדימה, סטטוס, CTR ומתג פעילות מהיר.
  • טופס יצירה/עריכה עם העלאת תמונה, הגדרות מיקוד ומשקלים.
  • ניהול אזורי הצבה.
  • סטטיסטיקות באנר: גרף חשיפות/קליקים, CTR, השוואה לתקופה קודמת.

עבור לקוח אחד עם 5000 מוצרים ו-50 אזורים, יישמנו מודול שהעלה את ה-CTR ב-40% והפחית את זמן ניהול הבאנרים משעתיים ל-15 דקות ביום. הזמינו פיתוח מודול וקבלו ייעוץ לפרויקט שלכם.

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

להלן התוצרים לכל שלב:

שלב תוצרים
בדיקת באנרים ואזורים קיימים דוח עם המלצות, מפת הצבה
עיצוב מודל ORM תיעוד טבלאות, דיאגרמת זרימת נתונים
פיתוח אלגוריתמי בחירה ורוטציה קוד מודול עם בחירה אקראית משוקללת
הגדרת מיקוד והגנה מפני הונאה אב טיפוס פונקציונלי עם מיקוד גיאוגרפי והתקני, הגנה מפני הונאת קליקים
ממשק ניהול ממשק משתמש לניהול באנרים, אזורים וסטטיסטיקות
אינטגרציה עם האתר רכיבים לתבניות (לדוגמה, $APPLICATION->IncludeComponent('vendor:banners.zone', '', [ 'ZONE_CODE' => 'header_top', 'MAX_BANNERS' => 1, ]); )
בדיקות והשקה מודול עובד על שרת ייצור, מדריך משתמש, מדריך מנהל

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

שלב משך
טבלאות ORM, מודל אזורים ובאנרים יום אחד
אלגוריתם בחירה, רוטציה משוקללת יום אחד
מיקוד, אינטגרציית גיאולוקציה יום אחד
ספירת חשיפות וקליקים, הגנה מפני הונאה יום אחד
באנרי HTML, עורך יום אחד
סטטיסטיקות, גרפי CTR יום אחד
ממשק ניהול יומיים
בדיקות יום אחד

סה"כ: מ-9 ימי עסקים. העלות מחושבת באופן אישי — צרו קשר כדי לדון בפרויקט שלכם ולקבל ייעוץ. אנו מבטיחים תמחור שקוף ולוחות זמנים קבועים בחוזה.

עבור באנרים פרסומיים, אנו משתמשים בגישות מוכחות מ-1С-Битрикс ו-תקני אינטרנט.