Битрикс любит плодить дубли товаров если они находятся в разных категориях. Стандартных средств борьбы с этим недостатком нет, но я покажу простой способ как с помощью тега rel="canonical" победить проблему дублей.
В шаблоне карточки товара (в дефолтном шаблоне лежит примерно тут: /bitrix/components/bitrix/catalog.element/templates/.default/template.php).
В самом верху добавляем:
----- CODE -----
$url_in_product = $arResult["PROPERTIES"]["CANONICAL"]["VALUE"];
$url_product_str = 'http://'.$_SERVER['SERVER_NAME'].$arResult["PROPERTIES"]["CANONICAL"]["VALUE"];
$current_url = $APPLICATION->GetCurPage();
if($url_in_product == $current_url)
{
$APPLICATION->AddHeadString('<link rel="canonical" href="http://bitrix-help.ru/index.php">');
}
----- /CODE -----
В инфоблоке каталога товаров добавляем свойство Канонический URL CANONICAL.
В админке товара появляется свойство
В это поле можно заносить URL страницы товара, которая будет считаться основной. На этой странице в хедере будет выводиться тег canonical.
Мой способ похож на описанный здесь и даже немного скопирован, но реализован все же более просто.
$url_in_product = $arResult["PROPERTIES"]["CANONICAL"]["VALUE"];
$url_product_str = '.$arResult["PROPERTIES"]["CANONICAL"]["VALUE"];
$current_url = $APPLICATION->GetCurPage();
if($url_in_product == $current_url)
{
$APPLICATION->AddHeadString('<link rel="canonical" href="/index.php">');
}