Новости 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 Гость просматривают эту тему.
  • 12 Ответов
  • 2766 Просмотров
*

SiFF

  • Новичок
  • 9
  • 0 / 0
Всем привет, в Joomla и CSS я жутко слаб, но хорош в php (т.е. наличие мозга и отсутствие "блондинистости" и "синдрома бухгалтера")
Пытаюсь создать устанавливаемый как расширение шаблон но терплю фиаско в который раз.
Вот тут выложил результаты своих "трудов" и исходную верстку.
Шаблон - ужас, это я знаю, просто взял любопытства ради.
Уважаемое сообщество, слёзно прошу посильной помощи, желательно с пояснениями ^-^
Спасибо.
*

Grigory S.

  • Давно я тут
  • 658
  • 70 / 0
  • (с)
А конкретнее в чём проблема? Вряд-ли кто будет качать ~40 МБ :)
Не задав правильный вопрос, невозможно получить правильный ответ.
Для "спасибок" существует кнопочка "+".
*

SiFF

  • Новичок
  • 9
  • 0 / 0
А конкретнее в чём проблема? Вряд-ли кто будет качать ~40 МБ :)
Конкретно: распаковал по той же ссылке, чтобы можно было файлики смотреть по-отдельности: получаю лишь шапку и всё, контента нет, ничего нет.
И шаблон сам по себе не устанавливается, только методом "принуждения":(
« Последнее редактирование: 16.04.2014, 07:19:42 от SiFF »
*

Shustry

  • Moderator
  • 6434
  • 745 / 3
Все модули и весь демо-контент идёт с квикстартом. Его нужно ставить как Joomla, на чистое место.
*

Grigory S.

  • Давно я тут
  • 658
  • 70 / 0
  • (с)
В index.php для вывода контента не хватает вот этого
Код: php
<jdoc:include type="message" />
<jdoc:include type="component" />

templateDetails.xml
Код: xml
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE install PUBLIC "-//Joomla! 2.5//DTD template 1.0//EN" "http://www.joomla.org/xml/dtd/2.5/template-install.dtd">
<extension version="3.1" type="template" client="site">
        <name>hand-made</name>
        <creationDate>01.12.2013</creationDate>
        <author>Ira Yermak</author>
        <authorEmail>info@saita.net</authorEmail>
        <authorUrl>http://saita.net</authorUrl>
        <copyright>2013 Ira Yermak</copyright>
        <license>GNU/GPL</license>
        <version>1.0.0</version>
        <description><![CDATA[Просто шаблон]]></description>
        <files>
                <filename>index.php</filename>
                <filename>index.html</filename>
                <filename>templateDetails.xml</filename>
                <filename>style1.css</filename>
                <folder>images</folder>
                <folder>js</folder>
                <folder>resource</folder>
        </files>
        <positions>
                <position>top-menu</position>
                <position>top-picture</position>
                <position>left-menu</position>
                <position>content</position>
                <position>footer</position>
        </positions>
</extension>
Не задав правильный вопрос, невозможно получить правильный ответ.
Для "спасибок" существует кнопочка "+".
*

SiFF

  • Новичок
  • 9
  • 0 / 0
В index.php для вывода контента не хватает вот этого
Код: php
<jdoc:include type="message" />
<jdoc:include type="component" />
Проверял, не работает.
*

SiFF

  • Новичок
  • 9
  • 0 / 0
C большего разобрался: проблема была в избыточном весе.
Сверстал, натянул, вроде все в порядке, но верстка малость "выросла" по вертикали: Скрин . Подскажите пожалуйста: как исправить?
Исходный код макета:
Код
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru" lang="ru">
<head>
   <title>Украшения ручной работы | Украшения hand-made</title>
   <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
   <script type='text/javascript' src='js/jquery-1.10.2.min.js'></script>
   <script type= "text/javascript" src = "script_gallery.js"></script>

<link rel="stylesheet" type="text/css" href="style1.css" />
</head>

<body>
<div class="all">
<div class="header">
<div class="menu">
<ul>
<li class="menu_act"><a href="main.html">главная</a></li>
<li><a href="photo.html">фото</a></li>
<li><a href="links.html">статьи</a></li>
<li><a href="news.html">новинки</a></li>
<li><a href="mail.html">контакты</a></li>
</ul>
</div>
<div class="name">
<img src="images/name.png"/>
<div class="name1"><a href="main.html"><img src="images/logo.png"  title="BUY FUN!" class="logo"/></a></div>
</div>
</div>
<div class="content">
<div class="left_menu">
<ul>
<li><a href="earrings.html">серьги</a></li>
<li><a href="rings.html">кольца</a></li>
<li><a href=" bracelets.html">браслеты</a></li>
<li><a href="pendents.html">кулоны</a></li>
<li><a href="news.html">новинки</a></li>
</ul>
</div>
<div id="album">
<div id="podlogka"></div>
<img id="photo" src="images/photo.jpg" alt="" title=""/>
</div>
<div class="text">
<p>Добро пожаловать!</p>
<p><a href="photo.html"> Здесь</a> Вы можете увидеть мои работы.<br/>
Украшения ручной работы из полимерной
глины - это отличный способ
порадовать себя, ребенка или
любимую девушку. Вы не
встретите двух одинаковых
украшений, даже если дело
касается пары сережек, -
ведь все они сделаны моими
руками :)<br/>
Они радуют глаз и дарят
заряд позитивной энергии
даже в самый серый и неудачный
день.</p>
</div>
</div>
<div class="footer">
<p>&copy; 2013 <a href="mailto:ira.ermak.inbox.ru">Ira Yermak</a></p>
</div>
</div>


