# 🌐 Контексты

Контексты помогают платформе понимать пользовательский путь на сайте, размещать плейсменты в нужных ситуациях и запускать кампании в соответствии с условиями таргетинга.

Существует шесть видов контекста страниц. Ниже приведено описание каждого из них.

---

### 🏠 HOMEPAGE

Для главной страницы сайта.  

+++ Javascript 
```jsx 
GF.pageContext = {type: "HOMEPAGE"}; 
``` 
+++ API  
```jsx
{  
    "ctx": {  
        "type": "HOMEPAGE"  
    }  
}  
```
+++

---

### 📂 CATEGORY

Для страниц категорий.  

- В массиве `data` передается иерархия категорий от самой широкой до самой узкой.  
- Названия категорий должны совпадать с [продуктовым фидом](../products_catalogues/general_reqs.md).  

Пример:  

+++ Javascript  
```jsx
GF.pageContext = {type: "CATEGORY", data: ["Малому и среднему бизнесу"]};  
```
+++ API  
```jsx
{  
    "ctx": {  
        "type": "CATEGORY",  
        "data": ["Малому и среднему бизнесу"]  
    }  
}  
```
+++

---

### 🛒 PRODUCT

Для страниц продуктов.  

- В массиве `data` передается SKU товара.  
- SKU должен совпадать с продуктовым фидом.  

Пример:  

+++ Javascript 
```jsx 
GF.pageContext = {type: "PRODUCT", data: ["XD-154"]};
```  
+++ API  
```jsx
{  
    "ctx": {  
        "type": "PRODUCT",  
        "data": ["XD-154"]  
    }  
}  
```
+++

---

### 🛍️ CART

Для страниц корзины.  

- В массиве `data` передаются SKU всех продуктов, находящихся в корзине.  

Пример:  

+++ Javascript  
```jsx
GF.pageContext = {type: "CART", data: ["XD-154", "DL-5874", "TN-15", "QSD-1581", "XD-15"]};  
```
+++ API  
```jsx
{  
    "ctx": {  
        "type": "CART",  
        "data": ["XD-154", "DL-5874", "TN-15", "QSD-1581", "XD-15"]  
    }  
}  
```
+++

---

### 🔄 OTHER

Для всех страниц, не подходящих под другие категории.  

Используется, например, для:  
- Статических страниц.  
- Категорий, не включенных в товарный фид.  

Пример:  

+++ Javascript  
```jsx
GF.pageContext = {type: "OTHER"};
```  
+++ API  
```jsx
{  
    "ctx": {  
        "type": "OTHER"  
    }  
}  
```
+++

---

### 🔍 SEARCH

Для страниц поиска.  

- В массиве `data` передается поисковой запрос в виде строки.  
- Для пустого поиска передается пустой массив.  

Пример:  

+++ Javascript  
```jsx
GF.pageContext = {type: "SEARCH", data: ["search query"]}; 
``` 
+++ API  
```jsx
{  
    "ctx": {  
        "type": "SEARCH",  
        "data": ["search query"]  
    }  
}  
```
+++

## Мультиязычность и мультирегиональность

Если сайт существует на множестве языков или бизнес подразумевает различные цены и наличие для разных регионов, необходимо дополнительно учитывать это в контекстах в соответствии со следующей документацией:

📖 Подробнее: [Мультиязычность и мультирегиональность](../products_catalogues/multi_language.md)
