Новости Joomla

Метод registerListeners() в CMSPlugin в плагинах планируется удалить в Joomla 7.0

Метод registerListeners() в CMSPlugin в плагинах  планируется удалить в Joomla 7.0

👩‍💻 Метод registerListeners() в CMSPlugin в плагинах планируется удалить в Joomla 7.0.Этот метод регистрирует устаревшие слушатели событий в диспетчере, имитируя работу плагинов Joomla! 3.x и ниже для Joomla 4+. По умолчанию этот метод ищет все общедоступные методы, название которых начинается с on. Он регистрирует лямбда-функции (замыкания), которые пытаются преобразовать аргументы отправленного события в аргументы вызова метода и вызвать ваш метод on<Что-то>. Результат передаётся обратно событию в его аргумент result.Теперь этот слой совместимости с устаревшей Joomla 3 помечен к удалению в Joomla 7.0, которая должна выйти осенью 2027 года. Это означает, что те уникальные расширения от Joomla 2.5 / Joomla 3, которые ещё работали на Joomla 4-6 скорее всего окончательно перестанут работать на Joomla 7. Предполагается, что активные разработчики планомерно и постепенно избавляются от технического долга и обновляют свои расширения. @joomlafeed#joomla #разработка #php

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

Barsuk36

  • Новичок
  • 3
  • 0 / 0
Всем привет!
Помогите уважаемые специалисты, уже спать не могу изза проблемы.
Суть в следующем. при помощи модулей с этого форума удалось вывести список категорий и подкатегорий в древовидном виде с “+” и “-” для скрытия и закрытия ветвей и активной ссылкой для родительской категории. Вот этот модуль который усовершенствованный http://joomlaforum.ru/index.php?topic=321875.0
Однако беда в том что список подкатегорий 2 уровня достаточно длинный и необходимо добавить спойлер чтобы, начиная с 3, он их сворачивал и разворачивал.
нашел на форуме аналог http://joomlaforum.ru/index.php?topic=228913.0 там используется collapsorz и надо ul и li оборачивать в div, а в приведенном модуле в шаблоне все задано циклами и что делать не понятно. Можно ли еще каким то способом это сделать?
*

Barsuk36

  • Новичок
  • 3
  • 0 / 0
Код
<?php if (!empty($arResult)):?>
<?php  
$url = 'modules/mod_od_jshopping_cat/tmpl/activelink/js/active.js';
$document->addScript(JURI::base(). $url);
?>

<script type="text/javascript">
$(function() {
     $("#nav_list_first:first-child").collapsorz({
     minimum: 2
       , showText: "Показать все >>>"
         , hideText: "Скрыть <<<"
     });
});
</script>


<div id="test">

<ul id="nav_list_first" class="odcat <?php if($class){ echo $class;}?>">
<?php
$previousLevel = 0;
foreach($arResult as $arItem):?>
<?php if ($previousLevel && $arItem["DEPTH"] < $previousLevel):?>
<?php echo str_repeat("</ul></li>", ($previousLevel - $arItem["DEPTH"]));?>
<?php endif?>
<?php if ($arItem["IS_PARENT"]):?>
<?php if ($arItem["DEPTH"] == 1):?>
<li class="<?php if ($arItem["SELECTED"]):?> active<?php endif?>">
<a href="<?php echo $arItem["LINK"]?>" class="root parent<?php if ($arItem["SELECTED"]):?> active<?php endif?>">
<?if(($display_img == 1) and $arItem["IMG"]):?>
<img src="<?php echo $jshopConfig->image_category_live_path."/".$arItem["IMG"]?>">
<?endif?>
<?php echo $arItem["NAME"]?><?php if($count){echo ' ('.$arItem["COUNT"].')';}?>
</a>
<span class="root parent<?php if ($arItem["SELECTED"]):?> active<?php endif?>"></span>
<ul class="odsubcat-<?php echo $arItem["DEPTH"]?>">
<?php else:?>
<li class="<?php if ($arItem["SELECTED"]):?> active<?php endif?>">
<a href="<?php echo $arItem["LINK"]?>" class="parent<?php if ($arItem["SELECTED"]):?> active<?php endif?>">
<?if(($display_img == 1) and $arItem["IMG"]):?>
<img src="<?php echo $jshopConfig->image_category_live_path."/".$arItem["IMG"]?>">
<?endif?>
<?php echo $arItem["NAME"]?><?php if($count){echo ' ('.$arItem["COUNT"].')';}?>
</a>
<span class="parent<?php if ($arItem["SELECTED"]):?> active<?php endif?>"></span>
<ul class="odsubcat-<?php echo $arItem["DEPTH"]?>">
<?php endif?>
<?php else:?>
<?php if ($arItem["DEPTH"] == 1):?>
<li class="<?php if ($arItem["SELECTED"]):?> active<?php endif?>">
<a href="<?php echo $arItem["LINK"]?>" class="root<?php if ($arItem["SELECTED"]):?> active<?php endif?>">
<?if(($display_img == 1) and $arItem["IMG"]):?>
<img src="<?php echo $jshopConfig->image_category_live_path."/".$arItem["IMG"]?>">
<?endif?>
<?php echo $arItem["NAME"]?><?php if($count){echo ' ('.$arItem["COUNT"].')';}?>
</a>
</li>
<?php else:?>
<li class="<?php if ($arItem["SELECTED"]):?> active<?php endif?>">
<a href="<?php echo $arItem["LINK"]?>" <?php if ($arItem["SELECTED"]):?>class="active"<?php endif?>>
<?if(($display_img == 1) and $arItem["IMG"]):?>
<img src="<?php echo $jshopConfig->image_category_live_path."/".$arItem["IMG"]?>">
<?endif?>
<?php echo $arItem["NAME"]?><?php if($count){echo ' ('.$arItem["COUNT"].')';}?>
</a>
</li>
<?php endif?>
<?php endif?>
<?php $previousLevel = $arItem["DEPTH"];?>
<?php endforeach?>
<?php if ($previousLevel > 1)://close last item tags?>
<?php echo str_repeat("</ul></li>", ($previousLevel-1) );?>
<?php endif?>
</ul>
<?php endif?>

</div>


Вот шаблон этого модуля где я добавил <div id="test"> и в таком варианте спойлер работает но только для главный категорий, а вот для подкатегорий не получается >:(
В какую строчку не добавлю разметка сбивается, а если не сбивается то не показывает подкатегории по клику на +.
« Последнее редактирование: 24.05.2016, 09:50:17 от Barsuk36 »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Вывод товаров из всех подкатегорий на странице категории

Автор Faina

Ответов: 355
Просмотров: 69296
Последний ответ 11.10.2025, 08:48:34
от kit2m2
Изменить стили подкатегорий

Автор mag_num83

Ответов: 14
Просмотров: 2230
Последний ответ 07.03.2024, 13:20:59
от mag_num83
[Решено] Порядок подкатегорий

Автор jimka

Ответов: 7
Просмотров: 2972
Последний ответ 15.04.2021, 10:01:57
от jimka
Скрыть фильтр товаров под спойлер для мобильных

Автор yurykom

Ответов: 26
Просмотров: 2514
Последний ответ 21.03.2019, 16:52:12
от Mushu-svbk
Где шаблон подкатегорий

Автор leha111

Ответов: 4
Просмотров: 1148
Последний ответ 23.01.2019, 09:25:57
от nevigen