Документация для разработчиков
Темная тема

GetList

Описание и параметры

CDBResult
CPhrase::GetList(
	string &by = "s_id",
	string &order = "desc",
	array filter = array(),
	bool &is_filtered,
	int &total,
	string &group_by,
	int &max
)

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

Параметры метода

ПараметрОписание
byПоле для сортировки. В зависимости от группировки списка, набор доступных значений данной переменной может быть различным.
  • при группировке по поисковой фразе (filter["GROUP"]="P"):
    • s_phrase - поисковая фраза;
    • s_quantity - количество заходов с той или иной поисковой фразой.
  • при группировке по поисковой системе (filter["GROUP"]="S"):
    • s_name - поисковая система;
    • s_quantity - количество заходов с данной поисковой системы;
    • s_average_hits - среднее количество хитов производимое посетителями заходящим с той или иной поисковой системы.
  • когда группировка не установлена:
    • s_id - ID записи;
    • s_counter - счетчик;
    • s_site_id - ID сайта на который пришли;
    • s_phrase - поисковая фраза;
    • s_searcher_id - ID поисковой системы;
    • s_referer_id - ID записи из таблицы ссылающихся сайтов (страниц);
    • s_date_hit - дата захода;
    • s_url_to - страница на которую пришли;
    • s_session_id - ID сессии.
оrderПорядок сортировки. Возможные значения:
  • asc - по возрастанию;
  • desc - по убыванию.
filterМассив для фильтрации результирующего списка. В массиве допустимы следующие ключи:
  • ID - ID записи;
  • ID_EXACT_MATCH - если значение равно "N", то при фильтрации по ID будет искаться вхождение;
  • SESSION_ID - ID сессии;
  • SESSION_ID_EXACT_MATCH - если значение равно "N", то при фильтрации по SESSION_ID будет искаться вхождение;
  • SEARCHER_ID - ID поисковой системы;
  • SEARCHER_ID_EXACT_MATCH - если значение равно "N", то при фильтрации по SEARCHER_ID будет искаться вхождение;
  • REFERER_ID - ID записи из таблицы ссылающихся сайтов (страниц);
  • REFERER_ID_EXACT_MATCH - если значение равно "N", то при фильтрации по REFERER_ID будет искаться вхождение;
  • SEARCHER* - название поисковой системы;
  • SEARCHER_EXACT_MATCH - если значение равно "Y", то при фильтрации по SEARCHER будет искаться точное совпадение;
  • DATE1 - начальное значение интервала для поля "дата";
  • DATE2 - конечно значение интервала для поля "дата";
  • PHRASE* - поисковая фраза;
  • PHRASE_EXACT_MATCH - если значение равно "Y", то при фильтрации по PHRASE будет искаться точное совпадение;
  • TO* - страница на которую пришли;
  • TO_EXACT_MATCH - если значение равно "Y", то при фильтрации по TO будет искаться точное совпадение;
  • TO_404 - была ли 404 ошибка на странице на которую пришли, возможные значения:
    • Y - была;
    • N - не была.
  • SITE_ID - ID сайта, на который пришли;
  • GROUP - группировка результирующего списка, возможные значения:
    • P - группировка по поисковой фразе;
    • S - группировка по поисковой системе.
* - допускается сложная логика
is_filteredФлаг отфильтрованности результирующего списка. Если значение равно "true", то список был отфильтрован.
totalСуммарное количество поисковых фраз. Принимает значение только при установленной группировке.
group_byГруппировка списка поисковых фраз. Возможные значения:
  • P - группировка по поисковой фразе;
  • S - группировка по поисковой системе.
maxКоличество заходов по самой популярной поисковой фразе. Принимает значение только при установленной группировке.

Структура возвращаемой записи

В зависимости от установленной группировки, структура возвращаемой записи различная.

  • при группировке по поисковой фразе (filter["GROUP"]="P"):
    Array
    (
    	[PHRASE] => поисковая фраза
    	[QUANTITY] => сколько раз заходили на сайт по данной поисковой фразе
    	[PERCENT] => процент от общего количества заходов по разным поисковым фразам
    )
  • при группировке по поисковой системе (filter["GROUP"]="S"):
    Array
    (
    	[SEARCHER_ID] => ID поисковой системы
    	[SEARCHER_NAME] => название поисковой системы
    	[QUANTITY] => количество заходов с поисковой системы
    	[PERCENT] => процент заходов с данной поисковой системы
    	[AVERAGE_HITS] => среднее количество хитов, производимое посетителями, заходящими с той или иной поисковой системы
    )
  • когда группировка не установлена:
    Array
    (
    	[ID] => ID записи
    	[PHRASE] => поисковая фраза
    	[DATE_HIT] => время
    	[SESSION_ID] => ID сессии
    	[REFERER_ID] => ID записи из таблицы ссылающихся сайтов (страниц)
    	[SEARCHER_ID] => ID поисковой системы
    	[SEARCHER_NAME] => название поисковой системы
    	[URL_TO] => страница на которую пришли
    	[URL_TO_404] => [Y|N] флаг 404 ошибки на странице, на которую пришли
    	[SITE_ID] => ID сайта, на который пришли
    )

Примеры использования

<?
// отфильтруем только те поисковые фразы
// которые искали на сайте с помощью внутреннего поиска
$arFilter = array(
	"SEARCHER_ID"  => 1
);
// получим список записей
$rs = CPhrase::GetList(
	($by = "s_id"), 
	($order = "desc"), 
	$arFilter, 
	$is_filtered,
	$total,
	$group_by,
	$max
);
// выведем все записи
while ($ar = $rs->Fetch())
{
	echo "
"; print_r($ar); echo "
"; } ?>


© «Битрикс», 2001-2024, «1С-Битрикс», 2024