Новости Joomla

👩‍💻 Компонент "CS Афиши" для Joomla.

👩‍💻 Компонент "CS Афиши" для Joomla.

Расширение "CS Афиши" позволяет выводить список мероприятий, фильтровать их по датам, поиск по заголовкам и описанию.

В состав пакета расширений входят:
- Компонент "CS Афиши"
- Модуль "Календарь событий"
- Модуль "Предстоящие события"
- Библиотека "ImgResize"

Расширение "CS Афиши" позволяет выводить список мероприятий, фильтровать их по датам, поиск по заголовкам и описанию.

Модуль "Календарь событий" отображает предстоящие и прошедшие мероприятие на календаре, с отображением мероприятий на конкретную дату во всплывающем окне.

Модуль "Предстоящие события" показывает список предстоящий событий по порядку их наступления.

P.S. Расширение платное, но плата символическая, чисто для отработки приема платежей. Ключи без ограничения по времени, купившие сейчас - смогут обновляться без ограничений.

Разработчик - участник нашего сообщества Дмитрий Денисов (@codersite).

Страница расширения
Демо

Яндекс выпустил инструмент Видимость сайта в Алисе AI.

Яндекс выпустил инструмент Видимость сайта в Алисе AI.

С тех пор, как в поисковиках появились нейроответы ИИ, трафик на сайты стал гораздо меньше, так как пользователь стал получать информацию непосредственно на странице поисковика без перехода на сайт. Но при генерации ответа ИИ указывает источники - ссылки на сайты, информация которых была использована для генерации ответа.

Долгое время у всех был немой вопрос: "Как же теперь оценивать эффективность сайта?". Теперь этот на этот вопрос отчасти отвечает новый инструмент аналитики.
Процитируем справку Яндекса по инструменту:
На запросы пользователей в Поиске может отвечать Алиса AI. Ответы появляются в поисковой выдаче, в объектных ответах и на отдельной вкладке Поиска. В них чаще всего упоминаются страницы сайтов, на которые Алиса AI опиралась при подготовке ответа.

С помощью инструмента Видимость сайта в Алисе AI в Яндекс Вебмастере вы можете:
- узнать долю упоминаний сайта среди источников в ответах Алисы AI в Поиске и отследить динамику изменений;
- посмотреть примеры запросов, по которым страницы сайта показываются в ответах Алисы AI;
- посмотреть примеры сайтов той же тематики, которые часто упоминаются в генеративной выдаче.
Данные отображаются за последние 3 месяца и обновляются каждую неделю.

Статистика собирается только по тем запросам, по которым ваш сайт уже находится достаточно высоко в поисковой выдаче. Это позволяет анализировать видимость именно в той нише, где вы заинтересованы в продвижении, и избегать «размытия» по малозначимым для вас запросам.

Кроме того, такой подход обусловлен работой Алисы AI: она строит ответ с опорой на самые релевантные, информативные и качественные страницы, которые обычно занимают высокие позиции в Поиске.

Чтобы увидеть статистику вашего сайта в меню Яндекс.Вебмастера перейдите в раздел "Эффективность" и далее в "Показы сайта в Алисе AI".

В начале февраля 2026г. был вебинар с Михаилом Сливинским - амбассадором Поиска Яндекса, и в рамках вебинара была озвучена просьба сделать такой инструмент. Скорее всего разработка на тот момент уже велась, потому что от просьбы до релиза прошло около 2-х месяцев. В любом случае хорошо, что такая статистика появилась.

Показы сайта в Алисе AI в вашем Яндекс,Вебмастере.

@joomlafeed

👩‍💻 ИИ-админ для 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

0 Пользователей и 1 Гость просматривают эту тему.
  • 13 Ответов
  • 3023 Просмотров
*

Очередной вебмастер

  • Давно я тут
  • 768
  • 55 / 0
  • лысый умный дядя
