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

max_1985

  • Давно я тут
  • 611
  • 56 / 0
Решил сделать выбор подкатегорий на главной через jQuery.
Исходники брал здесь http://efimov.ws/main/develop/javascript/jquery-mootols-css-plagini-part-6.html
Файл dcverticalmegamenu.css закинул в папочку CSS своего шаблона
Файл jquery.dcverticalmegamenu.1.3.js и jquery.hoverIntent.minified.js закинул в папочку js своего шаблона
В файле index.php своего шаблона, между <head></head> прописал так
Код
<link href="templates/[b]шаблон[/b]/css/dcverticalmegamenu.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type='text/javascript' src='templates/[b]шаблон[/b]/js/jquery.hoverIntent.minified.js'></script>
<script type='text/javascript' src='templates/[b]шаблон[/b]/js/jquery.dcverticalmegamenu.1.3.js'></script>
<script type="text/javascript">
$(document).ready(function($){

$('#mega-1').dcVerticalMegaMenu({
    rowItems: '2',
    speed: 'slow',
    effect: 'fade',
    direction: 'right'
});

});
</script>

В файле /components/com_adsmanager/views/front/view.html.php
Функцию function recurseCategories переписал так
Код
function recurseCategories( $id, $level, &$children) {
if (@$children[$id]) {
$i=0;$first=true;
foreach ($children[$id] as $row) {

$link = TRoute::_("index.php?option=com_adsmanager&view=list&catid=".$row->id);
if ($level == 0)
{
?>
<li>
                                  <?php

if (file_exists(JPATH_BASE."/images/com_adsmanager/categories/".$row->id."cat.jpg"))
echo '<a href="'.$link.'" title="'.$row->name.'"><img class="imgcat" src="'.$this->get('baseurl').'/images/com_adsmanager/categories/'.$row->id.'cat.jpg" alt="'.$row->name.'" />'.$row->name.' ('.$row->num_ads.')</a>';
else
echo '<a href="'.$link.'" title="'.$row->name.'"><img class="imgcat" src="'.$this->get('baseurl').'/components/com_adsmanager/images/default.gif" alt="'.$row->name.'" />'.$row->name.' ('.$row->num_ads.')</a>';
 ?>
<ul>

<?php
}
else
{
if ($first == false)
echo '<li><a href="'.$link.'" title="'.htmlspecialchars($row->name).'">'.htmlspecialchars($row->name).'</a></li>';
$first = false;
}
if ($level == 0)
{
$this->recurseCategories( $row->id, $level+1, $children);
}
if ($level == 0)
{
?>
</ul></li>
<?php
}
}
}
}

И в файле /components/com_adsmanager/views/front/tmpl/default.php, должно быть так
Код
<div class="demo-container clear"><div class="test"><ul id="mega-1" class="mega-menu">
<?php
$this->recurseCategories( 0, 0, $this->cats);
?>
</ul></div></div>

Результат на new.ad.kh.ua

Появилась проблема не загружаются подкатегории в IE9.
Помогите кто может!

[вложение удалено Администратором]
« Последнее редактирование: 06.12.2012, 15:50:16 от max_1985 »
*

GlooM

  • Давно я тут
  • 558
  • 91 / 0
  • AdsManager
(предположение) Как мне кажется, у вас #mega-1 все время. Необходимо разные идентификаторы, хотя бы mega-[catid]
*

max_1985

  • Давно я тут
  • 611
  • 56 / 0
(предположение) Как мне кажется, у вас #mega-1 все время. Необходимо разные идентификаторы, хотя бы mega-[catid]
С этим разобрался, но чуть по другом. Все равно спасибо!
« Последнее редактирование: 05.12.2012, 19:57:33 от max_1985 »
*

max_1985

  • Давно я тут
  • 611
  • 56 / 0
Появилась проблема не загружаются подкатегории в IE9.
Помогите, может проблема с jQuery. Хотя в демке работает все ок.
http://www.designchemical.com/lab/jquery-vertical-mega-menu-plugin/examples/
« Последнее редактирование: 06.12.2012, 15:04:08 от max_1985 »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Выбор марки>модели автомобиля

Автор THE KILLERS

Ответов: 16
Просмотров: 5642
Последний ответ 06.05.2025, 22:24:58
от Matzzz
Загрузка jquery

Автор web3.0

Ответов: 0
Просмотров: 1072
Последний ответ 07.07.2017, 21:50:42
от web3.0
Вывод ограниченного числа подкатегорий на главной

Автор svetlana87

Ответов: 6
Просмотров: 2405
Последний ответ 03.03.2017, 19:07:57
от stendapuss
Выравнивание категорий на главной

Автор addam

Ответов: 28
Просмотров: 9667
Последний ответ 14.01.2017, 09:10:24
от Doc
Плагин для оплаты в Invoicing через Интеркассу

Автор grinat

Ответов: 2
Просмотров: 2082
Последний ответ 02.12.2015, 19:27:31
от grinat