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

Zuev

  • Захожу иногда
  • 211
  • 15 / 1
  • В дальнем плавании
как получить id материала
« : 27.02.2009, 00:19:47 »
как в своем скрипте получить id текущего материала joomlaвскими методами. (скрипт вставляется в тело материала).
*

Zuev

  • Захожу иногда
  • 211
  • 15 / 1
  • В дальнем плавании
Re: как получить id материала
« Ответ #1 : 27.02.2009, 00:23:12 »
нашел вот какой вариант:
Код
	$uri = &JFactory::getURI();
$url = $uri->toString(array('path', 'query', 'fragment'));

таким образом в $url оказвается весь путь к материалу.

можно конечно и из $url выдрадь id.

Но что-то мне подсказывает, что должен быть более простой и элегантный метод
*

smart

  • Администратор
  • 6478
  • 1318 / 15
  • Хочешь сделать хорошо — сделай!
Re: как получить id материала
« Ответ #2 : 27.02.2009, 00:27:16 »
Я так понимаю это отголосок другой темы? Для того, чтобы ответить, как получить этот идентификатор, сначала надо понять, что значит фраза "вставляется в тело материала". Если данный скрипт это плагин для компонента com_content, то идентификатор материала можно получить из плагина (там объект передается в методы плагина), подробнее посмотрите /plugins/content/example.php.
*

Zuev

  • Захожу иногда
  • 211
  • 15 / 1
  • В дальнем плавании
Re: как получить id материала
« Ответ #3 : 27.02.2009, 00:30:08 »
нет это не плагин, а вставляется с помощью add_php
*

smart

  • Администратор
  • 6478
  • 1318 / 15
  • Хочешь сделать хорошо — сделай!
Re: как получить id материала
« Ответ #4 : 27.02.2009, 00:31:58 »
Ну тогда надо смотреть код этого add_php, и пытаться понять, что будет доступно скрипту, вставленному таким образом. Но если это отголосок указанной мной темы - мне кажется, это несколько нерациональный путь.
*

Zuev

  • Захожу иногда
  • 211
  • 15 / 1
  • В дальнем плавании
Re: как получить id материала
« Ответ #5 : 27.02.2009, 00:35:16 »
кстати по поводу прошлой темы, там тоже необходимо в шаблоне реализовать проверку нужного материала, где кстати опять нужен этот же id.

как в таком случае поступить?
*

smart

  • Администратор
  • 6478
  • 1318 / 15
  • Хочешь сделать хорошо — сделай!
Re: как получить id материала
« Ответ #6 : 27.02.2009, 00:42:16 »
Ну по той задаче, я бы попробовал вставить проверку (ну и сам код добавления скрипта к шапке) в переопределенный вид материала (view) в шаблоне.

Т.е. для шаблона ja_purity это будет файл /templates/ja_purity/html/com_content/article/default.php. В нем нам весь объект статьи доступен в переменной $this->article, таким образом проверка может быть вот такой:

Код: php
<?php
if ($this->article->id == 911) {
  $document = & JFactory::getDocument();
  $document->addStyleSheet(JURI::root() . 'myphp/style.css');
  $document->addScript(JURI::root() . 'myphp/script.js');
}
?>

По идее должно сработать...

Что же касается других задач, я бы подумал вот над чем - если для вас не составляет труда написать некий скрипт, то почему бы тогда просто не оформить его плагином (я ниже давал ссылку на пример такого плагина) и в нем это все не реализовать. Во-первых, ваш код будет вызываться напрямую ядром Joomla, а значит быстродействие будет выше, во-вторых ваш код не будет зависеть от сторонних скриптов, в-третьих вам будет доступен объект материала со всеми полями. Подумайте, мне кажется это было бы более правильно.
*

Zuev

  • Захожу иногда
  • 211
  • 15 / 1
  • В дальнем плавании
Re: как получить id материала
« Ответ #7 : 27.02.2009, 00:48:59 »
спасибо smart, за помощь
+1
*

Pencil

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
  • Pencil-box.ru
Re: как получить id материала
« Ответ #8 : 16.10.2010, 04:07:51 »
Господа, а может подскажете как в mod_php можно  вывести название текущего материала (страницы)?
Объясню для чего нужно: не устраивает размещение заголовков страниц в компоненте, хочу вывести их выше. Причем между заголовком и содержимым будет еще строка навигации и меню.
 !
*

Pencil

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
  • Pencil-box.ru
Re: как получить id материала
« Ответ #10 : 16.10.2010, 12:13:18 »
Спасибо, конечно же, материал примерно в том же направлении. Но тут мне показалось более узко направленная тема.
А в приведенной вами теме я так и не увидел переменной содержащей имя страницы. По упомянутым там файлам прошелся, поперебирал похожие переменные, но видимо что то делал не так. Вывести название материала в модуль мне так и не удалось.
Мои познания в PHP только базовые, собственно поэтому и обращаюсь за помощью.

Может кто написать эти 2-3 строки кода которые выведут на экран название страницы?
Я догадываюсь что там что то типа echo $article;
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Заголовок страницы вида Имя материала / имя категории / имя раздела /

Автор rubasket

Ответов: 2
Просмотров: 26499
Последний ответ 24.03.2017, 01:13:50
от mbgr
Поиск материала

Автор rjk112

Ответов: 3
Просмотров: 2359
Последний ответ 31.10.2016, 11:15:50
от rjk112
Кнопки like-dislike для материала

Автор Aiden

Ответов: 0
Просмотров: 2188
Последний ответ 14.05.2016, 13:23:55
от Aiden
Проблема при добавлении материала

Автор illia

Ответов: 4
Просмотров: 2381
Последний ответ 12.05.2016, 12:23:30
от 4erep
Как менять дату создания материала с фронтенда? Или как объединить ее с датой публикации?

Автор shturmanoid

Ответов: 3
Просмотров: 2795
Последний ответ 29.04.2016, 08:22:50
от flyingspook