+
Skip to content
forked from hywax/ya-metrika

PHP библиотека для удобного взаимодействия с Yandex Metrika API

License

Notifications You must be signed in to change notification settings

alek13/ya-metrika

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Yandex Metrika API

Библиотека для удобного взаимодействия с Yandex Metrika API

Latest Stable Version Latest Unstable Version License

Оглавление

  1. Старт
  2. Использование
  3. Автор
  4. Лицензия

Старт

Установка через composer

$ composer require axp-dev/ya-metrika

Получение токена

  1. Переходим на страницу oauth.yandex.ru
  2. Нажимаем "Зарегистрировать новое приложение"
  3. Вписываем название и выбираем "Получение статистики, чтение параметров своих и доверенных счетчиков"
  4. Выбираем "Подставить URL для разработки"
  5. Копируем ID
  6. Переходим по ссылке: https://oauth.yandex.ru/authorize?response_type=token&client_id=ВАШ ID
  7. Подтверждаем запрос

Инициализация

$token = '';
$counter_id = '';
$YaMetrika = new YaMetrika($token, $counter_id);

// Пример использования без форматирвоания
$traffic = $YaMetrika->getPreset('traffic')
                     ->data;

// Пример использования с форматированием
$traffic = $YaMetrika->getPreset('traffic', 30, 15)
                     ->format()
                     ->formatData;
                     
// Пример произвольного запроса
$data = [
    'date1'     => Carbon::yesterday()->format('Y-m-d'),
    'date2'     => Carbon::today()->format('Y-m-d'),
    'metrics'   => 'ym:s:visits',
];
$visits = $YaMetrika->customQuery($data)
                    ->data;

Использование

Для форматирования данных необходимо вызвать format(). Для произвольных запросов данный метод также работает.

Данные по посещаемости

Будут получены данные: визитов, просмотров, уникальных посетителей по дням.

За последние N дней

public function getVisitors($days = 30) : self
Название Тип Описание
$days integer Кол-во дней. По умолчанию 30

За указанный период

public function getVisitorsForPeriod(DateTime $startDate, DateTime $endDate) : self
Название Тип Описание
$startDate DateTime Начальная дата
$endDate DateTime Конечная дата

Самые просматриваемые страницы

За последние N дней

public function getMostViewedPages($days = 30, $limit = 10) : self
Название Тип Описание
$days integer Кол-во дней. По умолчанию 30
$limit integer Лимит записей. По умолчанию 10

За указанный период

public function getMostViewedPagesForPeriod(DateTime $startDate, DateTime $endDate, $limit = 10) : self
Название Тип Описание
$startDate DateTime Начальная дата
$endDate DateTime Конечная дата
$limit integer Лимит записей. По умолчанию 10

Браузеры пользователей

За последние N дней

public function getBrowsers($days = 30, $limit = 10) : self
Название Тип Описание
$days integer Кол-во дней. По умолчанию 30
$limit integer Лимит записей. По умолчанию 10

За указанный период

public function getBrowsersForPeriod(DateTime $startDate, DateTime $endDate, $limit = 10) : self
Название Тип Описание
$startDate DateTime Начальная дата
$endDate DateTime Конечная дата
$limit integer Лимит записей. По умолчанию 10

Пользователи из поисковых систем

За последние N дней

public function getUsersSearchEngine($days = 30, $limit = 10) : self
Название Тип Описание
$days integer Кол-во дней. По умолчанию 30
$limit integer Лимит записей. По умолчанию 10

За указанный период

public function getUsersSearchEngineForPeriod(DateTime $startDate, DateTime $endDate, $limit = 10) : self
Название Тип Описание
$startDate DateTime Начальная дата
$endDate DateTime Конечная дата
$limit integer Лимит записей. По умолчанию 10

Пользователи по странам и регионам

За последние N дней

public function getGeo($days = 7, $limit = 20) : self
Название Тип Описание
$days integer Кол-во дней. По умолчанию 7
$limit integer Лимит записей. По умолчанию 20

За указанный период

public function getGeoForPeriod(DateTime $startDate, DateTime $endDate, $limit = 20) : self
Название Тип Описание
$startDate DateTime Начальная дата
$endDate DateTime Конечная дата
$limit integer Лимит записей. По умолчанию 20

Пол и возраст пользователей

За последние N дней

public function getAgeGender($days = 30, $limit = 20) : self
Название Тип Описание
$days integer Кол-во дней. По умолчанию 30
$limit integer Лимит записей. По умолчанию 20

За указанный период

public function getAgeGenderForPeriod(DateTime $startDate, DateTime $endDate, $limit = 20) : self
Название Тип Описание
$startDate DateTime Начальная дата
$endDate DateTime Конечная дата
$limit integer Лимит записей. По умолчанию 20

Данные по шаблону

Шаблоны (preset) автоматически задают метрики и группировки, которые необходимы для того или иного отчета. Список всех шаблонов доступен по ссылке - tech.yandex.ru/metrika/../presets-docpage.

За последние N дней

public function getPreset($template, $days = 30, $limit = 10) : self
Название Тип Описание
$template string Название шаблона
$days integer Кол-во дней. По умолчанию 30
$limit integer Лимит записей. По умолчанию 10

За указанный период

public function getPresetForPeriod($template, DateTime $startDate, DateTime $endDate, $limit = 10) : self
Название Тип Описание
$template string Название шаблона
$startDate DateTime Начальная дата
$endDate DateTime Конечная дата
$limit integer Лимит записей. По умолчанию 10

Произвольный запрос

Параметры ids и oauth_token передавать не нужно.

public function customQuery($params) : self
Название Тип Описание
$params array Параметры запроса

Автор

Alexander Pushkarev, e-mail: axp-dev@yandex.com

Лицензия

Основой Yandex Metrika API являет открытый исходный код, в соответствии MIT license

About

PHP библиотека для удобного взаимодействия с Yandex Metrika API

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 100.0%
点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载