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

slepoy

  • Давно я тут
  • 753
  • 24 / 0
  • Тотальная шизофазия
Здравствуйте. Есть модуль, который привязан к определенному пункту меню. Этот пункт имеет тип "Шаблон блога раздела" и/или "Шаблон блога категории". Ниже, на странице раздела/категории, распологается "Разбиение на страницы" (пагинация «Пред.123456...).

Задача такова: отображать модуль только на текущей странице пагинации (1). т.е. не отображать модуль на мойсайт.ru/index.php?start=5 и последующих.

Какие методы существуют (меня интересуют разные)? На уровне шаблона, хаков и сторонних расширений / плагинов?
Стоит учесть, что в одной позиции может быть расположено несколько модулей (просто каждый из них привязан к своему пункту меню, тип которого я описал выше). Спасибо.

П.с: http://www.nonumber.nl/extensions/advancedmodulemanager может справиться с этим?
« Последнее редактирование: 02.05.2011, 20:02:50 от slepoy »
Помог? Поставь(те) плюс в репутацию.
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Мне вот этот способ понравился
Решил все таким образом:
проверяем вставкой:
Код
<?php echo  $_SERVER['REQUEST_URI']; ?>
и то что содержится в ней вставляем в адрес кода:
Код
<?php 
$sv = $_SERVER['REQUEST_URI'];
if ($sv == 'вставляем полученный код') { ?>
главная
<?php } else { ?>
не главная
<?php } ?>
именно так решился вопрос с отображением только на главной странице
Создание сайтов, шаблонов, помощь в решении проблем.
*

slepoy

  • Давно я тут
  • 753
  • 24 / 0
  • Тотальная шизофазия
Хм. Что-то не вышло (стандартное SEO включено). вставил в файл шаблона <?php echo  $_SERVER['REQUEST_URI']; ?> и перейдя на главную страницу сайта увидел слеш "/" (взял на заметку и вставил в код ниже).
Далее:
Код
<?php 
$sv = $_SERVER['REQUEST_URI'];
if ($sv == '/') { ?>

<?php $user =& JFactory::getUser();
if(!$user->id) {?>
<div class="advert">
<div class="advert_inner">
<jdoc:include type="modules" name="inset" style="xhtml" />
</div>
</div>
<?php } ?>

<?php } else { ?>тут пусто
<?php } ?>
тем не менее, на странице сайт.ru/index.php?start=5 модуль тоже есть.
Помог? Поставь(те) плюс в репутацию.
*

aleks_yug

  • Давно я тут
  • 630
  • 83 / 0
Хм. Что-то не вышло (стандартное SEO включено). вставил в файл шаблона <?php echo  $_SERVER['REQUEST_URI']; ?> и перейдя на главную страницу сайта увидел слеш "/" (взял на заметку и вставил в код ниже).
Далее:
Код
<?php 
$sv = $_SERVER['REQUEST_URI'];
if ($sv == '/') { ?>

<?php $user =& JFactory::getUser();
if(!$user->id) {?>
<div class="advert">
<div class="advert_inner">
<jdoc:include type="modules" name="inset" style="xhtml" />
</div>
</div>
<?php } ?>

<?php } else { ?>тут пусто
<?php } ?>
тем не менее, на странице сайт.ru/index.php?start=5 модуль тоже есть.
<?php
     $option = JRequest::getCmd('option');
     $view = JRequest::getCmd('view');
        if (($option == 'com_content') and ($view == 'frontpage')) : ?>
           <jdoc:include type="modules" name="имя модуля" style="какой нужно" />
<?php endif; ?>

Показ модуля только на главной
=====================================
<?php
$option = JRequest::getVar('option', null);
$page = JRequest::getVar('page', null);
?>
<?php
    if ( $this->countModules('user2') && $option=='com_virtuemart' && $page !='checkout.index' && $page!='shop.cart' &&     $page!='account.order_details' &&     $page !='shop.browse' && $page !='checkout.thankyou' && $page !='shop.product_details' ) { ?>
        <jdoc:include type="modules" name="user2" />
<?php } ?>

Здесь приведен пример (на компоненте virtuemart), как отсечь показ модуля на неужных страницах в компоненте:
&& $page !='checkout.index' и т.д... Думаю, по аналогии и с другим компонентом.
*

slepoy

  • Давно я тут
  • 753
  • 24 / 0
  • Тотальная шизофазия
Efanych, спасибо. С позицией модуля, для которой нет других условий получилось без проблем:
Цитировать
<?php
$sv = $_SERVER['REQUEST_URI'];
if ($sv == '/games/flash.html') { ?>
      <div class="advert">
                 <div class="advert_inner">                        
         <jdoc:include type="modules" name="advert2" style="xhtml" />
         </div>
      </div>
<?php } ?>
Однако, вопрос: как добавить еще несколько условий типа "if" (т.е. указать несколько URL адресов)? Спасибо.
« Последнее редактирование: 02.05.2011, 19:56:51 от slepoy »
Помог? Поставь(те) плюс в репутацию.
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Цитировать
тем не менее, на странице сайт.ru/index.php?start=5 модуль тоже есть.
Попробовал, у меня работают оба условия (и то, что на главной и только для гостей).
Скопировал твой код полностью, только позицию модуля поменял.
Создание сайтов, шаблонов, помощь в решении проблем.
*

slepoy

  • Давно я тут
  • 753
  • 24 / 0
  • Тотальная шизофазия
Спасибо, попробую. А как быть с:
Цитировать
как добавить еще несколько условий типа "if" (т.е. указать несколько URL адресов) для этой же позиции модуля?

Вспомнил:
Цитировать
<?php
$sv = $_SERVER['REQUEST_URI'];
if (($sv == '/games/flash.html') or ($sv == '/games.html')) { ?>
« Последнее редактирование: 02.05.2011, 20:02:25 от slepoy »
Помог? Поставь(те) плюс в репутацию.
*

DaVinchy

  • Захожу иногда
  • 326
  • 42 / 3
Вспомнил
Только хотел написать :)
*

slepoy

  • Давно я тут
  • 753
  • 24 / 0
  • Тотальная шизофазия
У меня таких условий типа if (($sv == '/games/flash.html') or ($sv == '/games.html')) or ... { ?> накопилось достаточно много (и как-либо укоротить/сжать код нельзя?).
Поэтому возникла необходимость в похожих махинациях с описанием раздела/категории:
http://joomlaforum.ru/index.php/topic,162965.msg880036.html#msg880036
Помог? Поставь(те) плюс в репутацию.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

[Решено] Проблема с авторизацией Invalid Token

Автор treX

Ответов: 100
Просмотров: 101061
Последний ответ 06.10.2019, 16:55:45
от PaLyCH
модуль Newsflash: как вывести дату?

Автор joomloid

Ответов: 5
Просмотров: 5669
Последний ответ 03.04.2019, 12:25:27
от pH43
Как вывести все категории всех разделов на одной странице?

Автор genius

Ответов: 4
Просмотров: 5055
Последний ответ 22.01.2019, 08:38:30
от genius
Вопрос о правильности разметки тегами на странице

Автор dpy1995

Ответов: 10
Просмотров: 7963
Последний ответ 09.01.2018, 12:49:25
от kungurskiy
Как отредактировать модуль mod_yoo_slider?

Автор vitaliy4us

Ответов: 0
Просмотров: 3574
Последний ответ 06.12.2017, 16:14:45
от vitaliy4us