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

Это проблема наверно коснулась каждого пятого разработчика - когда командой index.php?option=com_user&view=reset&layout=confirm - сбрасывают всякие .нах..
пароль в админку. Страдал от этой проблемы долго - пока не коментнул нижеприведенные функции . такая фича:


File : /components/com_user/controller.php

#####################################################################################
Line : 379-399
 
   function confirmreset()
   {
      // Check for request forgeries
      JRequest::checkToken() or die( 'Invalid Token' );

      // Get the input
      $token = JRequest::getVar('token', null, 'post', 'alnum');              < --- {1}
                 
      // Get the model
      $model = &$this->getModel('Reset');

      // Verify the token
      if ($model->confirmReset($token) === false)   < --- {2}
      {
         $message = JText::sprintf('PASSWORD_RESET_CONFIRMATION_FAILED', $model->getError());
         $this->setRedirect('index.php?option=com_user&view=reset&layout=confirm', $message);
         return false;
      }

      $this->setRedirect('index.php?option=com_user&view=reset&layout=complete');
   }
   
#####################################################################################
   
File : /components/com_user/models/reset.php

Line: 111-130    
   
   
   
   function confirmReset($token)
   {
      global $mainframe;

      $db   = &JFactory::getDBO();
      $db->setQuery('SELECT id FROM #__users WHERE block = 0 AND activation = '.$db->Quote($token));  < ---- {3}

      // Verify the token
      if (!($id = $db->loadResult()))
      {
         $this->setError(JText::_('INVALID_TOKEN'));
         return false;
      }

      // Push the token and user id into the session
      $mainframe->setUserState($this->_namespace.'token',   $token);
      $mainframe->setUserState($this->_namespace.'id',   $id);

      return true;
   }
#####################################################################################



{1} - Replace ' with empty char
{3} - If you enter ' in token field then query will be looks like : "SELECT id FROM jos_users WHERE block = 0 AND activation = '' "
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться