|
|
20.02.2013, 10:13
|
|
Gorjelin
Угаев Евгений Анатольевич
Зарегистрирован: 2010-02-26
Сообщений: 18
|
Здравствуйте!
Делаю портал на NetCat5 Corporate.
есть раздел - спецпредложения на туристическом сайте, они находятся внутри раздела личный кабинет (являются инфоблоком), то есть урл у них /lk/спецпредложения...
спецпр. геренируются зарегистрированными юзерами-турфирамаи в личном кабинете и выводятся в разных разделах, типа так: http://74tyra.ur-web.ru/country/country_28.html
есть задачи:
1. нужно вывести список всех предложений с фильтром поиска по ним.
2. нужно чтобы УРЛ этого списка не содержал /LK/ - и были хлебные крошки без "Личный кабинет"
3 у спецпр. есть подробное описание, ссылка на подробное описание содержит в адресе /lk/ , и соотсетсвующие хлебные крошки - а мне этого совсем не надо
Подскажите пожалуйста, как реализовать правильно и без "костылей" - вывод списка спецпредложений, и их подробного описания так, как это нужно.
Спасибо!
|
|
|
20.02.2013, 14:08
|
|
Gorjelin
Угаев Евгений Анатольевич
Зарегистрирован: 2010-02-26
Сообщений: 18
|
Проблему решили. Если кому нужно:
С версии 5.02 появилась возможность использовать "относительные ссылки" с помощью $ignore_link.
Подробнее есть в документации: http://netcat.ru/developes/docs/components/system-settings/
Спасибо техподдержке!
|
|
|
12.09.2013, 17:54
|
|
intrell
ООО "Интрелл"
Зарегистрирован: 2008-05-05
Сообщений: 62
|
Если ссылка состоит из ключевика, то при переходе по $fullLink отображается 404 ошибка. URL верный по ID открывает страницу нормально.
HUBHOST.ru – использую хостинг для NetCat
|
|
|
25.09.2013, 14:53
|
|
Гость
Гость
|
та же проблема, при включенном $ignore_link по ключевику страница отображается только в родительском разделе. NetCat 5.20 Extra.
|
|
|
12.04.2019, 19:06
|
|
intrell
ООО "Интрелл"
Зарегистрирован: 2008-05-05
Сообщений: 62
|
Пишу решение здесь, чтобы не потерялось:
Следующий код решает проблему.
В файле s_e404.php в строке 91 добавить после:
Код:
Код:$storage[$cache_key] = $nc_core->db->get_row(
"SELECT m.`Message_ID`, m.`Keyword`
FROM `Message{$classID}` AS m
WHERE m.`Sub_Class_ID` = {$cc}
AND m.`Keyword` = '{$nc_core->db->escape($keyword)}' {$date_condition}",
ARRAY_N
);
следующий код:
Код:if(!$storage[$cache_key]) {
// загружаем настройки компоненты и смотрим значение переменной $ignore_link
$cc_env = $nc_core->sub_class->get_by_id($cc, null, $nc_ctpl);
$file_class = new nc_tpl_component_view($nc_core->CLASS_TEMPLATE_FOLDER, $nc_core->db);
$file_class->load($cc_ev['Real_Class_ID'], $cc_env['File_Path'], $cc_env['File_Hash']);
$nc_parent_field_path = $file_class->get_parent_field_path('Settings');
$nc_field_path = $file_class->get_field_path('Settings');
$component_body = nc_check_file($file_class->get_parent_field_path('Settings')) ? nc_get_file($file_class->get_parent_field_path('Settings')) : null;
$component_body .= nc_check_file($file_class->get_field_path('Settings')) ? nc_get_file($file_class->get_field_path('Settings')) : null;
// ищем $ignore_link = 1 или $ignore_link = true
preg_match('/\$ignore_link.*=[\s]*(1|true)/iu', $component_body, $match);
// если $ignore_link установлена, то ищем объект без учета $sub && $cc
if($match[0]) {
$storage[$cache_key] = $nc_core->db->get_row(
"SELECT m.`Message_ID`, m.`Keyword`
FROM `Message{$classID}` AS m
WHERE m.`Keyword` = '{$nc_core->db->escape($keyword)}' {$date_condition}",
ARRAY_N
);
}
}
HUBHOST.ru – использую хостинг для NetCat
|
|
|
09.12.2020, 10:47
|
|
VenZell
Карагодников Алексей Николаевич
Зарегистрирован: 2014-07-25
Сообщений: 77
|
Здравствуйте.
Указанная ошибка исправлена. Исправление выйдет в релиз 10.12.2020.
|