Новости Joomla

👩‍💻 События плагинов и порядок их срабатывания при работе с пользовательскими полями Joomla и использовании FieldsHelper.

👩‍💻 События плагинов и порядок их срабатывания при работе с пользовательскими полями Joomla и использовании FieldsHelper.

В процессе работы с Joomla бывает необходимо работать с пользовательским интерфейсом более тонко, чем обычно. Все формы Joomla состоят из стандартных полей, содержанием, стилем отображения, состоянием (включено/выключено, доступно для редактирования или нет и т.д.) можно управлять с помощью плагинов. Да и для нестандартных проектов хорошей практикой является создание одного системного или нескольких плагинов групп "под проект", в которых храниться весь "нестандарт".

В этой статье описаны все триггеры, которые вызываются через Event Dispatcher из administrator/components/com_fields/src/Helper/FieldsHelper.php, с привязкой к жизненному циклу (порядку этапов работы запроса), аргументам, изменяемым данным и дальнейшему распространению по Joomla. Это поможет вам работать с Joomla свободнее и не опасаясь при этом потерять изменения при очередном обновлении движка.

Подходы, описанные в статье, полезны в тех случаях, когда вы работаете с данными в com_fields - механизме создания и редактирования пользовательских полей ядра Joomla и при использовании FieldsHelper. Многие сторонние компоненты не используют эту возможность, поэтому данная статья будет полезна лишь частично.

Читать статью на Хабре.

@joomlafeed

🏆 Открыто голосование за Joomla в премии CMS Critic People’s Choice Awards 2025

🏆 Открыто голосование за Joomla в  премии CMS Critic People’s Choice Awards 2025

🗓 Голосование продлится до 27 февраля 2026 года.

👩‍💻 Проголосовать! 👩‍💻

Номинации, в которых можно проголосовать за Joomla:
⭐️ Best Free CMS
⭐️ Best Open Source CMS
⭐️ Best Enterprise CMS

Также в номинации Best e-Commerce Solution участвуют компоненты интернет-магазинов для Joomla:
⭐️ HikaShop
⭐️ Virtuemart

В номинации Best Website Builder оказались:
⭐️ YooTheme
⭐️ SP Page Builder

Что такое CMS Critic Awards?
С 2012 года премия CMS Critic Awards занимает особое место в сообществе систем управления контентом (CMS). Это единственный в своем роде сайт, который составляет рейтинг системы управления контентом и связанных с ними решений на рынке — от малого до крупного и подчеркивает их инновации и услуги.

Каждый год награда CMS Critic Awards присуждается одному победителю в различных отраслевых категориях, таких как: «Лучшая облачная CMS», «Лучший DXP», «Лучшая Headless CMS и других. Затем результаты оглашаются через СМИ вместе с выбором редакции CMS Critic.
В этом году премия вернулась к своим традициям и только TOP-5 движков по количеству номинаций попали в 2-й этап - голосование.

@joomlafeed

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

sammillord

  • Осваиваюсь на форуме
  • 43
  • 0 / 0
  • Уважаю продукты Adobe
Ребята, вы так много раз выручали, не бросьте и сейчас в беде :)
Верстаю шаблон, по дизайну и задумке у шаблона должны быть в самом низу расположены несколько иконок-ссылок, которые через админку (именно через интерфейс шаблона, это я так понимаю через XML файл шаба) можно заменять :) Ух, как то написал я не по-русски, надеюсь поймете.
Скрин прилагаю.

Для чего это нужно? Шаблон в будущем планируется выложить в паблик (авось кому понравиться и будут использовать), и нужно чтобы администратор мог не шурша по индексному файлу, мог легко загрузить свои иконки и присвоить ссылки куда они ведут.

П.С.: Как всегда, с Огромным Уважением к форумчанам :)
Если что то непонятно, то спрашивайте, объясню подробнее, все таки у меня таиться надежда что кто то, что то подобное уже делал.
*

sammillord

  • Осваиваюсь на форуме
  • 43
  • 0 / 0
  • Уважаю продукты Adobe
Так, самостоятельно добился того чтобы через админку можно было добавлять иконку, но как реализовать чтобы можно было еще и ссылку назначать этой иконке?

