1c-bitrix / php · 16.01.2010

2 титла на странице как?… Элементарно Ватсон…

Зачастую юные разработчики очень не внимательно относятся к документации тех средств с которыми они работают. В этом случае начинают появляться мутированные строки кода в web приложении. Это очень плохо, это просто очень очень плохо.

Конечно все через это прошли, и на клепали свою десятку, а то и сотню костылей дабы заработало сцуко.

Вот тривиальная задача в рамках api 1с-Битрикс:

Нужно сделать 2 заголовка на странице сайта, первый устанавливается в <title>, а второй находится в хидере в прекрасном теге <h1>.

Если фишка ляжет то может и заработать. но зачастую нет. При установки заголовка окна меняется и в <h1>. Как быть? Как жить с этим?

Все придумано давно и за вас.

Смотрим документацию:

CMain::ShowTitle(
 string property_name = "title",
 bool strip_tags = true
)

property_name
Идентификатор свойства страницы, значение которого будет выведено в качестве заголовка 
(если это значение задано например, с помощью функции CMain::SetPageProperty).
Необязательный. По умолчанию "title".

Что это значит? А значит это то, что можно спокойно определять 2 заголовка на странице. Специально сегодня поставил демо на редакции старт и что я вижу, все работает именно в таком режиме.

В хидере :

<title><?$APPLICATION->ShowTitle()?></title>

<h1><?$APPLICATION->ShowTitle(false)?></h1>

На главной странице определены заголовки:

$APPLICATION->SetPageProperty(«title», «Демонстрационная версия продукта «1С-Битрикс: Управление сайтом»»);
$APPLICATION->SetTitle(«Статьи»);

Вот и все, мораль сей басни такова. внимательно читаем хелп, там есть намного больше чем вы думаете.