הגדרת Yandex.Webvisor ב-1C-Bitrix: מדריך מלא

תארו לעצמכם: הגדרתם את Webvisor, אבל הפעלות לא מוקלטות. קונסולת הדפדפן מלאה בשגיאות CSP. נשמע מוכר? במשך 10+ שנים, ערכנו יותר מ-500 ביקורות על אתרי Bitrix ומצאנו בעיות Webvisor בכל אתר שלישי. נראה לכם כיצד להגדיר כראוי את Webvisor ב-1C-Bitri
השירותים שאנו מציעים
מציג 1 מתוך 1כל 1626 השירותים
הגדרת Yandex.Webvisor ב-1C-Bitrix: מדריך מלא
פשוט
~1 יום

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

שאלות נפוצות

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

  • פיתוח אתר חברה B2B ADVANCE
    פיתוח אתר חברה B2B ADVANCE
    1460
  • פיתוח אתר לחברת FIXPER
    פיתוח אתר לחברת FIXPER
    1019
  • פיתוח מבוסס Bitrix, Bitrix24, 1C לחברה פיתוח ווידג'ט להזמנת תורים אונליין למרכז רפואי
    פיתוח מבוסס Bitrix, Bitrix24, 1C לחברה פיתוח ווידג'ט להזמנת תורים אונליין למרכז רפואי
    764
  • פיתוח על בסיס 1C Enterprise עבור MIRSANBEL
    פיתוח על בסיס 1C Enterprise עבור MIRSANBEL
    882
  • פיתוח אתר על CRM Bitrix24 עבור DOLBIMBY
    פיתוח אתר על CRM Bitrix24 עבור DOLBIMBY
    809
  • פיתוח על בסיס Bitrix24 עבור חברת TECHNOTORGKOMPLEKS
    פיתוח על בסיס Bitrix24 עבור חברת TECHNOTORGKOMPLEKS
    1166

תארו לעצמכם: הגדרתם את Webvisor, אבל הפעלות לא מוקלטות. קונסולת הדפדפן מלאה בשגיאות CSP. נשמע מוכר? במשך יותר מ-10 שנים, ביצענו יותר מ-500 ביקורות אתרי Bitrix ומצאנו בעיות Webvisor בכל אתר שלישי. נראה לכם כיצד להגדיר כראוי את Webvisor על 1C-Bitrix כך שהקלטת הפעלות תעבוד ביציבות וללא אובדן נתונים. הצוות שלנו צבר ניסיון על מאות פרויקטים—מחנויות מקוונות קטנות ועד קטלוגים גדולים עם מיליוני פריטים.

מדוע Webvisor לעתים קרובות לא עובד על Bitrix?

Webvisor לא יעבוד על אתר HTTPS עם כותרות CSP שגויות—הקלטת הפעלות עוברת דרך iframe של Yandex, והדפדפן חוסם אותה אם Content-Security-Policy לא מורשה ב-frame-ancestors. הסיבה הנפוצה השנייה: תג Metrica מוכנס דרך Google Tag Manager, GTM נטען בצורה אסינכרונית, ו-Webvisor מאותחל לאחר שהמשתמש כבר ביצע את הפעולות הראשונות שלו—תחילת ההפעלה אובדת. שלישית—ניווט AJAX: ללא קריאה מפורשת ל-ym('hit') לאחר כל מעבר, Webvisor מקליט רק את העמוד הראשון. לפי הסטטיסטיקות שלנו, 70% מהאתרים עם ניווט AJAX מאבדים עד 40% מההפעלות בגלל שגיאה זו.

כיצד למקם כראוי את תג Metrica?

Yandex דורש למקם את התג גבוה ככל האפשר ב-<head>. ב-Bitrix, השיטה הסטנדרטית היא הכנסה דרך אירוע OnBeforeProlog ב-init.php או ישירות בקובץ prolog /bitrix/templates/ШАБЛОН/header.php.

ב-/bitrix/php_interface/init.php:

AddEventHandler('main', 'OnBeforeProlog', function() { ob_start(); ?> <!-- Яндекс.Метрика --> <script> (function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)}; var z = m[i],d=e.createElement(t),n=e.getElementsByTagName(t)[0]; d.async=1;d.src=r;d.id='metrika-'; n.parentNode.insertBefore(d,n); z(i,'init', { id: XXXXXXXX, webvisor: true, clickmap: true, trackLinks: true }); })(window, document, 'script', 'https://cdn.jsdelivr.net/npm/yandex-metrika@latest/metrika.js', 'ym'); </script> <!-- /Яндекс.Метрика --> <?php $html = ob_get_clean(); $GLOBALS['APPLICATION']->AddHeadString($html, true); }); 

לחלופין, השתמשו ברכיב AddEventHandler('main', 'OnBeforeProlog', function() { ob_start(); ?> <!-- Яндекс.Метрика --> <script> (function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)}; var z = m[i],d=e.createElement(t),n=e.getElementsByTagName(t)[0]; d.async=1;d.src=r;d.id='metrika-'; n.parentNode.insertBefore(d,n); z(i,'init', { id: XXXXXXXX, webvisor: true, clickmap: true, trackLinks: true }); })(window, document, 'script', 'https://cdn.jsdelivr.net/npm/yandex-metrika@latest/metrika.js', 'ym'); </script> <!-- /Яндекс.Метрика --> <?php $html = ob_get_clean(); $GLOBALS['APPLICATION']->AddHeadString($html, true); }); הסטנדרטי—הוא במודול bitrix:metrika ומותקן מה-Marketplace. עם זאת, הגישה שלנו דרך fileman אמינה יותר: היא מבטיחה טעינה לפני כל סקריפט אחר. הטבלה שלהלן משווה בין שתי השיטות.

