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

nOObMeister

  • Захожу иногда
  • 126
  • 6 / 0
  • хД)))
Нужно отобразить информацию о пользователе, скажем телефон или любую другую инфу, в каком-то другом месте внутри профиля пользователя.

Поковырялся в файлах default_custom.php и profile.xml. Результат нулевой и много потраченного вникуда времени.

Пробовал так же такой же код, который по идее должен работать, но не работает...

<?php return JFactory::getUser()->get('phone','');?>

По идее эта строчка отображает массив данных:

         <?php if (JHtml::isRegistered('users.'.$field->id)):?>
            <?php echo JHtml::_('users.'.$field->id, $field->value);?>
         <?php elseif (JHtml::isRegistered('users.'.$field->fieldname)):?>
            <?php echo JHtml::_('users.'.$field->fieldname, $field->value);?>
         <?php elseif (JHtml::isRegistered('users.'.$field->type)):?>
            <?php echo JHtml::_('users.'.$field->type, $field->value);?>
         <?php else:?>
            <?php echo JHtml::_('users.value', $field->value);?>

Но как сделать чтобы он отображал только какой-то определенное поле или значение и в том месте, куда я его сам захочу поставить, а не сразу все значения скопом..

Есть идеи какие по этому поводу?
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Код: php
<?php print_r (JFactory::getUser()); ?>
затем анализируя данные выводим
Код: php-brief
<? 
$myuser = JFactory::getUser();
echo $myuser->name;
echo $myuser->username;
echo $myuser->email;
// и т .д исходя из ранее выведенной информацией print_r
?>
*

nOObMeister

  • Захожу иногда
  • 126
  • 6 / 0
  • хД)))
Poznakomlus, name и юзернейм он выводит без проблем.. а вот к примеру номер телефона или город, не выводит нивкакую. Наверное потому что эти данные идут из plugin profiler.

На всякий случай показываю весь код из двух файлов отвечающих за отображение этих данных..

Код
<?php
/**
 * @package Joomla.Site
 * @subpackage com_users
 * @copyright Copyright (C) 2005 - 2012 Open Source Matters, Inc. All rights reserved.
 * @license GNU General Public License version 2 or later; see LICENSE.txt
 * @since 1.6
 */
defined('_JEXEC') or die;

JLoader::register('JHtmlUsers', JPATH_COMPONENT . '/helpers/html/users.php');
JHtml::register('users.spacer', array('JHtmlUsers', 'spacer'));

$fieldsets = $this->form->getFieldsets();
if (isset($fieldsets['core']))   unset($fieldsets['core']);
if (isset($fieldsets['params'])) unset($fieldsets['params']);

foreach ($fieldsets as $group => $fieldset): // Iterate through the form fieldsets
$fields = $this->form->getFieldset($group);
if (count($fields)):
?>
<fieldset id="users-profile-custom" class="users-profile-custom-<?php echo $group;?>">
<?php if (isset($fieldset->label)):// If the fieldset has a label set, display it as the legend.?>
<legend><span>Contact Info</span></legend>
<?php endif;?>
<dl>
   
<?php foreach ($fields as $field):
if (!$field->hidden) :?>
<dt><?php echo $field->title; ?></dt>
<dd>
<?php if (JHtml::isRegistered('users.'.$field->id)):?>
<?php echo JHtml::_('users.'.$field->id, $field->value);?>
<?php elseif (JHtml::isRegistered('users.'.$field->fieldname)):?>
<?php echo JHtml::_('users.'.$field->fieldname, $field->value);?>
<?php elseif (JHtml::isRegistered('users.'.$field->type)):?>
<?php echo JHtml::_('users.'.$field->type, $field->value);?>
               

<?php else:?>
<?php echo JHtml::_('users.value', $field->value);?>

<?php endif;?>
           
</dd>

<?php endif;?>
<?php endforeach;?>
</dl>
</fieldset>


<?php endif;?>
<?php endforeach;?>


