Новости Joomla

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

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

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

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

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

🏆 Открыто голосование за 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 Ответов
  • 1778 Просмотров
*

tormentor

  • Осваиваюсь на форуме
  • 23
  • 3 / 0

Привет народ.

Подскажите пожалуйста как ограничить вывод подкатегорий в AdsManager до 5 например. Просто с количеством подкатегорий больше 10 доска смотрится не читабельно. Пример такой реализации я кстати видел на этом сайте - http://tovar.rv.ua

Если количество категорий больше 5 выводит троеточие или далее
*

tormentor

  • Осваиваюсь на форуме
  • 23
  • 3 / 0
решил так:
в файле view.html.php добавил счетчик $counter

и в этом куске кода добавил
Код
if ($level == 0)
{
$this->recurseCategories( $row->id, $level+1, $children,$itemid);
}if($counter==2) { echo ' - ... '; break; }
если счетчик равен 2, то выводятся первые 3 подкатегории, так как отсчет идет от 0.
не знаю насколько это правильно, буду рад любым советам
« Последнее редактирование: 23.03.2012, 17:52:01 от tormentor »
*

tormentor

  • Осваиваюсь на форуме
  • 23
  • 3 / 0
подскажите еще как теперь вывести тут
Код
if($counter==2) { echo ' - ... '; break; }
ссылку на основную категорию?
Чтобы по нажатию на эти 3 точки открывалась родительская категория
вот кстати код целиком:
Код
function recurseCategories( $id, $level, &$children,$itemid) {

if (@$children[$id]) {
$i=0;$first=true; $counter=0;
foreach ($children[$id] as $row) {
$link = JRoute::_("index.php?option=com_adsmanager&view=list&catid=".$row->id."&Itemid=".$itemid);
if ($level == 0)
{
if ($i==0)
{
echo '<tr align="center">';
}
?>
<td width="33%" valign="top">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
  <td rowspan="2" width="80" valign="top"><div align="center">
  <?php
if (file_exists(JPATH_BASE."/images/com_adsmanager/categories/".$row->id."cat.jpg"))
echo '<a href="'.$link.'"><img class="imgcat" src="'.$this->get('baseurl').'/images/com_adsmanager/categories/'.$row->id.'cat.jpg" alt="'.$row->name.'" /></a>';
else
echo '<a href="'.$link.'"><img class="imgcat" src="'.$this->get('baseurl').'/components/com_adsmanager/images/default.gif" alt="'.$row->name.'" /></a>';
  ?>
  </div></td>
  <td class="adsmanager_main_cat">
<a href="<?php echo $link; ?>"  ><?php echo $row->name." (".$row->num_ads.")"; ?></a>
  </td>
</tr>
<tr>
<td class="adsmanager_sub_cat">
<?php
}
else
{
if ($first == false)
echo ' | ';
echo '<a class="ads_sub_cat_link" href="'.$link.'">'.$row->name./*" (".$row->num_ads.")".*/'</a>';
$first = false;
}
if ($level == 0)
{
$this->recurseCategories( $row->id, $level+1, $children,$itemid);
}if($counter==4){ echo ' - ... '; break; }
if ($level == 0)
{
?>
</td>
</tr>
</table>
</td>
<?php
if ($i==2)
{
echo '</tr>';
}
}
$i++;
$counter++;
if ($i == 3) $i=0;
}
}
}
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

[Решено]Дублирования ссылки "объвления" в breadcrumb, в компоненте AdsManager

Автор nicklas

Ответов: 4
Просмотров: 6126
Последний ответ 25.04.2024, 23:13:18
от Rinat abzyi
AdsManager вывод нужных полей по отдельности

Автор klekovkinandrey

Ответов: 2
Просмотров: 16791
Последний ответ 06.04.2024, 09:54:15
от Rinat abzyi
Вывод данных

Автор FlexNL

Ответов: 0
Просмотров: 3770
Последний ответ 06.11.2021, 12:37:54
от FlexNL
AdsManager загрузка файлов

Автор FlexNL

Ответов: 1
Просмотров: 5341
Последний ответ 21.10.2021, 17:20:09
от khan-alex
AdsManager 2.9.13 Есть ли возможность добавить функцию снять с публикации по мимо редактировать и уд

Автор murovoz

Ответов: 11
Просмотров: 15775
Последний ответ 27.03.2020, 22:39:23
от Pavel