Ця функція є частиною загальнодоступної бета-версії і може бути змінена.
Ці вказівки призначено для адміністраторів і редакторів, які хочуть дізнатися, як налаштувати фрагмент коду для збирання даних, наданих користувачами, на своєму вебсайті за допомогою Менеджера тегів Google.
На відміну від інших варіантів конфігурації, оновлення коду допомагає забезпечити відображення електронних адрес, номерів телефонів і/або імен і адрес на сторінках, коли Analytics збирає дані, надані користувачами.
Огляд
Щоб налаштувати фрагмент коду за допомогою Менеджера тегів Google, виконайте наведені нижче дії.
- Визначте поля даних, наданих користувачами, у коді вебсайту.
- Передайте кожне поле даних, наданих користувачами, у спеціальній змінній JavaScript у Google Analytics.
Примітка. У Google Analytics можна надсилати хешовані або нехешовані дані клієнтів. Коли ви надсилаєте нехешовані дані, Google хешує їх, перш ніж зберігати на своїх серверах. Ви також можете хешувати дані, перш ніж надсилати їх у Google.
Перш ніж почати
Щоб виконати ці вказівки, ви повинні:
- мати доступ до вихідного коду вебсайту;
- увімкнути збирання й використання даних, наданих користувачами;
- налаштувати тег Google Analytics: подія Google Analytics 4 в контейнері Менеджера тегів Google;
- мати роль адміністратора ресурсу Google Analytics.
Hashing the data
You can send hashed or unhashed data from a website. If you send unhashed data, Google normalizes and hashes the data before the data reaches Google's servers. To ensure Analytics interprets the data correctly and to comply with the User-provided data policy, you must use the correct key name (in the next section).
To hash the data:
- Use hex SHA256.
To normalize the data:
- Remove leading or trailing whitespaces.
- Convert the text to lowercase.
- Format phone numbers according to the E.164 standard.
Defining the fields in your code
You must provide at least one of these fields:
- Email (preferred).
- Address (first name, last name, postal code, and country are required). You can optionally provide street address, city, and region as additional match keys.
- A phone number can also be provided along with an email or full name and address.
Make sure the data is available when the Google tag fires. If the data is collected on a previous page, make sure it’s available in your code on the current page so you can configure the field.
Fields to set
The following table describes each field you can set. The key name shows how you must reference the field in your code. You must pass the data as a String type. When defining name and address, make sure to define each component as an individual variable (for example, first name, last name, and so on).
Note: If you want to send unhashed data and let Google normalize and hash the data, use the first key name for each data field. For example, email in the Email address data field below. If you want to send hashed data, use the key name that begins with sha256_.
Data Field | Key Name | Description |
---|---|---|
Email address | email |
User email. Example: ‘[email protected]’ |
sha256_email_address |
Hashed user email. Example: ‘a8af8341993604f29cd4e0e5a5a4b5d48c575436c38b28abbfd7d481f345d5db’ |
|
Phone number | phone_number |
User phone number. Must be in E.164 format, which means it must be 11 to 15 digits including a plus sign (+) prefix and country code with no dashes, parentheses, or spaces. Example: ‘+11231234567’ |
sha256_phone_number |
Hashed user phone number. Example: ‘e9d3eef677f9a3b19820f92696be53d646ac4cea500e5f8fd08b00bc6ac773b1’ |
|
First name | address.first_name |
User first name. Example: 'John' |
address.sha256_first_name |
Hashed user first name. Example: ‘96d9632f363564cc3032521409cf22a852f2032eec099ed5967c0d000cec607a’ |
|
Surname | address.last_name |
User last name. Example: 'Doe' |
address.sha256_last_name |
Hashed user last name. Example: ‘799ef92a11af918e3fb741df42934f3b568ed2d93ac1df74f1b8d41a27932a6f’ |
|
Street address | address.street |
User street address. Example: '123 New Rd' |
City | address.city |
User city name. Example: `Southampton’ |
Region | address.region |
User province, state, or region. Example: `Hampshire’ |
Postal code | address.postal_code |
User post code. Example: 'SO99 9XX' |
Country | address.country |
User country code. Example: 'UK'. Use 2-letter country codes, per the ISO 3166-1 alpha-2 standard. |
Додавання спеціальної змінної JavaScript у тег події
Перш ніж оновлювати контейнер Менеджера тегів, прочитайте, як оновити спеціальний код JavaScript, який ви додаватимете в контейнер.
- Увійдіть у Менеджер тегів Google.
- На вкладці Робоча область натисніть ліворуч Теги.
- Відкрийте тег Google Analytics: подія Google Analytics 4, за допомогою якого ви збираєте дані клієнтів. Переконайтеся, що тег події використовує ідентифікатор потоку даних для вебпотоку, у якому збираються дані користувачів.
- Виберіть Включати дані з вебсайту, надані користувачами.
- У спадному меню Дані користувача виберіть або створіть змінну для даних, наданих користувачами.
- Якщо ви створюєте нову змінну, у змінній "Дані, надані користувачами" виберіть Код.
- У спадному меню Джерело даних натисніть Нова змінна…
- Натисніть Конфігурація змінної > Спеціальна змінна JavaScript.
- Введіть назву спеціальної змінної JavaScript угорі сторінки.
- У текстовому полі Спеціальна змінна JavaScript введіть фрагмент коду. Докладніше.
- Збережіть нові змінні й тег події.
- У верхньому правому куті натисніть Надіслати, щоб опублікувати зміни.
Створення фрагмента коду для збирання даних, наданих користувачами
Налаштовуючи спеціальну змінну JavaScript у кроці 10, використовуйте наведений нижче код.
function () {
return {
"email": вашаЗміннаЕлектронноїАдреси , // замініть значення "вашаЗміннаЕлектронноїАдреси" на назву змінної, через яку передається електронна адреса користувача
"phone_number": вашаЗміннаНомераТелефону, // аналогічним чином замініть значення "вашаЗміннаНомераТелефону" й інші назви змінних нижче
"address": {
"first_name": вашаЗміннаІмені,
"last_name": вашаЗміннаПрізвища,
"street": вашаЗміннаАдреси,
"city": вашаЗміннаНазвиМіста,
"region": вашаЗміннаНазвиОбласті,
"postal_code": вашаЗміннаПоштовогоІндексу,
"country": вашаЗміннаНазвиКраїни
}
}
}
Також можна задавати значення для потрібного поля безпосередньо в коді скрипта або використовувати функцію замість змінних.
// Implement
<script>
gtag('set', 'user_data', {
"sha256_email_address"
: вашаЗміннаНормалізованоїХешованоїЕлектронноїАдреси,"sha256_phone_number"
: вашаЗміннаНормалізованогоХешованогоНомераТелефону,"address": {
"address.sha256_first_name"
: вашаЗміннаНормалізованогоХешованогоІмені,"address.sha256_last_name"
: вашаЗміннаНормалізованогоХешованогоПрізвища,"city"
: вашаЗміннаНазвиМіста,"region"
: вашаЗміннаНазвиОбласті,"postal_code"
: вашаЗміннаПоштовогоІндексу,"country"
: вашаЗміннаНазвиКраїни}
});
</script>
Якщо ви хочете надати хешовані дані користувача, можете скористатися наведеним нижче прикладом коду.
async function processUserData() {
const userData = {
'sha256_email_address'
: await hashEmail(email.trim()),'sha256_phone_number'
: await hashPhoneNumber(phoneNumber),'address': {
'address.sha256_first_name'
: await hashName(firstName),'address.sha256_last_name'
: await hashName(lastName),'city'
: city,'region'
: region,'postal_code'
: postalCode,'country'
: country,},
};
return userData;
Указуйте номери телефонів у форматі E.164: 11–15 цифр, зокрема префікс "плюс" (+) і код країни без дефісів, дужок і пробілів.
Next steps
Validate that user-provided data collection is set up correctly. Show me how.