# Интеграция Интеграция --- это процесс подключения потока Adspect к трафику. Сразу после создания потока вы будете направлены на страницу интеграции. На эту страницу также можно попасть по кнопке "Интеграция" рядом с именем потока в списке потоков. :::{note} Файлы интеграции Adspect не содержат в себе настроек потока. Вы можете изменять любые настройки потока в любое время, и эти изменения будут автоматически подхвачены "на лету", т.е. вам не нужно заменять файлы каждый раз после редактирования настроек. ::: (php-integration)= ## PHP-интеграция PHP-интеграция представлена в двух видах: прямая и обратная. Они различаются способом взаимодействия наших фильтрующих файлов и ваших *локально размещенных* страниц, если они есть. Иначе говоря, различие в том, какой из файлов принимает входящий трафик. В остальном оба вида равнозначны по уровню безопасности. Выбирайте тот, который вам более удобен. (forward-php-integration)= ## Прямая PHP-интеграция В прямой PHP-интеграции трафик приходит на специальный PHP-файл, который проверяет посетителей и распределяет их далее между контентом и белой страницей. Файл обычно называется `index.php` и загружается в корень вашего домена на ваш хостинг. После загрузки файла ссылка на него будет вашей заклоаченной ссылкой для использования в рекламных кампаниях. :::{note} Если ваша контент-страница или белая страница расположена в той же директории, что и наш `index.php`, и называется `index.html` (или `index.htm`), то вам следует ее переименовать, т.к. `index.html` вероятно будет иметь приоритет над нашим файлом `index.php` при переходе по ссылке без явного указания имени файла после `/`. Это связано со спецификой настроек многих веб-серверов. Переименуйте `index.html` в длинное, сложно угадываемое имя, например `utoynzybquoc3Od.html`, укажите это имя в поле контента/белой страницы и выберите действие "Локальный файл без редиректа". ::: :::{tip} Вы можете переименовать `index.php` в любое другое имя, оканчивающееся на `.php`, и таким образом интегрировать несколько потоков на одном домене под разными именами файлов, например `https://example.com/stream1.php`, `https://example.com/stream2.php` и т.д. ::: (reverse-php-integration)= ## Обратная PHP-интеграция Также имеется немного отличающаяся обратная PHP-интеграция, в которой используется файл `filter.php`. Этот файл подключается напрямую к вашей PHP-странице (обычно к белой странице) при помощи одной строчки PHP-кода. Трафик приходит напрямую на эту страницу, наш код из файла `filter.php` проверяет его и отправляет целевых посетителей далее на контент, а модераторов и ботов оставляет на белой странице. Для обратной PHP-интеграции вам нужно скачать файл `filter.php` на вкладке "Обратная PHP-интеграция" и разместить его в папке вашего сайта или лендинга. Несколько одинаковых файлов `filter.php` могут использоваться параллельно для защиты нескольких сайтов или лендингов, при этом не мешая друг другу. Затем добавьте следующий код **первой строчкой (перед всем остальным кодом)** в индексный файл вашего сайта или лендинга (обычно называется `index.php`): ```php ``` :::{tip} Если ваш сайт написан на чистом HTML, то вы можете поменять расширение вашего файла с `.html` на `.php`, а затем добавить в него указанную строчку кода. ::: * Если вы добавили код в файл вашей белой страницы, то в настройках потока оставьте поле белой страницы пустым и укажите действие **"Без действия"** для белой страницы. Adspect не будет предпринимать никаких действий и оставит посетителя на текущей странице, которая и является белой. * Аналогично, если вы добавили код в контент-страницу, то в настройках потока оставьте поле контента пустым и укажите действие **"Без действия"** для контента. После настройки просто направьте трафик на ту страницу, в которую вы добавили код. (wordpress-and-other-cms)= ## WordPress и другие CMS Обратная PHP-интеграция удобна для интеграции Adspect в сайты, построенные на WordPress или других подобных CMS ([content management system](https://ru.wikipedia.org/wiki/%D0%A1%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0_%D1%83%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F_%D1%81%D0%BE%D0%B4%D0%B5%D1%80%D0%B6%D0%B8%D0%BC%D1%8B%D0%BC)). WordPress имеет файл `index.php` в корневой папке. Именно в этот файл вам и нужно вставить строчку кода, как было описано выше: ```{code-block} php :caption: Добавление кода в WordPress в корневой файл index.php :emphasize-lines: 1 :lineno-start: 1 'fd808d23604d84fbc5e81d7b954c4f9a', 'ok' => true, 'js' => false, 'action' => 'local', 'target' => 'page.php?utm_campaign=test' ) ``` Значение элементов массива: | Элемент | Описание | |:---------|:---------| | `cid` | Внутренний уникальный идентификатор перехода, строка (будет одинаковым на всех этапах обработки перехода). | | `ok` | Был ли переход посчитан целевым, логический. | | `js` | Требуется ли отдать посетителю код сбора JS-отпечатка, логический (всегда будет иметь значение `false`, так как сбор отпечатков происходит до того, как управление будет передано в ваш код). | | `action` | Действие, выполненное для этого перехода, строка (обычно или `local`, или `noop`). | | `target` | Цель для выполненного действия (URL, путь к файлу, код), строка. | (hidden-url-parameters)= ## Скрытые URL-параметры Иногда бывает необходимо передать в Adspect URL-параметр, которого физически нет в ссылке. Например, при работе нескольких рекламных кампаний через один поток удобно их разделять по sub ID, но не всегда желательно открыто его указывать в рекламной ссылке. Это легко решается при обратной PHP-интеграции путем добавления нужного параметра в суперглобальный массив `$_GET` перед вызовом кода Adspect: ```php