פרמטר דרך init.php (הגישה שלנו) דרך רכיב bitrix:metrika
בקרת טעינה מלאה—קוד מוכנס לפני ob_start תלוי בתבנית, עלול להיטען אחרי jQuery
תאימות CSP מוגדר ידנית ב-init.php דורש שינוי רכיב
תמיכת AJAX נדרש handler נוסף נדרש handler נוסף
המלצה לפרויקטים עם תבניות מותאמות אישית להתקנות טיפוסיות

אילו הגדרות CSP נדרשות עבור Webvisor?

Webvisor מקליט את המסך דרך OnBeforeProlog בדומיין <iframe title="Embedded content">. אם לשרת (nginx או דרך כותרות PHP) יש CSP מחמיר, ההקלטה לא תתחיל—הקונסולה תראה שגיאה webvisor.com.

סט מינימלי של הוראות עבור Webvisor כדי שיפעל:

Content-Security-Policy: frame-src 'self' https://webvisor.com; script-src 'self' 'unsafe-inline' https://mc.yandex.ru https://cdn.jsdelivr.net; img-src 'self' data: https://mc.yandex.ru; 

ב-Bitrix, ניתן להגדיר כותרות ב-Refused to frame ... because an ancestor violates the following Content Security Policy directive או ב-Content-Security-Policy: frame-src 'self' https://webvisor.com; script-src 'self' 'unsafe-inline' https://mc.yandex.ru https://cdn.jsdelivr.net; img-src 'self' data: https://mc.yandex.ru; דרך /bitrix/.htaccess—אבל רק לפני פלט ה-HTML הראשון. אם אתם משתמשים ב-init.php ב-prolog, זו לא בעיה. קראו עוד על הוראות CSP ב-MDN.

מה לעשות אם Webvisor לא רואה מעברי AJAX?

רוב התבניות המודרניות של Bitrix משתמשות בניווט AJAX (BX.ajax, רכיב header()). בעת מעבר ללא טעינת עמוד מחדש, Webvisor לא מקליט את שינוי ה-URL—כל הביקור מופיע כעמוד יחיד בהקלטת ההפעלה.

פתרון: קראו ל-ob_start() לאחר כל מעבר AJAX. ב-Bitrix, יש אירוע bitrix:main.ajaxlinks—התחברו אליו:

BX.addCustomEvent('onAjaxSuccess', function(event) { if (typeof ym !== 'undefined') { ym(XXXXXXXX, 'hit', window.location.href); } }); 

ללא זה, נתוני Webvisor יהיו שגויים: כל מעברי הקטלוג יוקלטו כביקור יחיד בעמוד הכניסה. הניסיון שלנו מראה שבעיה זו מתרחשת ב-70% מהאתרים עם ניווט AJAX.

פעם הגדרנו את Webvisor לחנות מקוונת עם קטלוג של 100,000 מוצרים. הבעיה הייתה שמעברי AJAX לא הפעילו את ym(XXXXXXXX, 'hit', window.location.href), ו-Webvisor הראה רק עמוד אחד לכל הפעלה. לאחר יישום ה-handler, ההקלטה תפסה עד 15 עמודים לכל ביקור—ונתנה תמונה מלאה של התנהגות המשתמש.

כיצד לוודא ש-Webvisor עובד?

לאחר ההגדרה, בדקו את סעיף 'ניטור' ב-Webvisor. אם הפעלות מוקלטות אבל הווידאו שחור, הבעיה היא תוכן מעורב (משאבי HTTP באתר HTTPS). אם לא מופיעות הפעלות כלל, הסתכלו בכרטיסיית Network ב-DevTools על בקשות ל-BX.addCustomEvent('onAjaxSuccess', ...): סטטוס 200 אומר שהמונה עובד אבל הנתונים עדיין לא עובדו (עיכוב של עד 20 דקות להפעלות חדשות).

מה כלול בהגדרת Webvisor במפתח מלא

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

שלב פעולה תוצאה
1. ביקורת בדיקת תג Metrica הנוכחי, CSP, ניווט AJAX דוח עם שגיאות והמלצות
2. יישום התקנת מונה ב-init.php, הגדרת CSP, handler AJAX Webvisor עובד עם הקלטה נכונה
3. בדיקות אימות בניטור, הקלטת הפעלת בדיקה אישור תקינות
4. תיעוד תיאור העבודה שבוצעה, קונפיגורציות, הוראות תמיכה הערה ארכיטקטונית

אנו מבטיחים שאחרי העבודה שלנו, Webvisor יקליט 100% מההפעלות (למעט חסימות דפדפן). הודות ל-10+ שנות ניסיון ומאות פרויקטים מיושמים, אנו מכירים את כל המלכודות. אם אתם נתקלים בבעיות, קבלו ייעוץ חינם. צרו קשר כדי להעריך את לוח הזמנים של הפרויקט שלכם. הזמינו הגדרת Webvisor במפתח מלא—אנו נתקן בעיות הקלטת הפעלות תוך 2-3 ימים.