</body>
</html>

Исходный код темплейта:
Код
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru" lang="ru">
<head>
   <jdoc:include type="modules"  name="head" />

   <script type='text/javascript' src='js/jquery-1.10.2.min.js'></script>
   <script type= "text/javascript" src = "script_gallery.js"></script>
<link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/system/css/system.css" type="text/css" />
        <link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/<?php echo $this->template; ?>/css/bootstrap.css" type="text/css" />
        <link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/<?php echo $this->template; ?>/style1.css" type="text/css" />
</head>

<body>
<?php
$document = JFactory::getDocument();
$document->addScript('/templates/hand-made/js/jquery-1.10.2.min.js');
$document = JFactory::getDocument();
$document->addScript('/templates/hand-made/js/script_gallery.js');
?>
<div class="all">
<div class="header">
<div class="menu">
<jdoc:include type="modules"  name="top-menu" style="none"/>
</div>
<div class="name">
<img src="/templates/hand-made/images/name.png"/>
<div class="name1"><a href="index.php"><img src="/templates/hand-made/images/logo.png"  title="BUY FUN!" class="logo"/></a></div></div>
</div>
<div class="content">
<div class="left_menu">
<jdoc:include type="modules"  name="left-menu" style="none"/>
</div>
        <?php
//Проверка является ли страница главной
function isFrontPage(){
$menu = &JSite::getMenu();
if ($menu->getActive() == $menu->getDefault())
return true ;
else return false;
}
if (isFrontPage() == 1) {
            echo '
<div id="album">
<div id="podlogka"></div>
<img id="photo" src="/templates/hand-made/images/photo.jpg" alt="" title=""/>
</div>';
}
?>
             
<div class="text">
<jdoc:include type="message" />
     <jdoc:include type="component" />>
</div>
</div>
<div class="footer">
<p>&copy; 2013 <a href="mailto:ira.ermak.inbox.ru">Ira Yermak</a></p>
</div>
</div>


</body>
</html>
И почему-то не работает Js-вертелка. Может быть js надо не в head а как-то по-другому привертеть?
*

Grigory S.

  • Давно я тут
  • 658
  • 70 / 0
  • (с)
Firebug'ом посмотрите...
Не задав правильный вопрос, невозможно получить правильный ответ.
Для "спасибок" существует кнопочка "+".
*

SiFF

  • Новичок
  • 9
  • 0 / 0
http://clip2net.com/s/7f8HqX : подрубил simple Image Gallery а тут такое счастье...
возможно нужно скрипт какой-то в шаблон включать?
На стандартном выглядит как надо.
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Уберите из шаблона это:
Код
<script type='text/javascript' src='js/jquery-1.10.2.min.js'></script> 

перед <!DOCTYPE ... вставьте:
Код: php
<?php
defined('_JEXEC') or die;
JHtml::_('jquery.framework');
?>
*

SiFF

  • Новичок
  • 9
  • 0 / 0
Уберите из шаблона это:
Код
<script type='text/javascript' src='js/jquery-1.10.2.min.js'></script> 
Уже давно убрал все внешние JS.

перед <!DOCTYPE ... вставьте:
Код: php
<?php
defined('_JEXEC') or die;
JHtml::_('jquery.framework');
?>
Добавил:
Код
<?php 
defined('_JEXEC') or die;
JHtml::_('jquery.framework');
$app = JFactory::getApplication();
?>
Не спасло:(
*

SiFF

  • Новичок
  • 9
  • 0 / 0
Всем спасибо за посильную помощь!
С большего разобрался.
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
А как разобрался?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Шаблон заготовка masterbootstrap

Автор zxvorobey

Ответов: 1
Просмотров: 4167
Последний ответ 20.02.2018, 07:23:49
от effrit
Шаблон не видит переменные локализации кроме глобальных (Joomla 3.8)

Автор s.elena133

Ответов: 10
Просмотров: 5161
Последний ответ 09.12.2017, 18:27:18
от Ilhom666
Шаблон Shaper Xeon. Не переходит к созданным материалам

Автор wowcheg

Ответов: 1
Просмотров: 4406
Последний ответ 28.06.2017, 13:23:27
от sakhalin4242
Шаблон панели администратора ISIS 3 изменный

Автор beliyadm

Ответов: 11
Просмотров: 9341
Последний ответ 11.09.2016, 22:16:39
от beliyadm
Шаблон - как принято?

Автор Мурзик

Ответов: 5
Просмотров: 4865
Последний ответ 25.08.2016, 14:00:35
от beliyadm