Код
<form>
<fields name="profile">
<fieldset name="profile"
label="PLG_USER_PROFILE_SLIDER_LABEL"
>
<field
name="address1"
type="text"
id="address1"
description="PLG_USER_PROFILE_FIELD_ADDRESS1_DESC"
filter="string"
label="PLG_USER_PROFILE_FIELD_ADDRESS1_LABEL"
message="PLG_USER_PROFILE_FIELD_ADDRESS1_MESSAGE"
size="30"
/>

<field
name="address2"
type="text"
id="address2"
description="PLG_USER_PROFILE_FIELD_ADDRESS2_DESC"
filter="string"
label="PLG_USER_PROFILE_FIELD_ADDRESS2_LABEL"
message="PLG_USER_PROFILE_FIELD_ADDRESS1_MESSAGE"
size="30"
/>

<field
name="city"
type="text"
id="city"
description="PLG_USER_PROFILE_FIELD_CITY_DESC"
filter="string"
label="PLG_USER_PROFILE_FIELD_CITY_LABEL"
message="PLG_USER_PROFILE_FIELD_CITY_MESSAGE"
size="30"
/>


Пробовал делать по разному..

echo $fieldsets->favoritebook;
echo $fields->favoritebook;
echo $fields->favoritebook->value;
echo $favoritebook->value;

не отображает и все... Там наверное нужно писать $myuser = JFactory::getUser();, не myuser, а какой-нибуть fieldset... Только как все это писать не пойму...
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Когда распечатывается <?php print_r (JFactory::getUser()); ?> nOObMeister данные есть ваши здесь?
*

nOObMeister

  • Захожу иногда
  • 126
  • 6 / 0
  • хД)))
Всмысле мои данные?

Все данные естественно давно вбиты в базу данных через profile, если в таблице нету данных, а стоит команда их отобразить. то отображается no data entered вроде..

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

Мне нужно вывести данные, которые находят в User manager - myClient - вкладка user profile, которая становится доступной если открыть встроенный в Joomla плагин profile.
« Последнее редактирование: 24.05.2012, 13:00:12 от nOObMeister »
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Код: php-brief
<?php
$db = JFactory::getDbo();
$db->setQuery(
'SELECT profile_key, profile_value FROM #__user_profiles' .
' WHERE user_id = '.(int) JFactory::getUser()->id." AND profile_key LIKE 'profile.%'" .
' ORDER BY ordering'
);
$results = $db->loadRowList();
$profile = array();
foreach ($results as $v)
{
$k = str_replace('profile.', '', $v[0]);
$profile[$k] = json_decode($v[1], true);
}
//print_r ($profile);
echo $profile[phone];
?>
*

nOObMeister

  • Захожу иногда
  • 126
  • 6 / 0
  • хД)))
Спасибо большое, завтра попробую!

К сожалению сегодня нет времени проверять.
*

shibaevvv

  • Захожу иногда
  • 60
  • 4 / 0
делал так:

Код
jimport( 'joomla.user.helper' );
$userProfile = JUserHelper::getProfile();
ну а дальше:
Код
echo 'Адрес Василия: '.$userProfile->profile[address2].' город: и тд ';
« Последнее редактирование: 24.05.2012, 22:18:15 от shibaevvv »
*

nOObMeister

  • Захожу иногда
  • 126
  • 6 / 0
  • хД)))
Печалька, не сработал ни один из способов..

Пробовал так писать... не работает.  :'(

Код
<?php
jimport( 'joomla.user.helper' );
$userProfile = JUserHelper::getProfile();
echo 'About: '.$userProfile->profile[aboutme].'aboutme';
?>

Ошибок никаких не выдает, но ничего и не отбражает..
« Последнее редактирование: 27.05.2012, 19:08:32 от nOObMeister »
*

Chopivkiy

  • Новичок
  • 3
  • 0 / 0
Добрый день, подскажите как сделать так, что бы подтягивался в форму, отправляемую по почте мобильный телефон зарегистрированного пользователя?
К примеру этот код добавляет имя пользователя. А с телефоном не получается.

//<code>
$myuser = JFactory::getUser();
return $myuser->name;
//</code>

