Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Какой компонент установит в результате мета-теги на странице, если компонентов несколько?

+11 голос
1
Дано

страница блога содержит 2 компонента:

1) bitrix:news.detail - полный текст новости, а внутри нее я подключаю

2) bitrix:catalog.section чтобы вывести несколько товаров.

В результате все мета-теги на странице устанавливает компонент bitrix:catalog.section.

Как сделать так, чтобы все мета-теги были подхвачены из bitrix:news.detail ?

В настройках компонента bitrix:catalog.section убрал все галочки, чтобы не устанавливал мета-теги

Пробовал в любом месте у bitrix:news.detail ставить

$APPLICATION->SetPageProperty("keywords", "НУЖНЫЙ МНЕ KEYWORDS");

Но все равно у bitrix:catalog.section максимальный приоритет и мета-теги из него.

Помогите - сам новичок - не справлюсь
закрыто с пометкой: решено
спросил 23 Янв, 15 от аноним
закрыто 24 Янв, 15

1 Ответ

00 голосов

Добро пожаловать!
Один небольшой совет, как новичку - не бойтесь искать и смотреть исходники Битрикса. Это не чёрный ящик, практически весь исходный код можно посмотреть (или продебажить, если возникла необходимость). Правда, сохранять свои изменения не рекомендуется, так как они будут затёрты в ходе обновления.
Например, в компоненте catalog.section идёт такой код:

if ($arParams["SET_META_DESCRIPTION"] !== "N")
{
$metaDescription = \Bitrix\Main\Type\Collection::firstNotEmpty(
$arResult, $arParams["META_DESCRIPTION"]
,$arResult["IPROPERTY_VALUES"], "SECTION_META_DESCRIPTION"
);
if (is_array($metaDescription))
$APPLICATION->SetPageProperty("description", implode(" ", $metaDescription), $arTitleOptions);
elseif ($metaDescription != "")
$APPLICATION->SetPageProperty("description", $metaDescription, $arTitleOptions);
}
То есть, передав SET_META_DESCRIPTION = 'N' в параметры подключения компонента, вы решите ваш вопрос. И не забудьте очистить кеш! Иногда причина ошибок и недопониманий именно в нём.
ответил 23 Янв, 15 от root (25,590 баллов)
Здравствуйте, root!
Спасибо за отклик!
Дело в том, что и этот параметр передавал, и все равно не работало. Посмотрел в исходниках - а у меня нет условия
if ($arParams["SET_META_DESCRIPTION"] !== "N")
поэтому он сразу устанавливал теги, назло мне.
Надо было просто обновить битрикс. Обновил - и сразу все заработало автоматом:)
Большое спасибо:)

Похожие вопросы

0 голосов
2 ответов
спросил 08 Апр, 14 от mirage (120 баллов)
0 голосов
3 ответов
0 голосов
2 ответов