|
|
09.06.2017, 23:37
|
|
Андрей
ИП Шаврин А.С.
Зарегистрирован: 2015-12-02
Сообщений: 2
|
Все привет, помогите понять в чем может быть проблема?
На сайте настроена маска для мета тегов, но почему-то объекты только в одном из разделов упорно подтягивают title от раздела...
Пример части кода:
Код:
if($title = $nc_core->page->get_title()){
echo $title;
}elseif($current_cc[Class_ID]==38 && $message!=0){
echo $f_Name.' в '.$f_Rayon;
}elseif($current_cc[Class_ID]==39 && $message!=0){
echo 'Готовые '.$f_Name;
}
т.е. у раздела используется компонент 39, у раздела задан title, у объектов нет, а на сайт у объекта выводится title от раздела.... если задать у объекта title вручную, то выведется он...
Почему когда не задан title все равно срабатывает правило из первого IF??
У раздела который использует компонент 38 все норм, если у объекта не задан title то выводится по маске....
|
|
|
10.06.2017, 08:18
|
|
Владимир
Web-Element
Зарегистрирован: 2011-07-07
Сообщений: 64
|
Попробуйте в первом условии поставить не =, а ==
))
|
|
|
10.06.2017, 09:20
|
|
Андрей
ИП Шаврин А.С.
Зарегистрирован: 2015-12-02
Сообщений: 2
|
Не помогло, заметил что все таки везде не правильно выводится... если у раздела задан title то он подтягивается к объектам...
Поменял условия, вроде теперь все работает
Код:
if($current_cc[Class_ID]==38 && $message!=0 && !$f_ncTitle){
echo $f_Name.' в '.$f_Rayon;
}elseif($current_cc[Class_ID]==39 && $message!=0 && !$f_ncTitle){
echo 'Готовые '.$f_Name;
}esleif($title = $nc_core->page->get_title()){
echo $title;
}
.......
|
|
|
22.06.2017, 07:52
|
|
Руслан Густокашин
Студия Вэлпис
Зарегистрирован: 2012-02-06
Сообщений: 962
|
Да, это особенность Netcat - система действительно наследует значения метатегов от разделов к объектам. Я уже жаловался в Неткэт, чтобы это исправили, но воз и ныне там. То ли не согласны с моим мнением, что это баг, а не фича, то ли просто руки у них не дошли.
То решение, которое вы сами придумали, в общем-то, сгодится, единственное, что правильнее проверять не $message, а переменную $action (она равна full, если открыта детальная страница).
Ну а если совсем грамотно и универсально делать, то в макете выводить метатеги лучше стандартной функцией $nc_core->page->get_..., а в отображении объекта поставить, например, так:
if ( !$f_ncTitle ) $nc_core->page->set_metatags('title', "$f_Name - траливали.");
|