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

Александр216

  • Захожу иногда
  • 107
  • 1 / 0
Добрый час.
Задача: в модуле breadcrumbs создаю переменные, в которые запоминаю определенные ссылки. Затем, в зависимости от наличия/отсутствия определенных ссылок должен меняться вид шаблона.
Проблема: При попытке получить в шаблоне переменные, определенные в модуле, возвращаются пустые значения.

 Например, в модуле пишу:
Код
JRequest::setVar('link1', 'www');

В файле index.php шаблона пишу:
Код
<?php echo JRequest::getVar('link1'); ?>

В результате выводится пустая строка.

В чем проблема?
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Как передать переменную из компонента в модуль?
Варианты применимы и для передачи переменной из модуля в темплейт
*

Александр216

  • Захожу иногда
  • 107
  • 1 / 0
Пытаюсь воплотить одно из решений, указанных в ссылке.
1. В темплейте подключаю модуль breadcrumbs:
Код
<jdoc:include type="modules" name="top" />

2. В модуле пишу:    
Код
$session =& JFactory::getSession();
$session->set("q",  $list);

3. После модуля в темплейте вставляю:
Код
<?php $session =& JFactory::getSession();
$q1=$session->get("q"); ?>
echo $q[1]->name;

Работает, но с опозданием на один клик. То есть при переходе на определенную страницу отображает данные предыдущей. Данные текущей страницы отображаются лишь при переходе на следующую.
Почему так?

(повторюсь: код вывода переменной находится в темплейте после подключения модуля)

« Последнее редактирование: 04.09.2012, 00:08:50 от Александр216 »
*

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
А вот так echo $q[0]->name; посмотреть не пробовали? Распечатайте $list, посмотрите.
Разработка и ремонт. VirtueMart. JoomShopping. Свои компоненты. Принимаю заявки на plasma-web.ru.
*

Александр216

  • Захожу иногда
  • 107
  • 1 / 0
Ды нет, не в этом дело. Мне нужен второй элемент массива, поэтому пишу $q[1]->name. Если написать echo $q[0]->name, выведет первый элемент. Все четко и корректно, все совпадает с дампом переменной... но только по состоянию для предыдущей посещенной страницы((
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Опишите подробнее вашу задачу. Зачем вы используете модуль breadcrumbs. По ходу, вы можете без него обойтись выполнив задуманное в шаблоне.
Какие данные вы передаете?
*

Александр216

  • Захожу иногда
  • 107
  • 1 / 0
У меня интернет-магазин, в котором несколько основных разделов. Каждый раздел содержит подкатегории нескольких уровней
Мне нужно в темплейте вывести для текущего раздела список категорий и некоторых подкатегорий (но не всех, т.к. подкатегории разной величины, и одни есть смысл отображать в меню, а другие - нет).

Данный список выводится только для раздела первого уровня, независимо от того, в подкаталоге какого уровня находится пользователь.
То есть, если он в разделе №1, то как бы глубоко он не залез в рамках этого раздела всегда отображается это меню.

Была мысль поискать готовый модуль, но решил, что такой модуль, заточенный именно под мою задачу, вряд-ли найду. Вот и решил получить необходимые данные из breadcrumbs и поизобретать (может быть, велосипед)))

А данные, которые я передаю - это массив $list, в котором пошагово записаны все разделы, категории и подкатегории, к которым относится текущий материал.
« Последнее редактирование: 04.09.2012, 23:55:58 от Александр216 »
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Здесь проще наверно привязываться к страницам или пунктам меню. Да и в меню можно определять есть ли подпункты  JSite::getMenu()->getActive()->tree[0].
Код: php-brief
<?php if ($_SERVER['REQUEST_URI'] == '/') :?>
делаем что-то
<?php endif;?>
выведет где мы
Код: php
<?php echo $_SERVER['REQUEST_URI']; ?>
<?php echo JFactory::getURI()->toString(); ?> //или так
Код: php
<?php
$urlParam = array('/contact', '/products', '/article');
if(in_array ( $_SERVER['REQUEST_URI'], $urlParam)) {
//выводим
} ?>
или так
Код: php
<?php if (JSite::getMenu()->getActive()->id == 108) : ?>
<jdoc:include type="modules" name="user1" style="xhtml" />
id == 108 -  Id вашего меню
<?php endif; ?>
Различные условия в шаблонах Joomla
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Денвер, ошибка после установки модуля PHP5

Автор danya_6

Ответов: 0
Просмотров: 1517
Последний ответ 23.12.2012, 15:59:53
от danya_6
Шаблонизация в Joomla 1.5.22, на примере модуля patway

Автор masaniachko

Ответов: 1
Просмотров: 2033
Последний ответ 26.04.2012, 18:47:35
от masaniachko
Подскажите чайнику при установке модуля выдаеца ошибка

Автор DukeNuke,

Ответов: 26
Просмотров: 4604
Последний ответ 27.06.2011, 13:59:43
от tier44
Белый экран при включении любого модуля

Автор netruxa

Ответов: 2
Просмотров: 2154
Последний ответ 29.11.2010, 13:27:10
от netruxa
Отличие установки модуля от установки пакета

Автор vladushka

Ответов: 1
Просмотров: 1393
Последний ответ 14.11.2010, 03:02:38
от vladushka