Новости Joomla

👩‍💻 Joomla включена в программу Google Summer of Code 2026.

👩‍💻 Joomla включена в программу Google Summer of Code 2026.

Google Summer of Code (GSoC) - программа компании Google, которая позволяет участникам программы под руководством опытных наставников писать код для организаций, занимающейся открытым исходным кодом. Joomla принимает участие в этой программе не в первый раз и в 2026 году снова включена в список GSoC. Для программы утверждается список "идей", воплотить которые должны участники под руководством наставников.

Проекты Joomla в рамках программы GSoC 2026.

Проект I: Ajax-бэкенд.
- Действия в административной панели без необходимости обновлять страницу.
- Автоматическое сохранение содержимого во время редактирования.
- Расширенный фильтр - поиск и фильтрация по пользовательским полям.

Проект II: Автоматизация рабочих процессов (workflow + task scheduler).
Joomla имеет функцию процессов и планировщика задач. Теперь эти две функции следует объединить, чтобы пользователь мог настраивать назначенные рабочие процессы таким образом, чтобы переходы выполнялись автоматически, с возможностью точного определения времени. Должна быть возможность создавать циклы или прямые запланированные рабочие процессы. Предполагается, что интерфейс должен учитывать хороший пользовательский опыт, удобство использования и современные стандарты доступности. Ожидается, что будет добавлен интерфейс для управления процессами и их расписанием на страницах категорий и материалов. Так же ожидается, что сторонние компоненты также смогут воспользоваться этим функционалом.

Проект III: Мультикатегории.
В настоящее время Joomla! не позволяет назначать один элемент нескольким категориям. Хотя система тегов часто используется в качестве замены, существует острая потребность в нативной поддержке нескольких категорий, чтобы привести Joomla! в соответствие с другими современными системами управления контентом.

Проект IV: Обучение с подкреплением на основе отзывов переводчиков.
Joomla собирается использовать автоматический перевод документации. В каждом языке есть свои специфические слова, характерные для Joomla. Предполагается обучать языковые модели, используя обратную связь от переводчиков, чтобы постоянно улучшать качество переводов и учитывать специфические языковые особенности Joomla.

Принять участие GSoC 2026
Подробнее о проектах Joomla GSoC 2026
Чат GSoC в Mattermost (международное сообщество Joomla)

Вышли релизы Joomla 6.0.3 и Joomla 5.4.3

Релиз Joomla 6.0.3 и Joomla 5.4.3

Проект Joomla рад сообщить о выпуске Joomla 6.0.3 и Joomla 5.4.3. Это релиз исправлений ошибок и улучшений для серии Joomla 6.0 и Joomla 5.4.

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

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

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

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

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

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

Artrum

  • Осваиваюсь на форуме
  • 31
  • 2 / 0
Добрый день ув. знатоки.
Стала задача добавить новый поисковый запрос "жилая площадь", "размер кухни", "размер участка", добавил эти поля в search.html.php             

echo "<div class=\"ea_sf_container\"><label class=\"ea_sf_label\">".JText::_('EA_OBJ_PP_SIZE')."</label>"
            .$lists['livingspacemin']."<span class=\"maxlabel\">".JText::_('EA_SEARCH_MIN')."</span>"."</div>";
            echo "<div class=\"ea_sf_container\"><label class=\"ea_sf_label\">".'&nbsp;'."</label>"
            .$lists['livingspacemax']."<span class=\"maxlabel\">".JText::_('EA_SEARCH_MAX')."</span>"."</div>";
            echo "<br/>";


но естественно поиск не происходит, так как параметры поиска берутся и копируются из "общая площадь",   подскажите где именно запрос указывать в каком разделе базы данных должен проходить поиск. В варианте примера я так понимаю поиск проходит по .$lists['livingspacemin']  .$lists['livingspacemax']."     но от куда этот параметр ?  в базе данных такого нет, в файлах его тоже нет. Как поисковик понимает в какой строчке базы нужно искать запрос ?    Т.е. Физически в расширенный поиск я добавил параметры поиска, но как заставить искать конкретно по каждому из добавленных запросов.  Я с подобной задачей уже сталкивался года 3 назад и её решил, но совершенно не помню в каком файле это делал, помню что где то в админских файлах, добавлял новые параметры поиска и всё искал идеально, но совершенно не помню что за файл и где именно прописывал.

Возможно финансовое вознаграждение за помощь.
Joomla! 2.5.6  EstateAgent Improved v. 2.5.4     поиск на форуме не дал результата.   Т
*

Artrum

  • Осваиваюсь на форуме
  • 31
  • 2 / 0
Re: Новый запрос в расширенный поиск
« Ответ #1 : 01.04.2014, 22:38:12 »
Отвечаю себе сам, и ответ к сожалению себе сам дал. Проковырявшись весь день нашел решение но пока только для параметров от и до.
Делаю для себя напоминалку,  вдруг ещё когда пригодится, да или кому нить понадобится.


