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

Ankazyryanka

  • Новичок
  • 2
  • 0 / 0
Проблема у меня в выводе модулей User 1, 2, 3, думаю проблема с присвоением переменных  в начале кода... помогите советом, буду очень благодарен!
Код
<head>
<jdoc:include type="head" />
<link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?>/css/template_css.css" type="text/css" />
<?php
if (($this->countModules( 'user1' )) and ($this->countModules( 'user2' ))) { 
//вывод по 50%
$usera = 'user1';
$userb = 'user2';
}else if (($this->countModules( 'user1' )) or ($this->countModules( 'user2' ))) {
//вывод на 100%
$usera = 'user3';
$userb = 'user3';
}
?>


<meta http-equiv="content-type" content="text/html":>

<SCRIPT LANGUAGE="JavaScript">
<!-- Begin
var url = "";
var mag="";

function search(item){
if (item.text.value=="")
{
alert("Ïîæàëóñòà, ââåäèòå сайте!")
} else {

for (var j=0; j < item.text.value.length; j++) {
if (item.text.value.charAt(j) == " ")
mag += "+";
else mag += item.text.value.charAt(j);}

url = "http://yandex.ru/yandsearch?text=" + mag;
mag = "";
newWindow=window.open(url);

}
}
// End -->
  </script>
</head>

<body>

<table border="0" cellspacing="0" cellpadding="0" width=100% height=800>
  <tr align="left" valign="top">
    <td rowspan="1" colspan="1" height="1" width="1"></td>
    <td rowspan="1" colspan="1" height="1" width="179"></td>
    <td rowspan="1" colspan="1" height="1" width="313"></td>
    <td rowspan="1" colspan="1" height="1" width="6"></td>
    <td rowspan="1" colspan="1" height="1" width="330"></td>
    <td rowspan="1" colspan="1" height="1" width="133"></td>
    <td rowspan="1" colspan="1" height="1" width="63"></td>
  </tr>
  <tr align="left" valign="top">
    <td rowspan="1" colspan="1" width="1" height="124"></td>
    <td rowspan="2" colspan="2" width="492" height="195">
<OBJECT
      codeBase=http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0
      height=195 width=492 classid=clsid:D27CDB6E-AE6D-11cf-96B8-444553540000><PARAM NAME="movie" VALUE="<?php echo $this->baseurl ?>/templates/ekirov_template/images/logo.swf"><PARAM NAME="quality" VALUE="high">
                              <embed src="<?php echo $this->baseurl ?>/templates/ekirov_template/images/logo.swf" quality="high"
      pluginspage="http://www.macromedia.com/go/getflashplayer"
      type="application/x-shockwave-flash" width="492"
      height="195"></embed></OBJECT>
</td>

    <td rowspan="1" colspan="1" width=100% height="124" background="<?php echo $this->baseurl ?> /templates/ekirov_template/images/TopBGRTop.jpg"></td>

    <td rowspan="1" colspan="3" width="526" height="124" align="left" valign="middle" background="<?php echo $this->baseurl?>/templates/ekirov_template/images/TopBGRTop.jpg">
<?php
if ($this->countModules( "banner" )) : ?>
<div id="banner">
<jdoc:include type="modules" name= "banner" style= "horz" />
</div>
<?php endif;?>
</td>
  </tr>
  <tr align="left" valign="top">
    <td rowspan="1" colspan="1" width="1" height="71"></td>

    <td rowspan="1" colspan="1" width=100% height="71" background="/templates/ekirov_template/images/TopBGRbottom.jpg"></td>



    <td rowspan="1" colspan="2" width="463" height="71" align="right" valign="top" background="<?php echo $this->baseurl?>/templates/ekirov_template/images/TopBGRbottom.jpg">

<div id="kont_nav">
<A HREF="<?php echo $this->baseurl ?>/index.php?option=com_contact&Itemid=3">
<img src="<?php echo $this->baseurl ?>/templates/ekirov_template/images/pixel.gif" width=71 height=60 border=0 vspace=0 ALT="Êîíòàêòíàÿ èíôîðìàöèÿ"></A>
</div>

<div id="search_nav">
<A HREF="<?php echo $this->baseurl ?>/index.php?option=com_search&Itemid=5">
<img src="<?php echo $this->baseurl ?>/templates/ekirov_template/images/pixel.gif" width=71 height=60 border=0 vspace=0 ALT="Ðàñøèðåííûé ïîèñê"></A>
</div>

<div id="home_nav">
<A HREF="<?php echo $this->baseurl ?>/index.php">
<img src="<?php echo $this->baseurl ?>/templates/ekirov_template/images/pixel.gif" width=71 height=60 border=0 vspace=0 ALT="Íà ãëàâíóþ ñòðàíèöó"></A>
</div>

<div id="yandex">
<form name="choose" action="javascript:search(document.choose) //">
<input type="text" name="text" value='Поиск на Yandex' onblur="if(this.value=='') this.value='Поиск на Yandex';" onfocus="if(this.value=='Поиск на  Yandex') this.value='';">
</form>
</div>

<div id="search">
 <jdoc:include type="modules" name="user4" style="horz" />
</div>

<!--
<div id="GET">
<A HREF="http://studio.ekirov.net/" target="_blanc">
<img src="<?php echo$this->baseurl ?>/templates/ekirov_template/images/GET2.jpg" width=200 height=60 border=0 vspace=0 ALT="GET"></A>
</div>
-->
</td>



    <td rowspan="1" colspan="1" width="63" height="71"><img border="0" width="63" height="71" src="<?php echo $this->baseurl?>/templates/ekirov_template/images/Corner.jpg" alt=""></td>
  </tr>
  <tr align="left" valign="top" height="1">
    <td rowspan="1" colspan="1" width="1"></td>
    <td rowspan="1" colspan="1" width="179" align="right" valign="top" background="<?php echo $this->baseurl?>/templates/ekirov_template/images/LeftBottomPanel.gif" style="background-repeat:repeat-y">

    <div id="leftcol">
<a name="menu"></a>
<?php if ($this->countModules( "left" )): ?>
               <jdoc:include type="modules" name="left" style="rounded"/>
    <?php endif; ?>
                 
</div>
</td>
   
    <td rowspan="1" colspan="3" id="main_col">

     <?php if ($this->CountModules( "user3" )) : ?>
               <div id="user3">
         <jdoc:include type="modules" name="user3" style="xhtml"/>
            </div>
<?php endif; ?>
       
<?php if ($this->CountModules( "user1" )) : ?>
               <div id="<?php echo $usera; ?>"/>
<jdoc:include type="modules" name="user1" style="xhtml"/>
 </div>
 <?php endif; ?>
 
<?php if ($this->CountModules( "user2" )) : ?>
 <div id="<?php echo $userb; ?>">
<jdoc:include type="modules" name="user2" style="xhtml"/>
  </div>
<?php endif; ?>

            <div class="clr"></div>
<div class="content">
<a name="content"></a>
<jdoc:include type="component"/>
</div>
</td>

    <td rowspan="1" colspan="2" width="196" align="left" valign="top" background="<?php echo $this->baseurl?>/templates/ekirov_template/images/RightPanel.gif">

<?php if (($this->countModules( "right" )) or ($this->countModules( "top" ))) :
?>
<div id="rightcol">
<jdoc:include type="modules" name="right" style= "rounded" />
               
</div>
    </td>
    <?php endif; ?>
  </tr>
  <tr align="left" valign="top">
    <td rowspan="1" colspan="1" width="1" height="50"></td>
    <td rowspan="1" colspan="1" width="179" height="50" background="<?php echo $this->baseurl?>/templates/ekirov_template/images/FooterLeft.jpg" valign="middle"  style="background-repeat:no-repeat">
<p align="right">
<a target="_blank" href="http://seowebtools.ru">
<img alt="SeoWebTools.ru - îïòèìèçàöèÿ, àíàëèç è àóäèò ñàéòà" border="0" src="http://seowebtools.ru/inform/infb.php?t=16&s=5" width="0" height="0"></a>
</p>
</td>

    <td rowspan="1" colspan="3" width=100% height="50" background="<?php echo $this->baseurl?>/templates/ekirov_template/images/FooterCenter.jpg" style="background-repeat:repeat-x">
<div id="footer" >
<?php include_once( $this->baseUrl .'/includes/footer.php' ); ?>
<jdoc:include type="modules" name="debug" style= "horz" />
</div>
</td>

    <td rowspan="1" colspan="2" width="196" height="50" background="<?php echo $this->baseurl?>/templates/ekirov_template/images/FooterRight.jpg"  style="background-repeat:no-repeat" valign="top">
<div align=left>
<!--LiveInternet counter--><script type="text/javascript"><!--
document.write("<a href='http://www.liveinternet.ru/click' "+
"target=_blank><img src='http://counter.yadro.ru/hit?t23.6;r"+
escape(document.referrer)+((typeof(screen)=="undefined")?"":
";s"+screen.width+"*"+screen.height+"*"+(screen.colorDepth?
screen.colorDepth:screen.pixelDepth))+";u"+escape(document.URL)+
";h"+escape(document.title.substring(0,80))+";"+Math.random()+
"' alt='' title='LiveInternet: ïîêàçàíî ÷èñëî ïîñåòèòåëåé çà"+
" ñåãîäíÿ' "+
"border=0 width=0 height=0><\/a>")//--></script><!--/LiveInternet-->

<img src="<?php echo $this->baseurl?>/counter/counter.php" width="88" height="31" border=0>
   
</div>
</td>
  </tr>
</table>

</body>

</html>
*

Ankazyryanka

  • Новичок
  • 2
  • 0 / 0
 !ребят очень нужна помощь
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Ja t3 Framework и MEGAMENU нужна помощь

Автор 777megamen777

Ответов: 16
Просмотров: 11445
Последний ответ 28.02.2017, 14:17:22
от ddenov
мобильная версия шаблона для Joomla

Автор voron121

Ответов: 8
Просмотров: 17888
Последний ответ 24.12.2016, 14:59:57
от effrit
Страница вывода результатов поиска (Joomla 1.5.14)

Автор kok

Ответов: 3
Просмотров: 12987
Последний ответ 13.12.2015, 23:13:03
от Vikitos
Шаблон gk sporter

Автор yrygvay

Ответов: 5
Просмотров: 8504
Последний ответ 17.03.2014, 03:03:45
от bazhin83
не работает регистрация на Joomla 1.5

Автор DonilZ

Ответов: 5
Просмотров: 10510
Последний ответ 03.01.2014, 19:33:58
от KeepOut