Новости 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 Ответов
  • 1516 Просмотров
*

alfonse

  • Захожу иногда
  • 64
  • 2 / 0
Подскажите как сделать вывод описания без тулбтипов (при добавлении объявления). по умолчанию описание поля выводится при наведении на иконку, а хотелось бы всегда показывать. Ниже привожу скрины.
Код вывода полей лежит тут \components\com_adsmanager\views\edit\tmpl\default.php
Код
/* Display Fields */
foreach($this->fields as $field)
{
if (@$field->options->edit_admin_only == 0) {
$fieldform = $this->field->showFieldForm($field,$this->content,$this->default);
if ($fieldform != "") {
echo "<tr id=\"tr_{$field->name}\"><td width=\"178\">".$this->field->showFieldLabel($field,$this->content,$this->default)."</td>\n";
echo "<td>".$fieldform."</td></tr>\n";
}
}
}
« Последнее редактирование: 06.07.2013, 17:43:55 от alfonse »
*

IzrA

  • Захожу иногда
  • 322
  • 27 / 0
Мой вариант с выводом описания в отдельную ячейку таблицы.

Открываем файл /components/com_adsmanager/helpers/field.php, в нём ищем функцию showFieldForm. Почти в самом конце этой функции (в моём случае 584 строка) находим следующий код:
Код
if ((@$field->description)&&($field->description !="")) {
if (ADSMANAGER_SPECIAL != "abrivac")
JHTML::_('behavior.tooltip');
$return .= JHTML::tooltip(JText::_($field->description),JText::_($field->title));
}
Вырезаем его в буфер.

Далее создаём новую функцию, я назвал её showDescription. В тело функции вставляем то, что вырезали в буфер и удаляем ненужные нам строки. По итогу вышел следующий код (функция):
Код
function showDescription($field) {
if ((@$field->description)&&($field->description !="")) {
$return = $field->description;
return $return;
}
}
Сохраняем изменения и закрываем.

Далее открываем файл /components/com_adsmanager/views/edit/tmpl/default.php. В моём случае я правил /templates/имя_шаблона/html/com_adsmanager/edit/default.php, т.к. переопределял шаблон.

Ищем код отвечающий за вывод полей, над ним есть комментарий /* Display Fields */
Код
/* Display Fields */
foreach($this->fields as $field)
{
if (@$field->options->edit_admin_only == 0) {
$fieldform = $this->field->showFieldForm($field,$this->content,$this->default);
if ($fieldform != "") {
echo "<tr id=\"tr_{$field->name}\"><td>".$this->field->showFieldLabel($field,$this->content,$this->default)."</td>\n";
echo "<td>".$fieldform."</td></tr>\n";
}
}
}

Добавляем в него переменную хранящую результат работы нашей новой функции showDescription
Код
$fielddesc = $this->field->showDescription($field);

и ещё одну ячейку таблицы для вывода в неё описания поля:
Код
echo "<td class='fielddesc'>".$fielddesc."</td></tr>\n";

Т.к. мы добавляем ячейку в конец (отображение описания справа от поля), не забудьте перенести закрывающий тэг </tr> из конца второй ячейки в третью. В моём примере это уже сделано. Вот что получится в итоге:
Код
/* Display Fields */
foreach($this->fields as $field)
{
if (@$field->options->edit_admin_only == 0) {
$fieldform = $this->field->showFieldForm($field,$this->content,$this->default);
$fielddesc = $this->field->showDescription($field);
if ($fieldform != "") {
echo "<tr id=\"tr_{$field->name}\"><td class='fieldlabel'>".$this->field->showFieldLabel($field,$this->content,$this->default)."</td>\n";
echo "<td class='fieldval'>".$fieldform."</td>\n";
echo "<td class='fielddesc'>".$fielddesc."</td></tr>\n";


}
}
}

Сохраняем, закрываем, обновляем страницу. :)
« Последнее редактирование: 30.06.2014, 10:54:59 от IzrA »
Спасибо для меня слишком много. Стакан вина Плюс в репутацию - в самый раз.

Велосипедист — бедствие для экономики. Он не покупает автомобиля и не берет под него кредит. Не покупает бензин. Не пользуется услугами ремонтных мастерских. Не страхует «гражданскую ответственность». Не пользуется платными стоянками. Не страдает от ожирения. Да он еще и здоров, черт возьми! Здоровые люди не нужны для экономики. Они не покупают лекарства. Они не ходят к частным врачам. Они не увеличивают ВВП.
*

Негодяй

  • Захожу иногда
  • 117
  • 9 / 1
Как добавить второе описание, чтобы перед тултипом выводилось?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

AdsManager вывод нужных полей по отдельности

Автор klekovkinandrey

Ответов: 2
Просмотров: 17562
Последний ответ 06.04.2024, 09:54:15
от Rinat abzyi
Вывод данных

Автор FlexNL

Ответов: 0
Просмотров: 4346
Последний ответ 06.11.2021, 12:37:54
от FlexNL
Вывод картинки поля "radioimage"

Автор Pavel

Ответов: 7
Просмотров: 4595
Последний ответ 12.03.2019, 16:23:10
от Pavel
Вывод объявлений в случайном порядке

Автор Sabotage

Ответов: 3
Просмотров: 2332
Последний ответ 28.09.2018, 14:21:05
от Sabotage
Как добавить поле id объявления

Автор Den85

Ответов: 9
Просмотров: 3659
Последний ответ 11.11.2017, 15:18:48
от Den85