Новости Joomla

Компонент 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

👩‍💻 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

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

kaksdelat

  • Новичок
  • 8
  • 0 / 0
Здравствуйте каким образом можно убрать лишнию вложенность в компоненте например:
на сайте компонент видео галереи при открытии категории с видео ссылка выглядит так
http://prikolnyekartinki.com/s-effektami.html
При нажатии на видео ссылка выглядит так:
http://prikolnyekartinki.com/s-effektami/video/podborka-dtp-dekabr-2012-chast-1.html
По выше написанному мы видим что добавляется категория самого компонента video и вот вопрос как её убрать. Подскажите в каком месте рыть какая функция отвечает за вывод ссылки.
Вот сам компонент http://1000videourokov.ru/downloads/com_allvideoshare_1.2.4.zip
« Последнее редактирование: 29.01.2013, 10:12:02 от kaksdelat »
*

prometheus

  • Захожу иногда
  • 84
  • 7 / 0
За пути на сайте отвечает router.php
*

kaksdelat

  • Новичок
  • 8
  • 0 / 0
За пути на сайте отвечает router.php
Там нет такого:
Код

/*
 * @version $Id: router.php 1.2.4 2012-10-30 $
 * @package Joomla
 * @copyright   Copyright (C) 2012-2013 MrVinoth
 * @license     GNU/GPL http://www.gnu.org/licenses/gpl-2.0.html
*/

// no direct access
defined('_JEXEC') or die('Restricted access');

function AllVideoShareBuildRoute( &$query ) {
$segments = array();
  
    if(isset($query['view'])) {
     $segments[] = $query['view'];
        unset( $query['view'] );
    }

if(isset($query['orderby'])) {
if($query['orderby'] != 'default') {
$segments[] = $query['orderby'];
}
     unset( $query['orderby'] );
}

    if(isset($query['slg'])) {
     $segments[] = $query['slg'];
        unset( $query['slg'] );
    }

    return $segments;
}

function AllVideoShareParseRoute( $segments ) {
$vars  = array();
$order = array('default', 'latest', 'popular', 'random', 'featured');
$count = count( $segments );

if( $count >= 1 && $segments[0] ) {
     $vars['view'] = $segments[0];
    }

if( $count == 2 ) {
if( in_array($segments[1], $order) ) {
$vars['orderby'] = $segments[1];
} else {
$vars['slg'] = $segments[1];
}
} else if($count == 3) {
$vars['orderby'] = $segments[1];
$vars['slg'] = $segments[2];    
}

    return $vars;
}

?>
Это файл router.php из компонента!
« Последнее редактирование: 30.01.2013, 06:19:48 от kaksdelat »
*

prometheus

  • Захожу иногда
  • 84
  • 7 / 0
Ну вот этот блок скорее всего и добавляет это

Код
    if(isset($query['view'])) {
     $segments[] = $query['view'];
        unset( $query['view'] );
    }
*

kaksdelat

  • Новичок
  • 8
  • 0 / 0
Ну вот этот блок скорее всего и добавляет это

Код
    if(isset($query['view'])) {
    $segments[] = $query['view'];
        unset( $query['view'] );
    }
И какое по вашему правило нужно изменить?
*

prometheus

  • Захожу иногда
  • 84
  • 7 / 0
Есть куча вариантов например в коде закоментировать строчку
Код
    if(isset($query['view'])) {
    //$segments[] = $query['view'];
        unset( $query['view'] );
    }
тогда твои ссылки будут выглядеть так
http://prikolnyekartinki.com/s-effektami/podborka-dtp-dekabr-2012-chast-1.html?view=video
Причем функцию тоже надо будет подправить.

Основная проблема что компонент не понимает что от него хотят категорию или конкретное видео поэтому добавляет этот эллемент. По умолчанию если он не указан то он считает что это категория. Это я вроде выяснил из файла allvideosshare.php
Код
// Require the base controller
if(JRequest::getCmd('view') == '') {
JRequest::setVar('view', 'categories');
} else if(JRequest::getCmd('view') == 'category' && !JRequest::getCmd('slg')){
JRequest::setVar('view', 'categories');
} else if(JRequest::getCmd('view') == 'video' && !JRequest::getCmd('slg')){
JRequest::setVar('view', 'videos');
}

Научи его понимать когда идет категория когда видео и все.
Как вариант префикс к сегменту например

