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

olejenya

  • Захожу иногда
  • 218
  • 3 / 0
Пагинация в модуле
« : 30.10.2015, 23:29:49 »
Привет всем.Пытаюсь реализовать пагинацию для модуля,
 $limit      = JRequest::getVar('limit', 4);
    $limitstart = JRequest::getVar('limitstart', 0);
    
    $db         =& JFactory::getDBO();
    
    $query    = "SELECT count(*) FROM jos_virtuemart_products";
    $db->setQuery( $query );
    $total    = $db->loadResult();
    
    $query      = "SELECT * FROM jos_virtuemart_products";
    $db->setQuery ( $query, $limitstart, $limit);
    $rows       = $db->loadObjectList();
    
    if ($db->getErrorNum())
    {
      echo $db->stderr();
      return false;
    }
    
    jimport( 'joomla.html.pagination' );
    $pageNav = new JPagination($total, $limitstart, $limit);
    //var_dump($pageNav);
    echo $pageNav->getListFooter();
Пагинация вывелась, но теперь когда щелкаешь, она добавляет в строку юрл, номирацию страниц, это не очень красиво, и мне не надо впринциппе это.Что сделать, как убрать?
*

voland

  • Легенда
  • 11026
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Re: Пагинация в модуле
« Ответ #1 : 30.10.2015, 23:39:10 »
Потому что пагинация предназначена для компонентов.
*

bolonia

  • Захожу иногда
  • 222
  • 27 / 0
Re: Пагинация в модуле
« Ответ #2 : 31.10.2015, 00:18:08 »
Переопределить текущую пагинацию в Joomla наверное не вариант, так что писать свою реализацию.
Бесплатный модуль обратного звонка / обратной связи для J3: http://joomlaforum.ru/index.php?topic=309065.0
*

voland

  • Легенда
  • 11026
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Re: Пагинация в модуле
« Ответ #3 : 31.10.2015, 00:22:41 »
Для модуля может быть ТОЛЬКО пседвопагинация, то есть через JS, никаких новых урлов быть не может, для этого нужен компонент.
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
Re: Пагинация в модуле
« Ответ #4 : 31.10.2015, 00:26:51 »
как мне нравится "аля-вот вам код, вод я хочу, и не как"
это типа-вот вам движок он запорожка, я вствил в мерс, но мерс чтото не едет

ТСвам правильно советуют, ну куда вы ваш код, скопированный тулить будете?
А до кода что?.Ну одно дело не шарят, но другое-тут же код дали...
Чем больше я читаю такие темы, тем более я люблю своего кота!
Voland-ещё раз привет.
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

olejenya

  • Захожу иногда
  • 218
  • 3 / 0
Re: Пагинация в модуле
« Ответ #5 : 31.10.2015, 00:56:15 »
просто не хотел свое писать, потому что больше года не занимался этим, решил быстрым способом реализовать.
Мне надо как раз чистый юрл.понял, дурацкая идея.Спасибо.
*

voland

  • Легенда
  • 11026
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Re: Пагинация в модуле
« Ответ #6 : 31.10.2015, 00:57:26 »
Спасибо.
Не за что, в смысле мой ответ заминусовали, такие дела на форуме :-(
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Пагинация в модуле
« Ответ #7 : 31.10.2015, 01:08:59 »
мой ответ заминусовали, такие дела на форуме :-(
Хм, voland, что вы сделали этому bolonia?
Не будь паразитом, сделай что-нибудь самостоятельно!
*

voland

  • Легенда
  • 11026
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Re: Пагинация в модуле
« Ответ #8 : 31.10.2015, 01:11:39 »
Хм, voland, что вы сделали этому bolonia?
Ничего, даже минуса не ставил, что конечно странно.
*

umbabaraumba

  • Живу я здесь
  • 2415
  • 153 / 1
  • если помог можете поставить +
Re: Пагинация в модуле
« Ответ #9 : 02.11.2015, 23:52:52 »
Ничего, даже минуса не ставил, что конечно странно.
А он уже два минуса поставил...
Errare humanum est
Ubuntu по-русски
Пишу не сложные модули и компоненты, не дорого но не срочно
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Re: Пагинация в модуле
« Ответ #10 : 03.11.2015, 11:07:48 »
Пагинация вывелась, но теперь когда щелкаешь, она добавляет в строку юрл, номирацию страниц, это не очень красиво, и мне не надо впринциппе это.Что сделать, как убрать?
перехват пагинации через JS, отправка аяксом в модуль, и вывод там контента модуля вместе с пагинацией, только так не будет добавляться нумирация страниц!


Потому что пагинация предназначена для компонентов.
Что честно? Именно для компонентов? А пагинация об этом знает?!

Для модуля может быть ТОЛЬКО пседвопагинация, то есть через JS, никаких новых урлов быть не может, для этого нужен компонент.
А чем модуль отличается от компонента? Тем что компонент выводится в <jdoc:include type="component" /> А модуль в <jdoc:include type="modules" name="name" />! Что  там что там выводится произовльный кусок кода!


просто не хотел свое писать, потому что больше года не занимался этим, решил быстрым способом реализовать.
Мне надо как раз чистый юрл.понял, дурацкая идея.Спасибо.
Да ничего дурацкого!
Вот пример: http://med53.ru/ модуль внизу "Новые отзывы о врачах и мед.учреждениях", как раз таки стандартная пагинация + AJAX!
Работает так!
Выводите как выводили, а дальше перехват клика:
Код: php
<script>
jQuery(document).ready(function ($) {
$(document).on('click', '.home-comment-pagination a', function () {
$.get($(this).attr('href') + '&option=com_ajax&module=wss_content&method=getComments&format=raw&Itemid=101', function (responce) {
$('.ajax-comments-wrapper').html(responce);
});
return false;
});
});
</script>
.home-comment-pagination - это блок в котором пагинация (называете как вам удобно, это что бы пагинация не была перехвачена в компоненте)
module=wss_content - имя вашего модуля в который вы стучитесь (без приставки mod)
method=getComments - имя метода в который вы стучитесь
&Itemid=101 - если у вас модуль отображается только на определенных страницах, то обязательно передавать Itemid текущей страницы!


А дальше идете в файл helper.php вашего модуля и там в классе добавляете метод:
Код: php
static function getCommentsAjax(){
//тут получаете все что вам нужно по данным и пагинации из $_REQUEST
?>
тут выводим разметку модуля и пагинацию
<?php
}

в getCommentsAjax вы так же само получаете данные и формируете пагинацию, только надо будет в методе вывести контент
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
Re: Пагинация в модуле
« Ответ #11 : 03.11.2015, 11:13:51 »
вот ты заморочился,+1 в репу.
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: Пагинация в модуле
« Ответ #12 : 03.11.2015, 11:19:03 »
интересно что насоветовали бы (кроме Istaan - он-то точно ответ знает), если бы нужно было в одном компоненте на одной странице вывести три пагинатора?
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
Re: Пагинация в модуле
« Ответ #13 : 03.11.2015, 11:23:58 »
послали бы в хелпер ;D
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Пагинация в модуле
« Ответ #14 : 03.11.2015, 11:58:05 »
интересно что насоветовали бы (кроме Istaan - он-то точно ответ знает), если бы нужно было в одном компоненте на одной странице вывести три пагинатора?
А что представляет собой пагинация? Это просто набор ссылок с разными значениями limit и limistart. Без JS использовать родную Joomla-пагинацию, думаю, не получится: нужно давать разным блокам разные имена переменных. С JS - хоть десять: наверняка уже видели, как основная картинка меняется при клике на иконки внизу, чем это не пагинация?
Не будь паразитом, сделай что-нибудь самостоятельно!
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
Re: Пагинация в модуле
« Ответ #15 : 03.11.2015, 12:02:58 »
основная картинка меняется при клике на иконки внизу, чем это не пагинация?
а зачем скрипт?можно и CSS ведь.....
вообще, при чём тут пагинация и модуль?
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Re: Пагинация в модуле
« Ответ #16 : 03.11.2015, 12:07:46 »
Без JS использовать родную Joomla-пагинацию, думаю, не получится: нужно давать разным блокам разные имена переменных.
На одной странице можно вообще то использовать сколько угодно пагинаций без использования JS
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Пагинация в модуле
« Ответ #17 : 03.11.2015, 12:22:19 »
а зачем скрипт?можно и CSS ведь.....
Да? Тогда подскажите, как посредством CSS передать данные?
На одной странице можно вообще то использовать сколько угодно пагинаций без использования JS
Возможно, но не углублялся, предпочитаю AJAX'ом получить данные, благо кода совсем немного.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
Re: Пагинация в модуле
« Ответ #18 : 03.11.2015, 12:28:36 »
robert я просто имел ввиду не передачу, а смену при пагинации.
сорри, не так выразился.
///
а чего тему так усугубили?изза вопроса Алека?
нет спроса-нет вопроса, чего напряглись не изза чего...
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Вывести модуль в модуле

Автор jimka

Ответов: 2
Просмотров: 1776
Последний ответ 18.04.2025, 15:39:36
от fbr
Пагинация страниц

Автор Anna_N

Ответов: 3
Просмотров: 849
Последний ответ 06.01.2025, 02:45:52
от pavelrer
[Решено] Вывод значений из custom fields материала в модуле по имени поля

Автор goga_pgasovav

Ответов: 3
Просмотров: 1530
Последний ответ 30.12.2024, 13:22:11
от goga_pgasovav
Вывод дополнительного поля материала в модуле

Автор timofe

Ответов: 10
Просмотров: 2679
Последний ответ 06.10.2023, 14:02:24
от Mitriy
Как вставить картинку материала в модуле Последние материалы?

Автор androv77

Ответов: 13
Просмотров: 1853
Последний ответ 20.12.2022, 08:37:38
от marksetter