Заранее спасибо.
*

SWoz

  • Захожу иногда
  • 62
  • 0 / 1
Как отобразить данные из профиля пользователя, прямо в шаблоне?

*/joomla/templates/shablon/
В главном файле шаблона index.php

Добавляете в самом начале файла, после

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

следующие строки

jimport( 'joomla.user.helper' );
$userprofile = JUserHelper::getProfile();

дальше выводим нужные данные из массива

<?php echo print_r($userprofile->profile); ?> - вывод всего массива "ключ - значение"

<?php echo $userprofile->profile[aboutme]; ?> - вывод определенного значения (в данном случае "информация о пользователе")

Все стандартные ключи, думаю расшифровывать не надо:
[address1]
[address2]
[city]
[region]
[country]
[postal_code]
[phone]
[website]
[favoritebook]
[aboutme]
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
JFactory::getUser()->id это  ид залогиненного пользователя здесь. Можете заменить нужным вам ид, смотрите в админке
для гостей 0
соответственно запрос ничего не выведет
*

max_1985

  • Давно я тут
  • 611
  • 56 / 0
В профиле пользователя компонента Kunena сделал такой вывод:
Код
<li><?php 
defined( '_JEXEC' ) or die;
jimport( 'joomla.user.helper' );
$userprofile = JUserHelper::getProfile();
echo "<strong>Город: </strong>".$userprofile->profile[city];
echo "<br/>";
?></li>
<li><?php
echo "<strong>Телефон: </strong>".$userprofile->profile[phone];
?></li>
Во всех профилях, которые я просматриваю отображается мой Город и Телефон. Как сделать чтоб отображались данные того пользователя к которому захожу?
*

voland

  • Легенда
  • 11026
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
В профиле пользователя компонента Kunena сделал такой вывод:
Код
<li><?php 
defined( '_JEXEC' ) or die;
jimport( 'joomla.user.helper' );
$userprofile = JUserHelper::getProfile();
echo "<strong>Город: </strong>".$userprofile->profile[city];
echo "<br/>";
?></li>
<li><?php
echo "<strong>Телефон: </strong>".$userprofile->profile[phone];
?></li>
Во всех профилях, которые я просматриваю отображается мой Город и Телефон. Как сделать чтоб отображались данные того пользователя к которому захожу?
Профиль Kunena и профиль движка - совсем разные вещи
*

max_1985

  • Давно я тут
  • 611
  • 56 / 0
Профиль Kunena и профиль движка - совсем разные вещи
Знаю, просто хочу здесь выводить дополнительную информацию. Тут просто надо сделать привязку по ID пользователя, но не пойму как.
*

voland

  • Легенда
  • 11026
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Знаю, просто хочу здесь выводить дополнительную информацию. Тут просто надо сделать привязку по ID пользователя, но не пойму как.
А где именно здесь?
*

max_1985

  • Давно я тут
  • 611
  • 56 / 0
А где именно здесь?
В профиле Kunena. Уже догадался. Спасибо что отозвались! Сделал так:
Код
$userprofile = JUserHelper::getProfile($this->user->id); 
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Вывод информации в личный кабинет пользователя

Автор zndm

Ответов: 17
Просмотров: 7744
Последний ответ 22.09.2022, 18:51:44
от beliyadm
Материалы пользователя (контакта)

Автор katerina37

Ответов: 5
Просмотров: 2300
Последний ответ 18.02.2022, 11:53:02
от katerina37
Руководство пользователя Joomla! 2.5 + 10 легких шагов к освоению Joomla! 3 (книги в pdf)

Автор Marques

Ответов: 68
Просмотров: 234034
Последний ответ 08.01.2021, 13:41:45
от artemnaum
Определение города пользователя по IP

Автор ria_andy

Ответов: 8
Просмотров: 7952
Последний ответ 05.12.2019, 15:20:40
от nikolaevevge
Как вывести данные из stdClass Object в Joomla?

Автор specialist-web

Ответов: 7
Просмотров: 3906
Последний ответ 06.05.2019, 18:24:37
от specialist-web