1)

function extended_srch_query(){

  $where = '';
 
  $parts=array(); 
  $space_max = JRequest::getInt('space_max','-1');
  $space_min = JRequest::getInt('space_min','-1');
 
   
  if($space_max !==$space_min){
   $s=array($space_max,$space_min);
   $space_max= max($s);
   $space_min= min($s);
  }
 
   if($space_min>=0 && $space_max>=0)  $parts[] = '(o.space BETWEEN ' . $space_min. ' AND ' . $space_max . ')';
   if($space_min>=0 && $space_max=='-1') $parts[] = 'o.space >= ' . $space_min;
   if($space_max>=0 && $space_min=='-1') $parts[] = 'o.space <= ' . $space_max;


  $pp_size_max = JRequest::getInt('pp_size_max','-1');
  $pp_size_min = JRequest::getInt('pp_size_min','-1');
 
   
  if($pp_size_max !==$pp_size_min){
   $s=array($pp_size_max,$pp_size_min);
   $pp_size_max= max($s);
   $pp_size_min= min($s);
  }
Курсивом добавленная часть в файл параметра pp_size (в моём случае это жилая площадь) в файл /components/com_estateagent/helpers/helper.search.estateagent.php

2)

Вывод параметра в расширенном поиске -   в файле   /components/com_estateagent/html/search.html.php      

echo "<div class=\"ea_sf_container\"><label class=\"ea_sf_label\">".JText::_('EA_OBJ_DWSPACE')."</label>"
            .$lists['livingpp_sizemin']."<span class=\"maxlabel\">".JText::_('EA_SEARCH_MIN')."</span>"."</div>";
            echo "<div class=\"ea_sf_container\"><label class=\"ea_sf_label\">".'&nbsp;'."</label>"
            .$lists['livingpp_sizemax']."<span class=\"maxlabel\">".JText::_('EA_SEARCH_MAX')."</span>"."</div>";
            echo "<br/>"

3) Добавляем то что курсивом в файл /components/com_estateagent/actions/search.php

if($eaconf->ea_extend_srch){

   $livingspace=get_space_list();
   
   $lists['livingspacemax'] = JHTML::_('select.genericlist', $livingspace, 'space_max', array(
   'option.text.toHtml' => false ,
   'list.attr' => 'class="inputbox livingspacebox" ',
   'option.text' => 'text' ,
   'option.key' => 'value',
   'list.select' => '',
   ));
   
   $lists['livingspacemin'] = JHTML::_('select.genericlist', $livingspace, 'space_min', array(
   'option.text.toHtml' => false ,
   'list.attr' => 'class="inputbox livingspacebox" ',
   'option.text' => 'text' ,
   'option.key' => 'value',
   'list.select' => '',
   ));
   
   $livingspace2=get_space_list();
   
   $lists['livingpp_sizemax'] = JHTML::_('select.genericlist', $livingspace2, 'pp_size_max', array(
   'option.text.toHtml' => false ,
   'list.attr' => 'class="inputbox livingspacebox" ',
   'option.text' => 'text' ,
   'option.key' => 'value',
   'list.select' => '',
   ));
   
   $lists['livingpp_sizemin'] = JHTML::_('select.genericlist', $livingspace2, 'pp_size_min', array(
   'option.text.toHtml' => false ,
   'list.attr' => 'class="inputbox livingspacebox" ',
   'option.text' => 'text' ,
   'option.key' => 'value',
   'list.select' => '',
   ));



Для чего такой геморой был сделан в Joomla и в компоненте мне не понятно, но как я уже несколько раз слышал от своих друзей программистов, Joomla и её компоненты создавали в самый глубоких подземельях ада.   на то оно и похоже.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Не работает поиск в "редактировать обьявление"

Автор doro45

Ответов: 0
Просмотров: 4266
Последний ответ 08.10.2016, 16:46:23
от doro45
Пункт меню "Поиск по геоположению"

Автор Natko23

Ответов: 0
Просмотров: 1832
Последний ответ 28.02.2015, 23:32:45
от Natko23
Поиск по параметрам EstateAgent improved 1.5.11

Автор sergfd

Ответов: 0
Просмотров: 1965
Последний ответ 11.12.2013, 17:07:03
от sergfd
Вылетает родная менюшка EA при нажатии на поиск

Автор CYBERMOT

Ответов: 0
Просмотров: 1857
Последний ответ 21.03.2013, 06:45:01
от CYBERMOT
Поиск по стране в mod_ea_search

Автор jeez

Ответов: 1
Просмотров: 1801
Последний ответ 24.05.2012, 14:31:59
от brabus_72