Форум русской поддержки Joomla!® CMS
06.12.2016, 12:12:28 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Передать класс в Jhtml

 (Прочитано 449 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Yastroitel
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 112



« : 04.02.2016, 19:21:45 »

Добрый день!

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

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

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

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

Спасибо!
Записан
vipiusss
Профи
********

Репутация: +260/-8
Online Online

Пол: Мужской
Сообщений: 4571


Skype: renor_


« Ответ #1 : 04.02.2016, 19:23:22 »

Незнаю, правильно или нет, я врезаю инклудом файл, а в нём пишу, что мне надо.

$displayData['item'] и это уже по синтаксису не верно.
Записан
Yastroitel
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 112



« Ответ #2 : 04.02.2016, 19:24:22 »

Ну так то и без инклуда я могу врезать прямо код на месте

Но че-то не то мне кажется:)
Записан
vipiusss
Профи
********

Репутация: +260/-8
Online Online

Пол: Мужской
Сообщений: 4571


Skype: renor_


« Ответ #3 : 04.02.2016, 19:26:36 »

Вопрос - как мне изменить на уровне шаблона класс этой ссылки и вместо слова print вставить другой тег - в данном случае иконку
Спасибо!
Ну дайте дивы шаблона и CSS классов.
Или вы хотите, чтобы мы шаблон ставили?
Записан
robert
Профи
********

Репутация: +343/-11
Offline Offline

Пол: Мужской
Сообщений: 3582


« Ответ #4 : 04.02.2016, 19:42:30 »

Попробуйте так
Код
<?php echo JHtml::_('icon.print_popup',$displayData['item'],$displayData['params'],array(),true); ?>
P.S. Или отметьте в админке "show_icons" и модифицируйте классы, к примеру, "icon-print".
« Последнее редактирование: 04.02.2016, 20:18:30 от robert » Записан
vipiusss
Профи
********

Репутация: +260/-8
Online Online

Пол: Мужской
Сообщений: 4571


Skype: renor_


« Ответ #5 : 04.02.2016, 20:18:55 »

роберт, а почему труе в коде?
а фалсе на что там повлияет? (для себя)
Записан
robert
Профи
********

Репутация: +343/-11
Offline Offline

Пол: Мужской
Сообщений: 3582


« Ответ #6 : 04.02.2016, 20:24:15 »

См. components/com_content/helpers/icon.php, функцию print_popup. Но лучше, как я писал выше, выбрать "Показывать иконки" и править CSS.
Записан
Yastroitel
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 112



« Ответ #7 : 04.02.2016, 20:31:57 »

В том то и дело что править CSS не хочется:)

То есть другого варианта нет?
Записан
robert
Профи
********

Репутация: +343/-11
Offline Offline

Пол: Мужской
Сообщений: 3582


« Ответ #8 : 04.02.2016, 21:38:17 »

Я вам дал 2 варианта, они оба не устраивают? Вы хотели
изменить на уровне шаблона
, но
править CSS не хочется:)
Тогда другой вариант есть - править класс JHtmlIcon. На уровне ядра.
Записан
Yastroitel
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 112



« Ответ #9 : 05.02.2016, 12:30:55 »

Большое спасибо за помощь - вы меня опять выручили

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

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

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

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

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

Репутация: +343/-11
Offline Offline

Пол: Мужской
Сообщений: 3582


« Ответ #10 : 05.02.2016, 13:26:19 »

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

Репутация: +1/-0
Offline Offline

Сообщений: 112



« Ответ #11 : 05.02.2016, 13:37:41 »

Пробовал:)

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

Спасибо за поддержку
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet