модификация вывода пунктов меню

  • 7 Ответов
  • 176 Просмотров

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

*

randomnick

  • Новичок
  • *
  • 4
  • 0
Здравствуйте!
Имеется mod_menu/tmpl/default.php
Спойлер
[свернуть]
Сейчас он выводит такой пункт меню:
Код
<li class="item-139">
<div class="item-wrap">
<a href="/">...</a>
<div class="subtitle">...</div>
</div>
</li>

Я хочу сделать такой вывод:
Код
<li class="item-139">
<div class="item-wrap">
<a href="/">...
<div class="subtitle">...</div>
</a>
</div>
</li>

Я понял, что ссылка цепляется из строки require JModuleHelper::getLayoutPath('mod_menu', 'default_' . $item->type);, но как залезть в неё не понимаю. В папке mod_menu/ лежит helper.php, но в нём я не нашел что-нибудь по этому поводу.
Как мне, вообщем, кастомизировать в пункте меню вывод этой ссылки?

*

NewUsers

  • Завсегдатай
  • *****
  • 579
  • 46
Re: модификация вывода пунктов меню
« Ответ #1 : 16.05.2017, 13:03:20 »
но как залезть в неё не понимаю.

Все файлы которые начинаются на default_ находятся там же где и default.php

*

randomnick

  • Новичок
  • *
  • 4
  • 0
Re: модификация вывода пунктов меню
« Ответ #2 : 16.05.2017, 13:16:14 »
Все файлы которые начинаются на default_ находятся там же где и default.php
я сразу так подумал, что в них нужно искать, но нет - ни один из них не выводит "<a" (я искал поиском "<a", т.к. ожидал строку наподобие <?php  echo '<a href'. $item .'</a>' ?>)
« Последнее редактирование: 16.05.2017, 13:19:47 от randomnick »

*

NewUsers

  • Завсегдатай
  • *****
  • 579
  • 46
Re: модификация вывода пунктов меню
« Ответ #3 : 16.05.2017, 13:21:38 »
(я искал поиском "<a", т.к. ожидал строку наподобие <?php  echo '<a href'. $item .'</a>' ?>)

ссылку выводи последняя строка в файле
Код: php
<?php echo JHtml::_('link', JFilterOutput::ampReplace(htmlspecialchars($item->flink)), $linktype, $attributes); ?>
Выше стой строки в переменную $linktype записывается заголовок ссылки, вот и туда и добавляй div

*

Septdir

  • Практически профи
  • *******
  • 2153
  • 108
  • JoomlaZen
Re: модификация вывода пунктов меню
« Ответ #4 : 16.05.2017, 14:12:37 »
Либо выводить по старинке. без JHtml::
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
________
Мои Контакты | JoomlaZen

*

randomnick

  • Новичок
  • *
  • 4
  • 0
Re: модификация вывода пунктов меню
« Ответ #5 : 16.05.2017, 17:56:31 »
ссылку выводи последняя строка в файле
Код: php
<?php echo JHtml::_('link', JFilterOutput::ampReplace(htmlspecialchars($item->flink)), $linktype, $attributes); ?>
Выше стой строки в переменную $linktype записывается заголовок ссылки, вот и туда и добавляй div

пробовал всяко, вот вроде бы должен работать вариант:
Код
$linktype .= '<div>' . $item-> title . '</div>';
, но нет. Что я делаю не так?

*

NewUsers

  • Завсегдатай
  • *****
  • 579
  • 46
Re: модификация вывода пунктов меню
« Ответ #6 : 16.05.2017, 18:10:11 »
пробовал всяко, вот вроде бы должен работать вариант:
Код
$linktype .= '<div>' . $item-> title . '</div>';
, но нет. Что я делаю не так?

В какой файле изменяешь и где он находится?
Какой тип пункта меню?

*

randomnick

  • Новичок
  • *
  • 4
  • 0
Re: модификация вывода пунктов меню
« Ответ #7 : 17.05.2017, 12:55:41 »
В какой файле изменяешь и где он находится?
Какой тип пункта меню?

С утра вроде получилось. Во-первых, я менял файл default_url.php, а нужно было default_component.php, кроме того конкатенация перед знаком равно не нужна
Код
$linktype = '<div>' . $item-> title . '</div>';

Спасибо за помощь)