Новости Joomla

👩‍💻 WT LLMs для Joomla: llms.txt, llms.json для AI-агентов.

👩‍💻 WT LLMs для Joomla: llms.txt, llms.json для AI-агентов.

Это Joomla-компонент для публикации AI-ready карты сайта и автоматической генерации файлов llms.txt, llms-full.txt и llms.json по концепции llmstxt.org.  Также о концепции llms.txt говорит Google в своей справке Lighthouse. Решение помогает LLM-моделям, AI-агентам, GEO/AI SEO-процессам и внутренним автоматизациям получать структурированные данные о сайте без ручной сборки JSON и Markdown.

С помощью WT LLMs можно:
- создать структурированное описание сайта для AI-агентов;
- управлять профилем сайта, картой интентов и каноническими страницами для этих интентов из админки Joomla;
- генерировать llms.txt и llms.json;
- использовать REST API для автоматического заполнения данных;
- отдавать публичную schema-инструкцию для AI-агентов;

В комплект компонента входит плагин markdown-версии страниц Joomla. Системный плагин Joomla, который добавляет альтернативное Markdown-представление страниц сайта. Он позволяет отдавать содержимое страницы в более чистом текстовом формате, удобном для AI-агентов, LLM, поисковых систем и технических интеграций.
Плагин добавляет в ссылки на AI-файлы.

Пакет подходит для сайтов на Joomla 5+, которым важно сделать контент понятнее для LLM, AI-поиска, ассистентов и будущих систем машинного чтения.

Видео:
- ВК Видео
- RuTube
- YouTube

Ссылки:
Страница расширения
GitHub

@joomlafeed

Вышли релизы безопасности Joomla 6.1.2 и Joomla 5.4.7

Релиз безопасности Joomla 6.1.2 и Joomla 5.4.7

Проект Joomla! рад сообщить о выходе Joomla 6.1.2 и Joomla 5.4.7. Это релизы безопасности и исправления ошибок для серий 5.x и 6.x.

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

dmsoh

  • Захожу иногда
  • 195
  • 8 / 0
В файле autobb.php  комлектация выводится следующим образом ( в autobb.html.php по тому же принципу):

Код
$k=1;
for( $i=0; $i<ceil(sizeof($complects)/2); ++$i ) {
$j = $i+ceil(sizeof($complects)/2);
$lists['complect'] .= '<li><label for="complect_'.$complects[$i]->id.'">';
if( trim( $complects[$i]->options )=='' ) {
$lists['complect'] .= '<input type="checkbox" value="yes" name="complect_'.$complects[$i]->id.'" id="complect_'.$complects[$i]->id.'"'.( $complects[$i]->ischecked ? ' checked' : '' ).' /> '.$complects[$i]->title.'</label>';
} else {
$options = explode( ';', $complects[$i]->options );
$opts = array();
$opts[] = mosHTML::makeOption( 'no', '&nbsp;' );
for( $l=0; $l<sizeof($options); ++$l ) {
$opts[] = mosHTML::makeOption( $l, $options[$l] );
}
$lists['complect'] .= mosHTML::selectList( $opts, 'complect_'.$complects[$i]->id, ' class="inputbox" size="1"', 'value', 'text', $complects[$i]->ischecked ? $complects[$i]->mcoptions : 'no' );
unset($l, $opts);
}
$lists['complect'] .= '</li>'
.'<li>'.($j<sizeof($complects) ? '<label for="complect_'.$complects[$j]->id.'">'.$complects[$j]->title.'</label>' : ' ');
if( $j<sizeof($complects) ) {
if( trim( $complects[$j]->options )=='' ) {
$lists['complect'] .= '<input type="checkbox" value="yes" name="complect_'.$complects[$j]->id.'" id="complect_'.$complects[$j]->id.'"'.( $complects[$j]->ischecked ? ' checked' : '' ).' /></li>';
} else {
$options = explode( ';', $complects[$j]->options );
$opts = array();
$opts[] = mosHTML::makeOption( 'no', '&nbsp;' );
for( $l=0; $l<sizeof($options); ++$l ) {
$opts[] = mosHTML::makeOption( $l, $options[$l] );
}
$lists['complect'] .= mosHTML::selectList( $opts, 'complect_'.$complects[$j]->id, ' class="inputbox" size="1"', 'value', 'text', $complects[$j]->ischecked ? $complects[$j]->mcoptions : 'no' );
unset($l, $opts);
}
}
$lists['complect'] .= "";
$k = 3 - $k;
}
$lists['complect'] .= '</ul>';
unset($j, $k);

}

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


Код
$lists['complect'] = '<ul>';

for( $i=0; $i<ceil(sizeof($complects)); ++$i ) {

if ($i == ceil(sizeof($complects)/2)) $lists['complect'] .= '</ul><ul>';

$lists['complect'] .= '<li><label for="complect_'.$complects[$i]->id.'">';
if( trim( $complects[$i]->options )=='' ) {
$lists['complect'] .= '<input type="checkbox" value="yes" name="complect_'.$complects[$i]->id.'" id="complect_'.$complects[$i]->id.'"'.( $complects[$i]->ischecked ? ' checked' : '' ).' /> '.$complects[$i]->title.'</label>';
} else {
$options = explode( ';', $complects[$i]->options );
$opts = array();
$opts[] = mosHTML::makeOption( 'no', '&nbsp;' );
for( $l=0; $l<sizeof($options); ++$l ) {
$opts[] = mosHTML::makeOption( $l, $options[$l] );
}
$lists['complect'] .= mosHTML::selectList( $opts, 'complect_'.$complects[$i]->id, ' class="inputbox" size="1"', 'value', 'text', $complects[$i]->ischecked ? $complects[$i]->mcoptions : 'no' );


unset($l, $opts);



}
$lists['complect'] .= '</li>';


 }$lists['complect'] .= '</ul>';

}
« Последнее редактирование: 26.08.2008, 19:08:30 от dmsoh »
*

Alex Revo

  • Moderator
  • 1995
  • 109 / 0
Re: Упрощение вывода комплектации
« Ответ #1 : 02.09.2008, 15:57:55 »
Да, ты прав, довольно логичное решение.
Я не успел его включить в новую версию, но в следующей воспользуюсь точно.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Дизайн комплектации

Автор bananapapa

Ответов: 2
Просмотров: 1902
Последний ответ 04.12.2010, 02:18:09
от bananapapa
Доработка формы вывода списка объявлении компонета

Автор NeoKS

Ответов: 3
Просмотров: 2530
Последний ответ 29.01.2010, 09:26:12
от Alex Revo
Модуль вывода регионов

Автор limon

Ответов: 3
Просмотров: 2530
Последний ответ 14.01.2010, 17:13:38
от FreeDen
Неправильный порядок вывода фотографий

Автор selfmademan

Ответов: 6
Просмотров: 3278
Последний ответ 07.01.2009, 03:33:16
от dmsoh
подскажите еще где меняется шрифт модуля комплектации?

Автор vovchikku

Ответов: 8
Просмотров: 3694
Последний ответ 15.05.2008, 14:08:05
от vovchikku