Новости Joomla

👩‍💻 ИИ-админ для Joomla ближе, чем вы думаете: Joomla MCP.

👩‍💻 ИИ-админ для Joomla ближе, чем вы думаете: Joomla MCP.

В февральском номере Joomla Community Magazine в статье Evolving Joomla - Joomla CMS MCP Server: Opening the Door to AI-Powered Administration рассказывается о работе команды разработчиков над внедрением в ядро Joomla MCP-сервера.

Что такое MCP-сервер?
Последние годы всех захватывает бум ИИ-технологий. Появились ИИ-агенты - программы, устанавливаемые на сервер или компьютер, которые получают от вас запрос или задачу в человеческом виде и могут выполнять действия с файлами, ходить по сайтам, создавать сайты, программировать и т.д. Люди используют ИИ-агентов в самых разных ситуациях: от написания и проверки кода (даже там, где язык программирования не знаете совсем) до планирования путешествий и бронирования гостиницы.

ИИ-агенты могут использовать различные программные инструменты по протоколу Model Context Protocol (MCP). Для этого разработчик программы должен внедрить MCP в свой продукт или сервис. Так, например, ваш ИИ-агент может ходить по сайтам через браузер и собирать нужную информацию, управляя браузером через MCP-сервер. Или использовать функционал IDE PHP Storm для написания кода, сбора и отладки ошибок, использовать поиск PHP Storm по кодовой базе, а не простой текстовый поиск по файлам. MCP предоставляет набор функций для полноценного управления программным обеспечением.

В случае с Joomla, сервер MCP может предоставить администраторам следующие возможности:
- Автоматическое создание категорий, материалов и меню на основе карты сайта или PDF-файла.
- Создавайть SEO-оптимизированные заголовки и метаописания в пакетном режиме.
- Обновлять расширения на нескольких сайтах одновременно
- Создание посадочные страницы.

Важно отметить, что сервер MCP не задумывался как функция, доступная только «супер-администраторам». Цель инициативы — создать решение, которое будет простым в настройке, маломощным и доступным для широкого круга пользователей.

В процессе разработки точка входа Joomla (аналогично Site, Administrator, Api, Cli), которая будет работать с Streamable HTTP, необходимым для MCP. Аутентификация пока что предполагается на токенах, но затем планируется создание универсального OAuth-сервера для Joomla.
Фактические возможности MCP — инструменты, ресурсы и подсказки — реализованы в виде плагинов для обеспечения расширяемости. Таким образом ожидаем, что и сторонние разработчики смогут создавать MCP-плагины для внедрения поддержки своих расширений Joomla для работы с ИИ.

@joomlafeed

Вышли релизы безопасности Joomla 6.0.4 и Joomla 5.4.4

Релиз безопасности Joomla 6.0.4 и Joomla 5.4.4

Проект Joomla! рад сообщить о выходе Joomla 6.0.4 и Joomla 5.4.4. Это релизы безопасности и исправления ошибок для серий 5.x и 6.x.

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

Risenab

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
День добрый. Имею простенький сайт анкет на Ads с тонной категорий и полей.

Было решено сразу - в категориях копаться пользователю нельзя. Это и дискомфорт, и "мало ли"... Так что немного пошаманил в файле jquerty.doubleselect.js (com_adsmanager/js/jquerty.doubleselect.js) и сделал автозаполнение категорией по умолчанию для любой анкеты. То есть, при добавлении анкеты та сразу летит в нужную мне категорию. Имеет это вот такой вид, если кому интересно.

Код
		$('<div id="'+container+'" class="doubleselect_container row-fluid row"> \
   <div class="doubleselect_notselected span5 col-md-5"> \
    <select multiple="multiple" id="'+not_selected_list+'" name="'+not_selected_list+'" size="'+size+'" /> \
   </div> \
   <div class="doubleselect_action span2 col-md-2"> \
    <div> \
    <input id="'+add_button+'" name="'+add_button+'" value="'+options.add_button+'" type="button" class="button " /> \
    <input id="'+remove_button+'" name="'+remove_button+'" value="'+options.remove_button+'" type="button" class="button " /> \
    </div> \
   </div> \
   <div class="doubleselect_selected span5 col-md-5"> \
    <select multiple="multiple" id="'+selected_list+'" name="'+selected_list+'" size="'+size+'"> <option price="0" value="1">Анкеты (по умолчанию)</option> </select> \
   </div> \
   <div class="doubleselect_hidden"> \
   </div> \
   </div>').insertAfter(this);
           
