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

mainet

  • Захожу иногда
  • 148
  • 1 / 0
Компонент acepolls
« : 24.02.2011, 16:38:16 »
Как убрать acepolls из строки?

index.php/component/acepolls/poll/1

чтобы получилось:

index.php/poll/1
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
*

mainet

  • Захожу иногда
  • 148
  • 1 / 0
Re: Компонент acepolls
« Ответ #2 : 24.02.2011, 17:16:51 »
Пункт меню для Acepolls создан?
нет, стоит модуль, и когда жмешь детали, открывается полное голосование в такой строке index.php/component/acepolls/poll/1
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Re: Компонент acepolls
« Ответ #3 : 24.02.2011, 18:03:21 »
Тогда понятно. Создайте пункт меню и будет Вам счастье.
*

mainet

  • Захожу иногда
  • 148
  • 1 / 0
Re: Компонент acepolls
« Ответ #4 : 24.02.2011, 19:23:15 »
Тогда понятно. Создайте пункт меню и будет Вам счастье.
нет, не помогло....
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Re: Компонент acepolls
« Ответ #5 : 25.02.2011, 10:07:19 »
Возможно тогда в модуле ссылка не использует JRoute? Или криво роутер написан у компонента...
*

mainet

  • Захожу иногда
  • 148
  • 1 / 0
Re: Компонент acepolls
« Ответ #6 : 25.02.2011, 12:07:50 »
Возможно тогда в модуле ссылка не использует JRoute? Или криво роутер написан у компонента...
ссылка именно через  JRoute
Код
<?php if ($params->get('show_view_details')) : ?>
<a class="poll_result_link" href="<?php echo JRoute::_('index.php?option=com_acepolls&view=poll&id='.$slug.$itemid); ?>"><?php echo JText::_('MOD_ACEPOLLS_VIEW_DETAILS'); ?></a><br />
<?php endif; ?>

Что изменить в роутере ?вот его код
Код
<?php
/**
* @version 1.0.0
* @package AcePolls
* @subpackage AcePolls
* @copyright 2009-2011 JoomAce LLC, www.joomace.net
* @license GNU/GPL http://www.gnu.org/copyleft/gpl.html
*
* Based on Apoll Component
* @copyright (C) 2009 - 2011 Hristo Genev All rights reserved
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
* @link http://www.afactory.org
*/

// Check to ensure this file is included in Joomla!
defined('_JEXEC') or die('Restricted access');

function AcepollsBuildRoute(&$query) {
static $items;

$segments = array();
$itemid = null;

// Break up the poll id into numeric and alias values.
if (isset($query['id']) && strpos($query['id'], ':')) {
list($query['id'], $query['alias']) = explode(':', $query['id'], 2);
}

// Get the menu items for this component.
if (!$items) {
$component = &JComponentHelper::getComponent('com_acepolls');
$menu = &JSite::getMenu();
$items = $menu->getItems('componentid', $component->id);
}

// Search for an appropriate menu item.
// First we will search for menu item linking to this poll,
// if we can't find we will look for a menu item linking to the polls view.
if (is_array($items)) {
// If only the option and itemid are specified in the query, return that item.
if (!isset($query['view']) && !isset($query['id']) && isset($query['Itemid'])) {
$itemid = (int) $query['Itemid'];
}
 
// Search for a menu that links to the same view and id
if (!$itemid) {
foreach ($items as $item) {
// Check if this menu item links to this view.
// menu-view must be equal to the query-view
// also menu-id must be equal to the query-id
if (isset($item->query['view']) && isset($query['view'])
&& $item->query['view'] == $query['view']
&& isset($item->query['id'])
&& $item->query['id'] == $query['id'])
{
$itemid = $item->id;
}
}
}

// If no specific link has been found, search for a general one.
// Search for a menu linking to polls view
if (!$itemid) {
foreach ($items as $item) {
if (isset($query['view']) && $query['view'] == 'poll' && isset($item->query['view']) && $item->query['view'] == 'polls') {
// Check for an undealt with poll id.
if (isset($query['id'])) {
// This menu item links to the apolls view but we need to append the poll id to it.
$itemid = $item->id;
$segments[] = isset($query['alias'])? $query['id'].':'.$query['alias'] : $query['id'];
break;
}
}
}
}
}

// Check if the router found an appropriate itemid.
if (!$itemid) {
//if item id was not found that means that there is no link to either polls view or poll view
// Check if a id was specified.
if (isset($query['id'])) {
if (isset($query['alias'])) {
$query['id'] .= ':'.$query['alias'];
}

// Push the id onto the stack.
$segments[] = 'poll';
$segments[] = $query['id'];

unset($query['id']);
unset($query['alias']);
}

unset($query['view']);
}
else {
$query['Itemid'] = $itemid;

// Remove the unnecessary URL segments.
unset($query['view']);
unset($query['id']);
unset($query['alias']);
}

return $segments;
}

function AcepollsParseRoute($segments) {
$vars = array();

//Get the active menu item if there is a menu link to polls view
$menu =& JSite::getMenu();
$item =& $menu->getActive();

// Count route segments
$count = count($segments);

//if item is not set, there is no menu linking to this view - poll
if (!isset($item)) {
$vars['view'] = 'poll';
$vars['id']    = $segments[$count - 1];
return $vars;
}

//if there is a menu to polls view ->
$vars['view'] = 'poll';
$vars['id'] = $segments[$count-1];

return $vars;
}
*

intcorp

  • Захожу иногда
  • 456
  • 12 / 0
Re: Компонент acepolls
« Ответ #7 : 26.02.2012, 16:23:47 »
На сайте установлен sh404SEF и ссылка идет типа www .site. ru/poll/1-opros.html
Столкнулся с другой проблемой: при включенном кешировании, если перейти на другой опрос через дропдаун компонента, опрос не перезагружается, хотя в адресной строке идет ссылка на другой опрос.
Как решить данную проблему, либо отключить кеширование для всего компонента?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Компонент Search в Joomla 5

Автор hensler

Ответов: 4
Просмотров: 3631
Последний ответ 28.03.2025, 17:27:24
от azm1n
DJ-Classifieds - компонент доска объявлений. Как скрыть системные сообщения

Автор user2008june

Ответов: 2
Просмотров: 1561
Последний ответ 03.02.2022, 08:53:49
от user2008june
REreplacer 2.10.3 (Рус.) Компонент замены любых значений.

Автор ЗЛОЙ на всех

Ответов: 80
Просмотров: 28157
Последний ответ 28.12.2021, 23:06:04
от Vlad1
Компонент тестов Guru от iJoomla.com

Автор Фей

Ответов: 3
Просмотров: 1553
Последний ответ 31.05.2021, 00:51:00
от AdWeb
Компонент Joomla для больших каталогов

Автор powerful888

Ответов: 15
Просмотров: 2496
Последний ответ 09.07.2020, 23:03:47
от voland