Новости Joomla

Process Forge — фреймворк для создания AI-процессов.

Process Forge — фреймворк для создания AI-процессов.

На новогодних каникулах 2026 в одном из чатов Joomla-сообщества коллега по цеху поделился промптом для ИИ-агента и результатом этого промпта. За неделю до этого он впервые попробовал Gemini CLI. Я до этого ИИ пользовался только в веб версиях и в целом меня это устраивало. Увидев простыню текста, запрос в CLI и простыню ответа первое, что меня охватило: "Я НЕ ХОЧУ вот это всё изучать! Опять что-то новое, надоело...".

Потом были стадии проб и ошибок, попыток использовать готовые пакеты community skills с гитхаба с ролевым внушением "ты супер-пупер мега-бэкенд-Joomla разработчик с 40-летним опытом, сделай мне красиво". Где-то в середине этого полугодия я стал формализовать свои процессы (а это не только разработка, но и SEO, аналитика, бизнес-аналитика, проработка и выстраивание процессов и т.д., но в итоге это, как правило, или связано с или ведёт к сайту на Joomla). Формализация привела к моему пониманию некоторых базисов, которые общие для всех процессов. Об этом чуть ниже.

Теперь я хочу представить на суд уважаемой публике свои наработки по фреймворку для создания формализованных процессов работы для ИИ-агентов - Process Forge.

- Читать статью на Хабре
- Process Forge (GitHub)

@joomlafeed

Компонент Joomla 6: Генератор LLMs.txt.

Компонент Joomla 6: Генератор LLMs.txt.

Компонент Joomla 6: Генератор LLMs.txt.

Ещё один генератор ИИ-файлов llms.txt и llms-full.txt.

Основные особенности/возможности компонента:

  • Генерация по стандарту: Автоматическое создание файла-визитки llms.txt и расширенной версии llms-full.txt с аннотированным списком материалов.
  • Интеллектуальная работа с контентом: Компонент использует мета-описания (Meta Description) из статей и пунктов меню, превращая SEO-настройки сайта в качественный контекст для нейросетей.
  • Просмотреть результат генерации файлов можно сразу в рабочей области компонента. После внесения корректив (через Настройки компонента. При отладке лучше открыть три вкладки в браузере: Настройка — Геренация/Превью — Список Материалов/Категории/Меню.) — проводим перегенерацию, смотрим результат до полной «победы».
  • Автоматизация и безопасность: Синхронизация с sitemap.xml, группировка по категориям и автоматическое создание резервных копий (.bak) при каждой генерации.
  • Гибкое управление: Возможность исключения определенных категорий и/или статей и/или пунктов меню, а также простая настройка через стандартную админпанель Joomla.
  • Подробное руководство/справка: Пошаговая инструкция для пользователя в Настройках компонента для редакторов с базовым знанием администрирования Joomla.

👉 Важно учесть.
1️⃣ Компонент Генератор LLMs.txt изначально составляет базовый список ссылок на основе sitemap.xml и сверяется с ним на предмет: запрета индексации url в robots.txt, тегов noinex/nofollow. Это экономит время на проверку «закрыть от индексации», поскольку компонент генерации Sitemap.xml уже реализовал эту задачу. Посему, формирование ссылок для ИИ имеет комплексный подход, составление грамотного/валидного/релевантного sitemap.xml никто не отменял.

2️⃣ Тексты-описания ссылок формируются из Meta Description com_content (только компонент Материалы) и выбранных пользователем Меню сайта. Важно, чтобы Meta Description были уникальными и релевантными, соответствовали базовому seo. Составленные «на отшибись» Description для ИИ — «не катит» (впрочем, для поисковых систем они тоже «не канали»).

Разработчик - участник нашего сообщества Александр Кузнецов (@newvksan).

Страница расширения

@joomlafeed

#joomla #ии #ai

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

Ongi

  • Захожу иногда
  • 273
  • 15 / 0
Нужно было сделать элемент, который красиво выводил бы несколько видео из контакта. Он прекрасно работает через админку, но при попытке добавить видео с фронта, данные в полях просто не сохраняются. Уже всю голову сломала, не могу понять в чем проблема.