not_selected_list = "#"+not_selected_list;
selected_list = "#"+selected_list;
add_button = "#"+add_button;
remove_button = "#"+remove_button;
container = "#"+container;
$("option",this).each(function(){
$(this).appendTo($(not_selected_list));
});

+ блок вывода категорий при добавлении закомментировал, чтобы пользователю тот глаза не мозолил.

Однако, база анкет растет. Вручную уже не могу справляться с присвоением категорий на основе многочисленных полей и было решено сделать автоматизацию - автоматическое присвоение категории если поле имеет значение X (и автоматическое удаление категории, если это значение меняется или удаляется вовсе) либо создать фильтрацию по полям. И тут проблема - что к чему черт его знает. Знаний php и jquerty не хватает (сделал 1 решение, но оно не работает; решение ниже).

Код
			   <div class="doubleselect_selected span5 col-md-5"> \
    <select multiple="multiple" id="'+selected_list+'" name="'+selected_list+'" size="'+size+'"> <option price="0" value="1">Анкеты (по умолчанию)</option> <?php if (isset($content->ad_rf[0])) {echo '<option price="0" value="11">123</option>';}?> </select> \
   </div> \

Может кто готов за плату реализовать задумку или уже имеет готовое решение данной проблемы?  *DRINK*

P.S.> Путем проб и ошибок выяснил, что последний код (выше) работает, но требует безопасной интеграции в общий скрипт. А вот с интеграцией проблемы, тут то знаний уже маловато.
« Последнее редактирование: 16.01.2017, 17:19:04 от Risenab »
*

grinat

  • Захожу иногда
  • 356
  • 34 / 2
Да проще чем с jquery дело иметь, задавать правила в php. В contoller.php есть функция save, там и пропишите правила в духе:
Код: php
$mycat = 1; //категория по умолчанию
//правила присвоения
if(JRequest::getVar( 'поле')=='трынь' && JRequest::getVar( 'поле2')=='дрынь'){
      $mycat = 20;
}
//либо без фильтра Joomla(JRequest::getVar) если эти переменные в правилах не перезаписываются, так будет быстрее работать
if($_POST[ 'поле']=='трынь' && $_POST[ 'поле2']=='дрынь'){
      $mycat = 20;
}
//конец правила
//после правил во все переменные записать категорию, потому что дальше обработчик возьмет ее из массива post данных Joomla
$_POST['category'] = $mycat;
$_REQUEST['category'] = $mycat;
JRequest::setVar('category', $mycat);

Если через jquery, то код определения категория надо поместить в функцию, которая в форме в onsubmit задана(т.е. функция которая осуществляет проверку данных полей перед их передачей на сервер), там в таком же духе код написать
Код: javascript
var mycat = 1; //категория по умолчанию
//правила
if($('#поле').val()=='трынь' && $('#поле2').val()=='дрынь'){
     mycat = 20;
}
//запись id в поле категории для передачи
$("input[name='category']").val(mycat);
*

Risenab

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
За глобальную подсказку благодарю. Лучше, чем ничего.

После теста отпишусь.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как убрать названия позиции?

Автор Негодяй

Ответов: 7
Просмотров: 2032
Последний ответ 27.11.2016, 14:16:42
от grinat
Как добавить поле даты и календарь на стра

Автор Polosatyi

Ответов: 2
Просмотров: 2280
Последний ответ 12.10.2016, 06:05:57
от alexche
Как изменить вывод заголовка объявлений?

Автор max.g

Ответов: 1
Просмотров: 1600
Последний ответ 23.05.2016, 13:59:04
от max.g
Core Design Captcha на AdsManager

Автор RodionMurin

Ответов: 1
Просмотров: 1550
Последний ответ 10.03.2016, 20:44:32
от RodionMurin
Вопрос по multicheckbox image и отображение в превьюшке обm

Автор yury181

Ответов: 0
Просмотров: 1182
Последний ответ 14.02.2016, 04:22:57
от yury181