Работаю с системным плагином - который переписывает view для формы редактирования материала.
Столкнулся с глюком - включаю плагин, меняется шаблон вывода формы редактирования материала, создаю материал - присваиваю категорию B - сохраняю.
Выхожу - захожу снова на редактирования - категория сбрасывается на uncategorized. При отключенном плагине - com_content при редактировании существующего материала, категорию сохраняет, не сбрасывает.
Вопрос - где хранится инфа о присвоенной материалу категории? (Сессия, база данных, JS)
Буду признателен, если опытные разработчики пояснят.
Сайты на Joomla, разработка и поддержка
----------
Помог ответ - жми плюс!
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
в бд естественно! в таблице #__content в поле catid записуется id выбранной категории!
Уху, именно так.

Цитировать
категория сбрасывается на uncategorized
Видимо где-то потеряли catid и при сохранении он не учитывается. По дефу ставит Uncategorized.
*

Очередной вебмастер

  • Давно я тут
  • 768
  • 55 / 0
  • лысый умный дядя
Я просто копаюсь с плагином по переписыванию вида и вот он "собака злая" ну ни в какую не сохраняет категории...
Может от того что ему уже 8 месяцев...
Господа, кто нибудь может глянуть код и сказать в чем косяк?
Вещь так то достаточно интересная...
Сайты на Joomla, разработка и поддержка
----------
Помог ответ - жми плюс!
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Хмм, вроде как вывод категории есть.

Код: php
<li><?php echo $this->form->getLabel('catid'); ?>
<?php echo $this->form->getInput('catid'); ?></li>

Вообще код шаблона один в один с тем, что в оригинале. Значит при сохранении что-то не так. Надо устанавливать плагин и расследовать.

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

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
А не расскажете что пытаетесь сделать?
Сделать так, чтобы плагин работал как полагается  ^-^

Мое расследование дампом:

Код
echo '<pre>';
print_r($this->form);
echo '</pre>';

выявило, что в самой форме catid пустое!
Код
[catid] => 

Вот поэтому selected и не срабатывает. Но почему catid не подхватывается - вот в чем вопрос ::)
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
ну это логично ) но код плагина интересный ) мне больше интересно что автор пытается соорудить и для чего! может есть способ попроще!
В том то и дело, что код очень любопытный и почти работает. Автор попытался переопределить файлы шаблона в админке, а насколько нам известно такое возможно только для фронтенда.
*

Очередной вебмастер

  • Давно я тут
  • 768
  • 55 / 0
  • лысый умный дядя
В том то и дело, что код очень любопытный и почти работает. Автор попытался переопределить файлы шаблона в админке, а насколько нам известно такое возможно только для фронтенда.
Вот и я о том же. Дмитрий. очень меня тема зацепила...
Вот только не понятно для чего это )
Чтобы изменить форму редактирования материала, так как нужно мне или любому другому разработчику, БЕЗ хака системных файлов!

очень надеюсь, что Дима сможет найти причину отсутствия catid... а то я как бы новичок в PHP :(
Сайты на Joomla, разработка и поддержка
----------
Помог ответ - жми плюс!
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Тем не менее решение вашей проблемы это чуть допилить модель:
Код: php
class ContentModelArticle2 extends ContentModelArticle
{
public function getItem()
{
$item = parent::getItem();
$this->setState( 'article.id', $item->id );
return $item;
}
}


и да метод onAfterInitialise лучше переделать так:
Код: php
function onAfterInitialise()
{
$input = JFactory::getApplication()->input;
/** Set criteria for the View you want to override */
if ( JFactory::getApplication()->getClientId() // если в админке вернет 1 если на сайте вернет 0 ( 1 и true синоним, как и 0 и false ( Конечно если для сравнения не использовать === ))
&& $input->get( 'option', '', 'cmd' ) == 'com_content'
&& $input->get( 'view', '', 'cmd' ) == 'article'
&& $input->get( 'layout', '', 'cmd' ) == 'edit'
) {

/** Override JRequest View and Layout - register the view (example in the layout/com_content folder) */
$input->set( 'view', 'article2' ); // устанавливаем значения через тот же JFactory::getApplication()->input класс JRequest считается устаревшим
$input->set( 'layout', 'edit2' );
JLoader::register( 'ContentViewArticle2', __DIR__ . '/com_content/views/article/ContentViewArticle2.php' );
}
}
Опередил ;) Я как раз вчера вечером раскопал, что теряется article.id :) Правда не понял, почему он теряется...