Вот как это выглядит на сайте.



Вот как это выглядит в админке.


Код элемента.
Код
defined('_JEXEC') or die('Restricted access');

App::getInstance('zoo')->loader->register('ElementRepeatable', 'elements:repeatable/repeatable.php');

class ElementVideo extends ElementRepeatable implements iRepeatSubmittable {

protected function _hasValue($params = array()) {

$videoid = $this->get('videoid', $this->config->get('default'));
$number = $this->get('number', $this->config->get('default'));
$value = $this->get('value', $this->config->get('default'));

return !empty($videoid) || !empty($number) || !empty($value) || $value === '0';
}

protected function _getSearchData() {

return $this->get('videoid', $this->config->get('default')).','.$this->get('number', $this->config->get('default')).','.$this->get('value', $this->config->get('default'));

}

protected function _edit($params = array()) {
$html = array();
$html[] = $this->app->html->_('control.text', $this->getControlName('videoid'), $this->get('videoid', $this->config->get('default')), 'size="60" maxlength="255" placeholder="id"');
$html[] = $this->app->html->_('control.text', $this->getControlName('number'), $this->get('number', $this->config->get('default')), 'size="60" maxlength="255" placeholder="Номер серии"');
$html[] = $this->app->html->_('control.text', $this->getControlName('value'), $this->get('value', $this->config->get('default')), 'size="60" maxlength="255" placeholder="Код vk"');
return implode("", $html);
}

public function _render($params = array()) {
$string = $this->get('value');
$html = array();

    $html[] = '<div class="button-ani" id="'. $this->get('videoid').'">';
    $html[] = '<a target="my-frame" href="'. substr($string, 13, -10).'">'. $this->get('number').'</a>';
    $html[] = '</div>';

    return implode("", $html);


}

public function _renderSubmission($params = array()) {

        return $this->_edit($params);

}
*

likrion

  • Давно я тут
  • 750
  • 129 / 2
Re: Нужна помощь со своим элементом
« Ответ #1 : 26.07.2013, 16:02:11 »
Код
public function _renderSubmission($params = array()) {
        return $this->_edit();
}

?
R331474010295
*

Ongi

  • Захожу иногда
  • 273
  • 15 / 0
Re: Нужна помощь со своим элементом
« Ответ #2 : 26.07.2013, 19:57:31 »
За основу брала стандартный элемент Text, там эта функция была написана именно так. Подскажите хотя бы в общих чертах, что там должно быть или может в одном из стандартных элементов есть нечто подобное?
*

MetaSpirit

  • Завсегдатай
  • 1370
  • 106 / 0
  • R.A.S.Lab[.org]
Re: Нужна помощь со своим элементом
« Ответ #3 : 26.07.2013, 20:44:45 »
В стандартных код более получше написан.
А еще пара абстрактных функций не перегружена.
R.A.S.Lab[.org]: ZOOvirtue - корзина для ZOO, Яндекс.Карты для ZOO, ItemPanes - табы для ZOO, ZOOlendar - календарь для ZOO  и др.
Создание расширений для YOOtheme ZOO на заказ. Становитесь в очередь.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Нужна ли платная лицензия JBZoo?

Автор romanln2016

Ответов: 1
Просмотров: 4903
Последний ответ 20.02.2018, 10:29:46
от Voronov
Нужна помощь с Widgetkit, шаблон Revista Nuevo

Автор salem.sakarov

Ответов: 1
Просмотров: 1525
Последний ответ 18.03.2014, 09:04:59
от salem.sakarov
Возникают проблемы с открытием swf элементом media

Автор tarkasha

Ответов: 0
Просмотров: 1513
Последний ответ 02.11.2013, 12:18:48
от tarkasha
Нужна консультация по ZOO 2.6.6, а конкрентно по рекомендациям zoo.

Автор broker_alexandr

Ответов: 4
Просмотров: 11932
Последний ответ 28.05.2013, 03:26:39
от Zudva
Нужна доработка jbzoo

Автор forrest86

Ответов: 18
Просмотров: 2804
Последний ответ 14.05.2013, 09:15:03
от nick71