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

SetRequiredKeywords

CAdvBanner::SetRequiredKeywords(
	mixed keywords,
	varchar(255) TYPE_SID=""
);

Описание

Метод задает массив обязательных ключевых слов для данной страницы. Баннер будет показан на данной странице с наивысшим приоритетом только в том случае, если все слова из заданного с помощью данного метода массива, будут найдены в ключевых словах баннера (либо контракта к которому принадлежит баннер). В случае, если не будет найден ни один баннер, отвечающий установленным ключевым словам, то баннер для показа будет выбран из тех, для которых вообще не установлено ни одно ключевое слово. Метод нестатический.

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

ПараметрОписание
keywords Ключевые слова. Конструкции, которые можно передавать в этом параметре, описаны в примечаниях ниже.
TYPE_SID Идентификатор типа. В данном параметре можно указать тип рекламы, для которой будут заданы ключевые слова. Если данный параметр оставить пустым, то ключевые слова будут заданы для всех типов. Необязательный параметр.

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

Пример использования на конкретной странице:

<?
require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
if (CModule::IncludeModule("advertising"))
{
	// обязательные ключевые слова с точным совпадением		
	$arrKeywords = array();
	$arrKeywords[] = array("EXACT_MATCH" => "Y", "KEYWORD" => "GeForce");
	$arrKeywords[] = array("EXACT_MATCH" => "Y", "KEYWORD" => "video");
	CAdvBanner::SetRequiredKeywords($arrKeywords, "LEFT");

	// обязательные ключевые слова с вхождением
	CAdvBanner::SetRequiredKeywords(array("Ford", "BMW", "Lada"), "RIGHT");
}

$APPLICATION->SetTitle("Заголовок страницы");
require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_after.php");

// тело страницы
require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog.php");
?>

Пример использования для всего сайта, в prolog_after.php:

<?
if (CModule::IncludeModule("advertising"))
{
	CAdvBanner::SetRequiredKeywords($APPLICATION->GetProperty("keywords"));
}

?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
...

Если на странице заданы ключевые слова, то возможны две ситуация:

  1. Не будет найден ни один баннер, подходящий под условия ключевых фраз. В этом случае будут показываться все баннеры, у которых список ключевых фраз пуст, в соответствии с приоритетом, указанным в их настройках.
  2. Будет найдено несколько баннеров, удовлетворяющих условию ключевых фраз. В этом случае среди этих баннеров будет выбран один в соответствии с приоритетом, указанным в его настройках, а также в соответствии с приоритетом, указанным в настройках контракта, к которому принадлежит этот баннер.

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

Примечания

Конструкции, которые можно передавать в параметре keywords, включают в себя:

  1. Массив, состоящий из массивов, каждый из которых имеет ключи:
    • EXACT_MATCH - указывает как искать слово - точное совпадение (Y), либо вхождение (N).
    • KEYWORDS - ключевое слово.
    Пример:

    Array
    (
    	[0] => Array
    	(
    		[EXACT_MATCH] => Y
    		[KEYWORD] => GeForce
    	)
    
    	[1] => Array
    	(
    		[EXACT_MATCH] => Y
    		[KEYWORD] => Radeon
    	)
    )
    
  2. Массив, элементами которого будут являться сами ключевые слова.

    Пример:


    Array
    (
    	[0] => GeForce
    	[1] => Radion
    	[2] => Sony
    )
    
    В этом варианте по умолчанию в дальнейшем будет искаться вхождение ключевых слов баннера в данные ключевые слова (либо наоборот).

  3. Список ключевых слов, разделенных запятой.

    Пример:


    "GeForce, Radion, Sony"
    
    В этом варианте по умолчанию в дальнейшем будет также искаться вхождение ключевых слов баннера в данные ключевые слова (либо наоборот).


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

Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
© «Битрикс», 2001-2020, «1С-Битрикс», 2020
Наверх