Теперь поделюсь как реализовал вывод иконок:
В XML файле шаблона добавил вот это:
Код
<config>
<fields name="params">
<fieldset name="advanced">
<field name="logo" type="media" label="LOGO_LABEL" description="TPL_BEEZ5_FIELD_LOGO_DESC" />
</fieldset>
</fields>
</config>

В общем то сделал по аналогии со стандартным шаблоном.

в index.php шаблона добавил в нужное мне расположение вот следующий код:

Код
<div id="button_1"><img src="<?php echo $this->params->get('logo');?>"/></div>

в итоге получил почти то что хотел, осталось только как то реализовать возможность задавать ссылки для тех или иных иконок через админку, надеюсь на вашу помощь, ну и сам сложа руки сидеть не буду :)

Вот что получилось в итоге:
*

sammillord

  • Осваиваюсь на форуме
  • 43
  • 0 / 0
  • Уважаю продукты Adobe
Все оказалось до боли просто, а так же осталось ощущение что я тут сам с собой общаюсь  ;D

Делюсь рецептом для новичков, возможно и пригодиться кому нибудь :)

И так, финальный результат в XML файле шаблона:
Код
<config>
<fields name="params">
<fieldset name="advanced">
<field name="logo_1" type="media" label="Иконка 1" description="Выберите загруженную ранее иконку" /> -Отвечает за выбор иконки в админке и вывод ее в шаблоне.
<field name="link_1"  type="text" default="" label="Ссылка для 1 иконки" description="Введите полный путь ссылки" filter="string" />

<field name="logo_2" type="media" label="Иконка 2" description="Выберите загруженную ранее иконку" />
<field name="link_2"  type="text" default="" label="Ссылка для 2 иконки" description="Введите полный путь ссылки" filter="string" />

<field name="logo_3" type="media" label="Иконка 3" description="Выберите загруженную ранее иконку" />
<field name="link_3"  type="text" default="" label="Ссылка для 3 иконки" description="Введите полный путь ссылки" filter="string" />

<field name="logo_4" type="media" label="Иконка 4" description="Выберите загруженную ранее иконку" />
<field name="link_42"  type="text" default="" label="Ссылка для 4 иконки" description="Введите полный путь ссылки" filter="string" />
</fieldset>
</fields>
</config>

В index.php добавил следующий код, в том месте где я хочу видеть эти иконки:
Код
<div id="button_1"><a class="but_1" href="<?php echo $this->params->get('link_1');?>"><img src="<?php echo $this->params->get('logo_1');?>"/></a></div>
      <div id="button_2"><a class="but_1" href="<?php echo $this->params->get('link_2');?>"><img src="<?php echo $this->params->get('logo_2');?>"/></a></div>
      <div id="button_3"><a class="but_1" href="<?php echo $this->params->get('link_3');?>"><img src="<?php echo $this->params->get('logo_3');?>"/></a></div>
      <div id="button_4"><a class="but_1" href="<?php echo $this->params->get('link_4');?>"><img src="<?php echo $this->params->get('logo_4');?>"/></a></div>
Тут думаю все должно быть понятно, а если не понятно, то нужно взглянуть на код в XML файле и потом снова сюда, все на самом деле оказалось просто :)

Ну и скрин, как это все выглядит в админке и в шаблоне:
« Последнее редактирование: 13.03.2012, 12:14:04 от sammillord »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

На локал сервере страницы сайта без шаблона, CSS и картинок

Автор Fati

Ответов: 0
Просмотров: 2329
Последний ответ 15.06.2025, 11:57:45
от Fati
Изменение шаблона Joomla! 2.5.24

Автор SecondPC

Ответов: 0
Просмотров: 5984
Последний ответ 26.03.2021, 18:09:33
от SecondPC
Руководство - создание шаблона для Joomla 2.5

Автор dynamit

Ответов: 6
Просмотров: 32926
Последний ответ 02.02.2020, 22:28:15
от AlinaBut
Ошибка при установке шаблона - Fatal error: Call to a member function setDebug() on a non-object in

Автор Mirotvoretz

Ответов: 33
Просмотров: 70388
Последний ответ 11.11.2018, 13:22:26
от vik38
При установки шаблона ошибка <<HTTP 500 (Internal Server Error)>>

Автор nekitko

Ответов: 16
Просмотров: 17559
Последний ответ 21.06.2017, 20:39:11
от bonny