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

ViktorMah

  • Захожу иногда
  • 252
  • 30 / 0
Доброго времени суток.

Решил завязать сайт с профилем Google+. Для этого реши сделать обычный контакт через com_contact.
Но возник вопрос - как разделить запрос выводящий поля "Название ссылки A + URL ссылки A" от остальных таких же полей.
Код: php
            <?php
   foreach(range('a', 'e') as $char) :// letters 'a' to 'e'
   $link = $this->contact->params->get('link'.$char);
   $label = $this->contact->params->get('link'.$char.'_name');

   if( ! $link) :
       continue;
   endif;

   // Add 'http://' if not present
   $link = (0 === strpos($link, 'http'))? $link : 'http://'.$link;

   // If no label is present, take the link
   $label = ($label)? $label : $link;
   ?>
<li>
<a target="_blank" href="<?php echo $link; ?>">
   <?php echo $label;  ?>
</a>
</li>
<?php endforeach; ?>







Для "URL ссылки A" нужно добавить rel="me" к <a target="_blank" href="<?php echo $link; ?>"> .
Но как при этом не затронуть остальные урлы ?

Спасибо.
« Последнее редактирование: 21.06.2012, 16:10:08 от ViktorMah »
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Re: Изменения default_links в com_contact
« Ответ #1 : 21.06.2012, 01:56:48 »
Код: php-brief
<?php
   foreach(range('a', 'e') as $char) :// letters 'a' to 'e'
   $link = $this->contact->params->get('link'.$char);
   $label = $this->contact->params->get('link'.$char.'_name');

   if( ! $link) :
       continue;
   endif;

   // Add 'http://' if not present
   $link = (0 === strpos($link, 'http'))? $link : 'http://'.$link;

   // If no label is present, take the link
   $label = ($label)? $label : $link;
   ?>
<li>
<a href="<?php echo $link; ?>" <?php if ($char=='a') echo 'rel="me" target="_blank" '; ?>>
   <?php echo $label;  ?>
</a>
</li>
<?php endforeach; ?>
*

ViktorMah

  • Захожу иногда
  • 252
  • 30 / 0
Re: Изменения default_links в com_contact
« Ответ #2 : 21.06.2012, 03:13:31 »
До чегоже всё просто оказалось.
Спасибо.
*

ViktorMah

  • Захожу иногда
  • 252
  • 30 / 0
И ещё один вопросик по тойже  теме.
Шаблон статьи - "Автор выводится ссылкой" нужно к этой ссылке добавить - rel="author"
Код: php
<dd class="createdby">
<?php $author = $this->item->created_by_alias ? $this->item->created_by_alias : $this->item->author; ?>
<?php if (!empty($this->item->contactid) && $params->get('link_author') == true): ?>
<?php
$needle = 'index.php?option=com_contact&view=contact&id=' . $this->item->contactid;
$item = JSite::getMenu()->getItems('link', $needle, true);
$cntlink = !empty($item)? $needle . '&Itemid=' . $item->id : $needle;
?>
<?php echo JText::sprintf('COM_CONTENT_WRITTEN_BY', JHtml::_('link', JRoute::_($cntlink), $author)); ?>
<?php else: ?>
<?php echo JText::sprintf('COM_CONTENT_WRITTEN_BY', $author); ?>
<?php endif; ?>
</dd>
Держать в статьях внешнюю ссылку, пусть даже на Google, как-то не очень хочется
Спасибо
« Последнее редактирование: 21.06.2012, 04:10:35 от ViktorMah »
*

ViktorMah

  • Захожу иногда
  • 252
  • 30 / 0
Я понимаю, что rel="author" нужно вывести в

Код: php
<?php echo JText::sprintf('COM_CONTENT_WRITTEN_BY', JHtml::_('link', JRoute::_($cntlink), $author)); ?>

а для этого необходимо переработать

Код: php
$needle = 'index.php?option=com_contact&view=contact&id=' . $this->item->contactid;

Но знаний да и фантазии не хватает, чтобы понять КАК  :'(
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Попробуй заменить вывод ссылки. К примеру так:
Код: php-brief
<?php echo '<a href="'.JRoute::_($cntlink).'" title="'.$author.'" rel="author">'.JText::_('COM_CONTENT_WRITTEN_BY').$author.'</a>'; ?>
*

ViktorMah

  • Захожу иногда
  • 252
  • 30 / 0
Спасибо, работает почти на все сто.
За исключением маленького огреха - %s перед именем автора.

Ваш вариант выводит фразу - Автор: %sИмяАвтора единой ссылкой.
я позволил себе немного изменить структуру

Код: php
<?php echo JText::_('COM_CONTENT_WRITTEN_BY').'<a href="'.JRoute::_($cntlink).'" title="'.$author.'" rel="author">'.$author.'</a>'; ?>
Так получилось полное соответствие структуры - Автор:=обычный текст, а имя автора ссылка

