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

Alepri

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Проблема у меня такая: я плохо знаю PHP.  :(

У меня есть компонент,  в котором пользователь может добавить URL вебсайта в случае, если еще такого URL не существует в БД.
В админке есть таблица компонента, в которой прописывается новый добавленный URL и с какого IP адреса он был добавлен. Так как этим компонентом, на моем сайте, могут пользоваться только зарегистрированные пользователи, мне необходимо знать, кто выполнил добавление нового URL, т.е. username и желательно e-mail (подобно как указывается в таблице User Manager) и прописывался в таблице моего компонента.

Просмотрев код компонента, я нашел следующее:
 
Построение таблицы в панели администратора: favic_style.php

Код
<?php
defined('_JEXEC') or die();
class Tablefavic_style extends JTable
{
  var $id =null; // int(11) NOT NULL auto_increment,
  var $ip = ''; // varchar(255) NOT NULL default ''
  var $url = ''; // varchar(255) NOT NULL default ''
 
       
  function __construct(&$db)
  {
  parent::__construct( '#__favic_style', 'id', $db );
  }
}

Я добавил еще одну строку:  (не знаю правильно ли значение varchar(255) NOT NULL default)

Код
var $username = '';	// varchar(255) NOT NULL default ''

В следующем файле я нашел функции для таблицы: photo.php

Код
JTable::addIncludePath(JPATH_COMPONENT_ADMINISTRATOR . DS . 'tables');
//create an instance of TableName class
$row = &JTable::getInstance('favic_style', 'table');
//use $row to make changes on Table999, these changes is maped to #__999
/* var $id =null; // int(11) NOT NULL auto_increment,
            var $ip = ''; // varchar(255) NOT NULL default ''
            var $url = ''; // varchar(255) NOT NULL default ''
            */

Здесь тоже добавил:
Код
var $username = '';	// varchar(255) NOT NULL default ''
Далее следует:
Код
$row->title 	= $title;
$row->ip = $this->getClientIp();
$row->url = $icon_link_url;
Добавляю: 
Код
$row->username    = $getUsername;

Дальше идут функции:

Код
	/**
*  valid URL
*
* @param string $str
* @return bool
*/
function isExistUrl($str) {
// $str = $this->standardizeUrl($str);
$db = JFactory::getDBO();
$query = 'SELECT COUNT(*)'
. ' FROM #__favic_style'
. ' WHERE `url`='.$db->quote($str)
;
$db->setQuery($query);
$isExist = $db->loadResult();

return ($isExist)? true : false;
}

function getClientIp() {
global $_SERVER;

if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$forwarded_ip_array = explode(',',$_SERVER['HTTP_X_FORWARDED_FOR']);
$client_ip = $forwarded_ip_array[count($forwarded_ip_array) - 1];
} else {
$client_ip = $_SERVER['REMOTE_ADDR'];
}
return $client_ip;
}

Здесь я попробовал задать функцию так:

Код
		function getUsername() {
$user = JFactory::getUser();
return $user->get('username');
}

После установки компонента в таблице есть раздел username. Я пробую добавлять URL, как зарегистрированный пользователь, но имя в таблице не прописалось.

Если кто разбирается в PHP,  помогите пожалуйста.  ^-^


*

Alepri

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Может, хотя-бы, кто нибудь посоветует, где мне обратиться с таким вопросом?  !
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Яндекс карты. Добавить &amp;quot;чтобы переместить карту проведите по ней двумя пальцами&amp;quot;

Автор safronoff343

Ответов: 1
Просмотров: 27417
Последний ответ 14.05.2025, 07:18:54
от Lemonez
Нужно ли такое расширение как оплата при самовывозе

Автор kkmspb

Ответов: 0
Просмотров: 2368
Последний ответ 30.08.2024, 08:06:23
от kkmspb
Формирование ссылок для компонента Joomla Tags

Автор stepan39

Ответов: 6
Просмотров: 5102
Последний ответ 05.02.2023, 15:22:13
от tweenpix
URL компонента меток

Автор tweenpix

Ответов: 0
Просмотров: 2527
Последний ответ 04.02.2023, 11:08:54
от tweenpix
Как добавить аддоны shortcode ultimate в sp page builder?

Автор chen

Ответов: 0
Просмотров: 3626
Последний ответ 23.07.2022, 10:16:40
от chen