Создаем пункт меню назовем Работа и Вакансии, делаем тип меню "ссылка" например на раздел Работа в доске объявлений. Например сайт/board/10.
Добавляем модуль(просто текст), он должен отображаться только для пункта меню "Работа и Вакансии", т.е. указываем пункт меню и позицию.
проверяем… модуль не появляется!
Я как бы решил проблему, только вот интересно это у меня так или у всех?
в багтрекер не пущает, добавить не могу!
если кому интересно, могу рассказать как!
но так даже лучше)
Видимо стоит прояснить проблему подробнее.
а теперь подробнее
есть в главном меню пункт Объявления
у него есть подменю — Работа и вакансии у этого пункта меню стоит linktype = ссылка например /board/10 (на подпункт работа в объявлениях)
и если теперь хочется чтобы какой-то модуль например "пользовательский" (содержит только какой-то текст), ну в принципе неважно какой модуль, хоть погода появлялся только при показе только этого подпункта меню "Работа и вакансии". — не работает
в принципе проблему решил, хочется чтоб в дистрибутиве(или в обновлении) было исправлено
P.S. кстати еще сделал возможность для модуля показаться только на вложенных страницах от текущей
(например поиск пользователей в списке пользователей не нужен, а внутри в профиле пользователя — нужен)
кстати еще сделал возможность для модуля показаться только на вложенных страницах от текущей
вы меня удивляете все больше) Ииии, дальше что?) А я сегодня полный бак бензина заправил — примерно так читаются ваши посты))
если все равно не поняли, напишу прямо: решение в студию!)
1. лечим баг прямых ссылок
в файле cms.php
делаем вот так
//полное совпадение ссылки и адреса? // СТРОЧКИ НИЖЕ ДОБАВЛЯЕМ $furi="http://".$_SERVER['HTTP_HOST'].$uri; if (($uri == $item['link'])||($furi == $item['link'])){ // ЭТУ ВЫКЛЮЧАЕМ if (($uri == $item['link'])){ $menuid = $item['id']; $is_strict = true; //полное совпадение break; }
добавляем поле show_only_on_nested со значением по умолчанию 0 в таблицу cms_modules,
ALTER TABLE 'cms_modules' ADD 'show_only_on_nested' TINYINT( 4 ) DEFAULT '0' NOT NULL AFTER 'is_strict_bind'
в файле
page.class.php
// Проверяем права доступа if (!$inCore->checkContentAccess($mod['access_list'])) { continue; } // ДОБАВЛЯЕМ 1 СТРОЧКУ НИЖЕ ////////// if (($mod['show_only_on_nested']==1)&&($inCore->isMenuIdStrict()==1)) { continue; } ////////////////////////////////////// $modulefile = PATH.'/modules/'.$mod['content'].'/module.php'; if (!$mod['user']) { cmsCore::loadLanguage('modules/'.$mod['content']); }
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''cms_modules' ADD 'show_only_on_nested' TINYINT( 4 ) DEFAULT '0' NOT NULL AFTER ' at line 1