|
|
05.09.2014, 13:46
|
|
Gvenv_nk
Наталья Комарова
Зарегистрирован: 2011-11-07
Сообщений: 43
|
Здравствуйте! Проблема вот в чем.
Мне нужно на внутренних страницах сайта (для них существует отдельный макет) вывести титлы по принципу: Название текущей страницы / краткое название сайта (на главной должно выводиться полное название проекта, оно довольно длинное). При этом необходимо сохранить возможность создания альтернативных титлов в полях на вкладках СЕО для разделов и объектов.
Сейчас в макете дизайна у меня написано:
Код:<title>".( ($title = $nc_core->page->get_h1()) ? $title :
strip_tags(s_browse_path($browse_path_title)))." / Сайт Лидии Сычевой</title>
В шаблонах вывода:
Код:// хлебные крошки для тайтла
$browse_path_title['active'] = "%NAME ";
$browse_path_title['active_link'] = "%NAME";
$browse_path_title['unactive'] = "%NAME";
$browse_path_title['divider'] = " / ";
В итоге титлы выглядят правильно, но альтернативные заголовки, введенные в соответствующие поля, не отображаются (например, на этой странице http://lsycheva.ru/literature/myDiary/myDiary_3098.html на вкладке "Дополнительно" вписан титл "Татьяна Наместникова. История и современность").
Пыталась решить эту проблему, применяя по очереди все рецепты из документации и переписки на форуме, в том числе s_browse_path_range - безрезультатно (был вариант и без "русскоязычной части", но, стоило мне заменить get_title() на get_h1(), как альтернативные поля переставали работать).
Сайт на v4, т.к. движок изначально был старый, впоследствии обновленный до v5.4.
Подскажите, в чем ошибка?
Заранее спасибо за помощь.
Наталья Комарова
|
|
|
05.09.2014, 16:41
|
|
Вячеслав
Студия "Кронос"
Зарегистрирован: 2013-04-12
Сообщений: 91
|
а так не пробывали
".($action == 'full' ? $nc_core->page->get_h1() : ($current_sub['AlterTitle'] ? $current_sub['AlterTitle'] : $nc_core->page->get_h1()))
."
//AlterTitle - по умолчанию поле альтернативного заголовка, не знаю было ли оно в системе v4, у себя проверил работает
|
|
|
06.09.2014, 01:10
|
|
Gvenv_nk
Наталья Комарова
Зарегистрирован: 2011-11-07
Сообщений: 43
|
Вячеслав, спасибо огромное, Вы мне очень помогли. На уровне разделов метод действует безотказно (только у меня вместо AlterTitle работает Title). А не подскажете, как бы дополнить этот код аналогичным правилом для компонентов? Допустим, у меня для альтернативных заголовков в инфоблоках компонента "Публикации. Статьи простые" создано поле AlterTitle1. Что мне с ним дальше делать?
Наталья Комарова
|
|
|
07.09.2014, 21:38
|
|
Вячеслав
Студия "Кронос"
Зарегистрирован: 2013-04-12
Сообщений: 91
|
Вообще заголовок страницы с полным описанием статьи вы может указать в самом компоненте "редактирование компонента", там есть сноска "Заголовок страницы:" - туда и впишите латинское название поля для заголовка, которого вам нужен, к примеру $f_AlterTitle1
Ну или создайте второе поле для альтернативного заголовка, которое может быть условием для проверки или или
на v5
Код:<? if ($f_AlterTitle1) { ?>
<?=$f_AlterTitle1?>
<? } else { ?>
<?=$f_AlterTitle2?>
<? } ?>
на v4
Код:".($f_AlterTitle1 ? "
".$f_AlterTitle1."
" : ".f_AlterTitle2.")."
|
|
|
07.09.2014, 22:57
|
|
Gvenv_nk
Наталья Комарова
Зарегистрирован: 2011-11-07
Сообщений: 43
|
Вячеслав, Вы волшебник! Все работает (c условием). Огромное спасибо и творческих успехов!
Наталья Комарова
|