Skip to content

Commit

Permalink
Added getUsersSearchEngine method
Browse files Browse the repository at this point in the history
  • Loading branch information
axp-dev committed Jul 29, 2017
1 parent f9491b3 commit 244c6a5
Show file tree
Hide file tree
Showing 3 changed files with 77 additions and 0 deletions.
20 changes: 20 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,26 @@ $startDate | DateTime | Начальная дата
$endDate | DateTime | Конечная дата
$limit | integer | Лимит записей. По умолчанию 10

### Пользователи из поисковых систем
#### За последние N дней
```php
getUsersSearchEngine($days = 30, $limit = 10) : self
```
Название | Тип | Описание
---------|-----|----------------------
$days | integer | Кол-во дней. По умолчанию 30
$limit | integer | Лимит записей. По умолчанию 10

#### За указанный период
```php
getUsersSearchEngineForPeriod($template, DateTime $startDate, DateTime $endDate, $limit = 10) : self
```
Название | Тип | Описание
---------|-----|----------------------
$startDate | DateTime | Начальная дата
$endDate | DateTime | Конечная дата
$limit | integer | Лимит записей. По умолчанию 10

### Данные по шаблону
Шаблоны (preset) автоматически задают метрики и группировки, которые необходимы для того или иного отчета.
Список всех шаблонов доступен по ссылке - [tech.yandex.ru/metrika/../presets-docpage](https://tech.yandex.ru/metrika/doc/api2/api_v1/presets/presets-docpage/).
Expand Down
15 changes: 15 additions & 0 deletions examples/getUsersSearchEngine.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
<?php

include_once '../vendor/autoload.php';

$config = require_once 'config.php';
$token = $config['token'];
$counter_id = $config['counter_id'];

$YaMetrika = new \AXP\YaMetrika\YaMetrika($token, $counter_id);

$SearchEngine = $YaMetrika->getUsersSearchEngine(30)
->format()
->formatData;

print_r( $SearchEngine );
42 changes: 42 additions & 0 deletions src/YaMetrika.php
Original file line number Diff line number Diff line change
Expand Up @@ -255,6 +255,48 @@ public function getBrowsersForPeriod(DateTime $startDate, DateTime $endDate, $li
return $this;
}

/**
* Получаем посетителей с поисковых систем за N дней
*
* @param int $days
* @param int $limit
*
* @return $this
*/
public function getUsersSearchEngine($days = 30, $limit = 10)
{
list($startDate, $endDate) = $this->differenceDate($days);

$this->getUsersSearchEngineForPeriod($startDate, $endDate, $limit);

return $this;
}

/**
* Получаем посетителей с поисковых систем за выбранный период
*
* @param DateTime $startDate
* @param DateTime $endDate
* @param int $limit
*
* @return $this
*/
public function getUsersSearchEngineForPeriod(DateTime $startDate, DateTime $endDate, $limit = 10)
{
$params = [
'date1' => $startDate->format('Y-m-d'),
'date2' => $endDate->format('Y-m-d'),
'metrics' => 'ym:s:users',
'dimensions' => 'ym:s:searchEngine',
'filters' => "ym:s:trafficSource=='organic'",
'limit' => $limit,
];

$this->data = $this->query($params);

return $this;
}

/**
* Отправляем кастомный запрос
*
Expand Down

0 comments on commit 244c6a5

Please sign in to comment.