Это тоже системный плагин! И дело в принципе не в этом, а в том, что код сам по себе интересен и показывает возможности движка.

Вообщем внес изменения, чуть подправил метод getItem(), так как ругался на strict стандарты - вызов метода должен быть такой же, как у родителя.  Все работает - плагин приложил.

[вложение удалено Администратором]
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
ну я так.. на скорую руку.. а то как бы на часах было уже без 2 часа ночи с копейками ;D
Ну я тоже, раскопал и не стал делать - поздно было уже. Кстати, есть идеи, почему article.id теряется? Мы же вроде как не в новой статье находимся...
*

Очередной вебмастер

  • Давно я тут
  • 768
  • 55 / 0
  • лысый умный дядя
Блин ну вы и шарите :o
Спасибо, мужики, подсобили.
Дима отдельное спасибо за готовое рабочее решение. *DRINK*
Сайты на Joomla, разработка и поддержка
----------
Помог ответ - жми плюс!
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Re: Категория материала - где хранится?
« Ответ #10 : 16.11.2012, 13:18:29 »
Блин ну вы и шарите :o
Спасибо, мужики, подсобили.
Дима отдельное спасибо за готовое рабочее решение. *DRINK*
Пожалуйста ;)

Я кстати нашел, почему article.id теряется. Проблема в populateState():
https://github.com/joomla/joomla-cms/blob/2.5.x/libraries/joomla/application/component/modeladmin.php#L805

$this->getName() возвращает article2, что логично - класс модели в плагине назван ContentModelArticle2.

Отсюда вывод, можно переделать плагин и использовать такой код:

Код: php
/**
 * Extend the real model.
 */
/**
 * Extend the real model.
 */
class ContentModelArticle2 extends ContentModelArticle
{
/**
* Method to get a correct name for the model. This will ensure,
* that the model state will work properly.
*
* @return  string  Model name.
*/
public function getName()
{
return 'article';
}
}

Я у себя проверил - работает  ^-^
*

Очередной вебмастер

  • Давно я тут
  • 768
  • 55 / 0
  • лысый умный дядя
Re: Категория материала - где хранится?
« Ответ #11 : 16.11.2012, 13:46:39 »
Спасибо, Дим.
Надеюсь часть этого обсуждения поможет Фей найти выход.
И кстати, если что первоначально авторство плагина принадлежит AmyStephen  http://github.com/AmyStephen/Layout-Override-Plugin
Сайты на Joomla, разработка и поддержка
----------
Помог ответ - жми плюс!
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Re: Категория материала - где хранится?
« Ответ #12 : 16.11.2012, 13:53:46 »
И кстати, если что первоначально авторство плагина принадлежит AmyStephen  http://github.com/AmyStephen/Layout-Override-Plugin
Да, конечно. Её копирайт я не тер.

Вообщем, тут надо репу почесать, да выдать полезный плагин: с нормальными названиями классов, с нормальными названиями файлов, с возможностью выбора переопределения и т.п.
*

Очередной вебмастер

  • Давно я тут
  • 768
  • 55 / 0
  • лысый умный дядя
Re: Категория материала - где хранится?
« Ответ #13 : 16.11.2012, 15:00:47 »
с возможностью выбора переопределения и т.п.
ВОТ, ВОТ... Я об этом и мечтал когда его увидел.. Хотелось чтоб можно было для каждой категории например свою форму переопределять.
Сайты на Joomla, разработка и поддержка
----------
Помог ответ - жми плюс!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться