Основной курс по Joomla
0 Пользователей и 1 Гость просматривают эту тему.
  • 11 Ответов
  • 857 Просмотров
*

Yastroitel

  • Осваиваюсь на форуме
  • ***
  • 111
  • 1
Передать класс в Jhtml
« : 04.02.2016, 20:21:45 »
Добрый день!

В layout в файле icons есть такой код

Код
<?php echo JHtml::_('icon.print_popup', $displayData['item'], $displayData['params']); ?>

Этот код и несколько похожих далее генерируют ссылку со словом Print или Email

Вопрос - как мне изменить на уровне шаблона класс этой ссылки и вместо слова print вставить другой тег - в данном случае иконку

Спасибо!
*

vipiusss

  • Профи
  • ********
  • 5529
  • 318
  • Круглая ава-зло!
Re: Передать класс в Jhtml
« Ответ #1 : 04.02.2016, 20:23:22 »
Незнаю, правильно или нет, я врезаю инклудом файл, а в нём пишу, что мне надо.

$displayData['item'] и это уже по синтаксису не верно.
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

Yastroitel

  • Осваиваюсь на форуме
  • ***
  • 111
  • 1
Re: Передать класс в Jhtml
« Ответ #2 : 04.02.2016, 20:24:22 »
Ну так то и без инклуда я могу врезать прямо код на месте

Но че-то не то мне кажется:)
*

vipiusss

  • Профи
  • ********
  • 5529
  • 318
  • Круглая ава-зло!
Re: Передать класс в Jhtml
« Ответ #3 : 04.02.2016, 20:26:36 »
Вопрос - как мне изменить на уровне шаблона класс этой ссылки и вместо слова print вставить другой тег - в данном случае иконку
Спасибо!
Ну дайте дивы шаблона и CSS классов.
Или вы хотите, чтобы мы шаблон ставили?
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

robert

  • Профи
  • ********
  • 4009
  • 371
Re: Передать класс в Jhtml
« Ответ #4 : 04.02.2016, 20:42:30 »
Попробуйте так
Код: php-brief
<?php echo JHtml::_('icon.print_popup',$displayData['item'],$displayData['params'],array(),true); ?>
P.S. Или отметьте в админке "show_icons" и модифицируйте классы, к примеру, "icon-print".
« Последнее редактирование: 04.02.2016, 21:18:30 от robert »
  • Не будь паразитом, сделай что-нибудь самостоятельно!
  • В личке и по Skype не даю советов.
*

vipiusss

  • Профи
  • ********
  • 5529
  • 318
  • Круглая ава-зло!
Re: Передать класс в Jhtml
« Ответ #5 : 04.02.2016, 21:18:55 »
роберт, а почему труе в коде?
а фалсе на что там повлияет? (для себя)
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

robert

  • Профи
  • ********
  • 4009
  • 371
Re: Передать класс в Jhtml
« Ответ #6 : 04.02.2016, 21:24:15 »
См. components/com_content/helpers/icon.php, функцию print_popup. Но лучше, как я писал выше, выбрать "Показывать иконки" и править CSS.
  • Не будь паразитом, сделай что-нибудь самостоятельно!
  • В личке и по Skype не даю советов.
*

Yastroitel

  • Осваиваюсь на форуме
  • ***
  • 111
  • 1
Re: Передать класс в Jhtml
« Ответ #7 : 04.02.2016, 21:31:57 »
В том то и дело что править CSS не хочется:)

То есть другого варианта нет?
*

robert

  • Профи
  • ********
  • 4009
  • 371
Re: Передать класс в Jhtml
« Ответ #8 : 04.02.2016, 22:38:17 »
Я вам дал 2 варианта, они оба не устраивают? Вы хотели
изменить на уровне шаблона
, но
править CSS не хочется:)
Тогда другой вариант есть - править класс JHtmlIcon. На уровне ядра.
  • Не будь паразитом, сделай что-нибудь самостоятельно!
  • В личке и по Skype не даю советов.
*

Yastroitel

  • Осваиваюсь на форуме
  • ***
  • 111
  • 1
Re: Передать класс в Jhtml
« Ответ #9 : 05.02.2016, 13:30:55 »
Большое спасибо за помощь - вы меня опять выручили

Получается на уровне шаблона я не могу в этом месте через стандартные средства выводить свой код?

Немного подробнее что я хотел

Я хотел не только класс у ссылки заменить - но и заменить ее содержимое

То есть вместо слова Print - выводить картинку с иконкой принтера

Получается, если я вас правильно понял, - либо правкой ядра, либо стирать существующий код и вписывать свой
*

robert

  • Профи
  • ********
  • 4009
  • 371
Re: Передать класс в Jhtml
« Ответ #10 : 05.02.2016, 14:26:19 »
Такое впечатление, что вы не пробовали ничего делать, задавая при этом вопросы.
1. На уровне шаблона через стандартные средства:
а. Модифицируйте CSS класс icon-print и выводите в нем какое изображение хотите. Слово Print можно менять в файле языка, хоть на пустое место.
б. Переопределите icons.php путем создания его копии в шаблоне сайта. Затем изменить строку
Код: php-brief
<?php echo JHtml::_('icon.print_popup', $displayData['item'], $displayData['params']); ?>
на
Код: php-brief
<?php echo JHtml::_('icon.print_popup',$displayData['item'],$displayData['params'],array(),true); ?>
Она выводит только иконку принтера без текста.
2. На уровне шаблона не через стандартные средства: см. п.1б + свой код.
3. На уровне ядра: поздравляю, вы стали крутым г.кодером.
  • Не будь паразитом, сделай что-нибудь самостоятельно!
  • В личке и по Skype не даю советов.
*

Yastroitel

  • Осваиваюсь на форуме
  • ***
  • 111
  • 1
Re: Передать класс в Jhtml
« Ответ #11 : 05.02.2016, 14:37:41 »
Пробовал:)

Просто хотел изобрести велосипед
Мой случай это пункт 1б - в принципе я его и так с самого начала сделал

Спасибо за поддержку