Новости Joomla

0 Пользователей и 1 Гость просматривают эту тему.
  • 8 Ответов
  • 2877 Просмотров
*

cheni

  • Захожу иногда
  • 192
  • 1 / 0
нашел такой вариант решения

Цитировать
Как известно, ссылки в модуле mod_mainmenu формируются в файле \modules\mod_mainmenu\helper.php, а именно с помощью функции _getItemData в следующих строчках
Код
switch ($tmp->browserNav)
{
default:
case 0:
// _top
$data = '<a href="'.$tmp->url.'">'.$image.$tmp->name.'</a>';
break;
case 1:
// _blank
$data = '<a href="'.$tmp->url.'" target="_blank">'.$image.$tmp->name.'</a>';
break;
case 2:
// window.open
$attribs = 'toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes,'.$this->_params->get('window_open');
// hrm...this is a bit dickey
$link = str_replace('index.php', 'index2.php', $tmp->url);
$data = '<a href="'.$link.'" onclick="window.open(this.href,\'targetWindow\',\''.$attribs.'\');return false;">'.$image.$tmp->name.'</a>';
break;
}

Нас интересует только первый вариант.
Для решения задачи используем сравнение id активного пункта меню с id текущего пункта и меню и соответствующий вывод текста и ссылки (при совпадении и несовпадении):
Код
case 0:
// _top
if (JSite::getMenu()->getActive()->id == $item->id){
$data = $tmp->url.$image.$tmp->name;
} else {
$data = '<a href="'.$tmp->url.'">'.$image.$tmp->name.'</a>';
}
break;


у меня после подобной правки выдет следующую ошибку:
Fatal error: Call to a member function name() on a non-object in /home/ndn/antiperspirant.in.ua/www/templates/10/html/mod_mainmenu/default.php on line 26

Как решить таки проблему?

*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
case 0:
// _top
if (JSite::getMenu()->getActive()->id == $tmp->id){
   $data = $image.$tmp->name;
} else {
   $data = '<a href="'.$tmp->url.'">'.$image.$tmp->name.'</a>';
}
break;
*

cheni

  • Захожу иногда
  • 192
  • 1 / 0
то же самое происходит...
Fatal error: Call to a member function name() on a non-object in /home/ndn/antiperspirant.in.ua/www/templates/10/html/mod_mainmenu/default.php on line 26
*

passer

  • Завсегдатай
  • 1013
  • 75 / 3
У него templates/10/html/mod_mainmenu/default.php шаблон модуля в шаблоне сайта переопределен. И что там за name одному богу известно.
*

passer

  • Завсегдатай
  • 1013
  • 75 / 3
Переключитесь на какой-то стандартный шаблон и проверьте снова.
*

cheni

  • Захожу иногда
  • 192
  • 1 / 0
вы правы, на стандартном работает....
 как быть с нестандартным?
*

voland

  • Легенда
  • 11030
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
А зачем??
Если не нужна подсветка, то удалить лишние строчки в CSS
*

passer

  • Завсегдатай
  • 1013
  • 75 / 3
вы правы, на стандартном работает....
 как быть с нестандартным?
Код шаблона смотреть надо. Готового ответа нет. Попробуйте через коммерческий раздел. Не думаю что дорого будет.
А зачем??
Если не нужна подсветка, то удалить лишние строчки в CSS
Но ссылка останется.
*

voland

  • Легенда
  • 11030
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

убрать из меню заголовки h3

Автор nexter

Ответов: 19
Просмотров: 6468
Последний ответ 03.02.2020, 18:49:47
от durte
При добавлении нового пункта меню не отображается содержимое

Автор Denko

Ответов: 2
Просмотров: 2146
Последний ответ 16.01.2020, 18:40:55
от Denko
Не нажимается пункт меню на мобильной версии

Автор Sensession

Ответов: 7
Просмотров: 3099
Последний ответ 04.01.2020, 16:45:27
от xpank
Не отображаются пункты в меню

Автор physic

Ответов: 20
Просмотров: 21396
Последний ответ 20.09.2019, 16:54:01
от beliyadm
Как в ARI Ext Menu добиться работы параметра "Показать в меню"?

Автор vasmed

Ответов: 1
Просмотров: 2359
Последний ответ 01.03.2019, 11:12:18
от vasmed