Но %s от этого не пропал. Запрятан он где-то здесь   JText::_('COM_CONTENT_WRITTEN_BY').      так как HTML код получается такой
Код: html4strict

<dd class="createdby">
Автор: %s
<a rel="author" title="Autor " href="/autor">Autor </a>
</dd>

*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Так замените вместо JText::_('COM_CONTENT_WRITTEN_BY') словом автор
или ищите в папке language определение текстового значения 'COM_CONTENT_WRITTEN_BY' и поменяйте как вам нужно
*

ViktorMah

  • Захожу иногда
  • 252
  • 30 / 0
Спасибо вам огромное Poznakomlus  :D :D :D
Совсем позабыл о том, что часто в языковых файлах применяют %S(по умолчанию на этом месте выводится переменная)
Удалил в language\ru-RU\ru-RU.com_content.ini строка 55
Код
Было
COM_CONTENT_WRITTEN_BY="Автор: %s"

стало
COM_CONTENT_WRITTEN_BY="Автор: "

На этом всё - привязка профиля Google+ к автору статей в Joomla используя страницу "КОНТАКТ пользователя"=страница Автора(Профиль) в компоненте КОНТАКТЫ прошла успешно.
 *DRINK*
« Последнее редактирование: 21.06.2012, 16:14:41 от ViktorMah »
*

ViktorMah

  • Захожу иногда
  • 252
  • 30 / 0
Вспомнил, что забыл поделиться как выводил ещё и даты создания/модификации/публикации
Всё в том же файле название_шаблона/html/com_content/article/default.php
находим блок:
Код: php
<?php if ($params->get('show_create_date')) : ?>
<dd class="create">
<?php echo JText::sprintf('COM_CONTENT_CREATED_DATE_ON', JHtml::_('date',$this->item->created, JText::_('DATE_FORMAT_LC2'))); ?>
</dd>
<?php endif; ?>
<?php if ($params->get('show_modify_date')) : ?>
<dd class="modified">
<?php echo JText::sprintf('COM_CONTENT_LAST_UPDATED', JHtml::_('date',$this->item->modified, JText::_('DATE_FORMAT_LC2'))); ?>
</dd>
<?php endif; ?>
<?php if ($params->get('show_publish_date')) : ?>
<dd class="published">
<?php echo JText::sprintf('COM_CONTENT_PUBLISHED_DATE', JHtml::_('date',$this->item->publish_up, JText::_('DATE_FORMAT_LC2'))); ?>
</dd>
<?php endif; ?>

и заменил на:

Код: php
<?php if ($params->get('show_create_date')) : ?>
<dd class="create">
<?php echo JText::_('COM_CONTENT_CREATED_DATE_ON'). '<span itemprop="dateCreated">' . JHtml::_('date',$this->item->created, JText::_('DATE_FORMAT_LC2')). '</span>'; ?>
</dd>
<?php endif; ?>
<?php if ($params->get('show_modify_date')) : ?>
<dd class="modified">
<?php echo JText::_('COM_CONTENT_LAST_UPDATED'). '<span itemprop="dateModified">' . JHtml::_('date',$this->item->modified, JText::_('DATE_FORMAT_LC2')). '</span>'; ?>
</dd>
<?php endif; ?>
<?php if ($params->get('show_publish_date')) : ?>
<dd class="published">
<?php echo JText::_('COM_CONTENT_PUBLISHED_DATE'). '<span itemprop="datePublished">' . JHtml::_('date',$this->item->publish_up, JText::_('DATE_FORMAT_LC2')). '</span>'; ?>
</dd>
<?php endif; ?>
и также вносим правку в языковой переменной COM_CONTENT_CREATED_DATE_ON , COM_CONTENT_LAST_UPDATED , COM_CONTENT_PUBLISHED_DATE и  убираем %s

Спасибо вам огромное Poznakomlus
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Форма для добавления данных в Google Sheets

Автор zigzagrus

Ответов: 2
Просмотров: 3158
Последний ответ 07.11.2024, 12:03:12
от zigzagrus
[РЕШЕНО] Как в Joomla 2.5 автоматом удалять пользователей, не активировавшихся?

Автор pH43

Ответов: 2
Просмотров: 5214
Последний ответ 01.06.2020, 17:16:26
от pH43
В Google Chrome некорректно работает админка

Автор Dorotar

Ответов: 1
Просмотров: 2359
Последний ответ 09.02.2020, 10:49:15
от Dorotar
[Баг - не решено] Копировать пункт в другое меню с тем же алиасом?

Автор ELLE

Ответов: 104
Просмотров: 26316
Последний ответ 14.05.2019, 15:06:50
от voland
JoomShoping решено

Автор igor_kozovyi4

Ответов: 0
Просмотров: 1767
Последний ответ 08.12.2018, 23:06:25
от igor_kozovyi4