http://prikolnyekartinki.com/s-effektami/vid-podborka-dtp-dekabr-2012-chast-1.html
http://prikolnyekartinki.com/s-effektami/cat-podborka-dtp-dekabr-2012-chast-1.html
*

guloc55

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
Есть куча вариантов например в коде закоментировать строчку
Код
    if(isset($query['view'])) {
    //$segments[] = $query['view'];
        unset( $query['view'] );
    }
тогда твои ссылки будут выглядеть так
http://prikolnyekartinki.com/s-effektami/podborka-dtp-dekabr-2012-chast-1.html?view=video
Причем функцию тоже надо будет подправить.

Основная проблема что компонент не понимает что от него хотят категорию или конкретное видео поэтому добавляет этот эллемент. По умолчанию если он не указан то он считает что это категория. Это я вроде выяснил из файла allvideosshare.php
Код
// Require the base controller
if(JRequest::getCmd('view') == '') {
JRequest::setVar('view', 'categories');
} else if(JRequest::getCmd('view') == 'category' && !JRequest::getCmd('slg')){
JRequest::setVar('view', 'categories');
} else if(JRequest::getCmd('view') == 'video' && !JRequest::getCmd('slg')){
JRequest::setVar('view', 'videos');
}

Научи его понимать когда идет категория когда видео и все.
Как вариант префикс к сегменту например

http://prikolnyekartinki.com/s-effektami/vid-podborka-dtp-dekabr-2012-chast-1.html
http://prikolnyekartinki.com/s-effektami/cat-podborka-dtp-dekabr-2012-chast-1.html

Да всё правильно ссылка video исчезает но вылазит что в файле allvideosshare.php ошибка на 29 строке вот срока
Код
require_once JPATH_COMPONENT.DS.'controllers'.DS.$controller.'.php';
Или я что то не так делаю помогите пожалуйста!
*

prometheus

  • Захожу иногда
  • 84
  • 7 / 0
В router.php исправить функцию парсера
Вместо
Код
	if( $count >= 1 && $segments[0] ) {
    $vars['view'] = $segments[0];
    }

Писать
Код
	if( $count >= 1 && $segments[0] ) {
    $vars['view'] = 'video';
    }
*

guloc55

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
В router.php исправить функцию парсера
Вместо
Код
	if( $count >= 1 && $segments[0] ) {
    $vars['view'] = $segments[0];
    }

Писать
Код
	if( $count >= 1 && $segments[0] ) {
    $vars['view'] = 'video';
    }
Не помогает! Ошибка исчезла ссылка video тоже но само видео не включается страница просто перезагружается и всё.
*

prometheus

  • Захожу иногда
  • 84
  • 7 / 0
Самое главное ты смысл понял нужно исправить функцию function AllVideoShareBuildRoute( &$query )
но также обязательно подправить и функцию function AllVideoShareParseRoute( $segments )
и все получится.
*

guloc55

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
Самое главное ты смысл понял нужно исправить функцию function AllVideoShareBuildRoute( &$query )
но также обязательно подправить и функцию function AllVideoShareParseRoute( $segments )
и все получится.
Всё перепробовал видео всё не работает добился только вот такой ссылки
http://prikolnyekartinki.com/s-effektami.html?view=video&slg=uralskie-pelmeni-shou-kvn-shagom-farsh&orderby=default
заменив
Код
function AllVideoShareBuildRoute( &$query )
на
Код
function AllVideoShareBuildRoute( &$video )
Неужели больше ни чего не сделать?
*

z3l

  • Захожу иногда
  • 84
  • 5 / 0
Здравствуйте, решение так никто и не придумал?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

[Решено] Не сохраняются HTML тэги в самописном компоненте

Автор evgen777

Ответов: 5
Просмотров: 1538
Последний ответ 04.03.2014, 15:40:47
от evgen777
Invlid token на разрабатываемом компоненте

Автор designcenter

Ответов: 1
Просмотров: 1434
Последний ответ 06.01.2014, 02:07:26
от Aleks.Denezh
[Решено] Удаление ID из материалов в своём компоненте

Автор n_drey

Ответов: 9
Просмотров: 1814
Последний ответ 25.12.2013, 16:46:54
от n_drey
Кнопка "Я ИДУ" в компоненте EventList

Автор kichik

Ответов: 5
Просмотров: 2810
Последний ответ 30.05.2013, 12:53:24
от dagolovach
Дерево категорий в компоненте

Автор slav

Ответов: 7
Просмотров: 2843
Последний ответ 15.05.2013, 23:20:59
от slav