Новости Joomla

Nevigen Audit JoomShopping 5+Расширение представляет собой большой дашборд для управления...

Nevigen Audit JoomShopping 5+Расширение представляет собой большой дашборд для управления...

Nevigen Audit JoomShopping 5+Расширение представляет собой большой дашборд для управления JoomShopping и работы с его данными. Расширение может:Товары:- отображение списка товаров в удобном информативном виде,- дополненные возможности фильтрации товаров в списке,- возможность быстрого удобного просмотра базовой статистики по товарам.- расширенные возможности поиска по товарам,- возможности анализа базовой подготовки SEO параметров товаров, с возможностью перехода к отфильтрованным товарам с "проблемами"- анализ базовой SEO подготовки товаров проводится по всем установленным для магазина языкам- редактирование товара (в апдейтах)Заказы:- отображать заказы в удобном виде,- обеспечивает широкие дополненные возможности фильтрации,- предоставляет расширенные возможности поиска по полям заказов,- возможность быстрого удобного просмотра базовой статистики по заказам.- планируются дополнительные возможности статистики и анализа продаж. (отдельными расширениями)Клиенты:- отображать список клиентов в удобном виде,- предоставляет расширенные возможности поиска по полям клиентов,- возможность быстрого удобного просмотра базовой статистики по клиентам.- исключена возможность блокировки собственной учетной записи, чтобы не утратить контроль для доступа в админпанель,- добавлено поле заметок для клиента (интегрированы заметки пользователя Joomla), что дает дополнительные возможности для работы разных менеджеров с клиентом.- планируются дополнительные возможности работы с клиентами (отдельными расширениями)Системные требования: JoomShopping 5.5+, PHP 8.1+Вопросы по расширению к участнику нашего сообщества @IhorNVGСтраница расширения#JoomShopping #расширения

Собственные макеты вывода для пользовательских полей JoomlaМы привыкли использовать механизм...

Собственные макеты вывода для пользовательских полей JoomlaМы привыкли использовать механизм...

Собственные макеты вывода для пользовательских полей JoomlaМы привыкли использовать механизм переопределения макетов Joomla: скопируй нужный тебе файл макета в папку html шаблона и твори там что хочешь. Это в полной мере относится и к пользовательским полям Joomla.Joomla ищет макеты рендера всех пользовательских полей в следующем порядке:- Есть ли файл templates/[template name]/html/layouts/[component name]/fields/render.php , переопределяющий макет вывода полей для конкретного компонента? Да - используем его.- Нет? Есть ли файл components/[component name]/layouts/fields/render.php в папке компонента? Да - используем его.- Нет? Есть ли файл templates/[template name]/html/layouts/com_fields/fields/render.php, переопределяющий вывод полей для com_fields? Да - используем его.- Нет? Используем файл components/com_fields/layouts/fields/render.phpЭто механизм поиска переопределений файлов макетов. Вчера столкнулся с тем, что если поле вставлено в текст материала с помощью шорт-кода (кнопкой редактора) вида {field 25}, то переопределения не сработали. Поэтому стал вспоминать как сделать свой макет для поля Joomla. Файл components/com_fields/layouts/field/render.php копируем в templates/YOUR_TEMPLATE/html/layouts/com_fields/field/etapy-raboty-nad-proektom.php. Обратите внимание, что мы файл переименовали, чтобы в настройках поля видеть его в выпадающем списке. После этого всё заработало как надо. Благо, переводил уже раньше статью Как происходит рендер пользовательских полей в Joomla?. Потом, порывшись по своему же переводу увидел, что эта особенность работы Joomla в статье уже в ней описана 😂. А также напомнил себе о возможности указывать макет поля прямо в шорт-коде, через запятую: {field 25,etapy-raboty-nad-proektom}. Правда, если честно, никогда этой возможностью не пользовался. @webtolkru#joomla #php #разработка #webdev

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

romagromov

  • Давно я тут
  • 692
  • 9 / 3
Вывести поля профиля Joomla
« : 08.12.2022, 20:59:14 »
Здравствуйте!
Много лет на Joomla и никогда не работал с нативными com_content ))
Сейчас задача такая: нужно под статьей в шаблоне вывести блок Об авторе,
Там будет имя, краткое описание, ссылки на соцсети и аватар.
Для аватара добавил media поле для профилей Joomla.
Собственно вопрос, как его вывести в шаблоне?
Имя понятно
Код
$user = JFactory::getUser();
echo $user->name;

А поля как выводить?
*

marksetter

  • Завсегдатай
  • 1045
  • 40 / 0
Re: Вывести поля профиля Joomla
« Ответ #1 : 08.12.2022, 21:14:38 »
посмотрите как выводится в профиле юзера
и по аналогии
нейм то цепляет
индивидуальная помощь: @SetAlexx
*

romagromov

  • Давно я тут
  • 692
  • 9 / 3
Re: Вывести поля профиля Joomla
« Ответ #2 : 08.12.2022, 23:17:06 »
посмотрите как выводится в профиле юзера
и по аналогии
нейм то цепляет

Ну name тянется, потому что это существующая колонка в таблице DB - users.
А поля мы создаем вручную. Тут должно быть что-то типа $user->custom_field(id);
Я просто нигде не могу найти документацию.
*

romagromov

  • Давно я тут
  • 692
  • 9 / 3
Re: Вывести поля профиля Joomla
« Ответ #3 : 09.12.2022, 00:04:03 »
Короче, что-то все сложно...
Имя выводим так
Код
$authorid = $item->created_by;
$user = JFactory::getUser($authorid);
echo $user->name;

Из профиля тоже разобрался.
Например, хотим вывести из профиля текст "Обо мне"

Код
$userProfile = JUserHelper::getProfile($authorid);
echo "Обо мне:" . $userProfile->profile['aboutme'];

Дальше, хочу вывести аватар из дополнительных полей профиля. Накопал такой код

Код
JLoader::register('FieldsHelper', JPATH_ADMINISTRATOR . '/components/com_fields/helpers/fields.php');
$customFields = FieldsHelper::getFields('com_users.user', JFactory::getUser($authorid), true);
$customFields[0]->value;

Ничего не выводит...
*

sivers

  • Живу я здесь
  • 2566
  • 351 / 0
Re: Вывести поля профиля Joomla
« Ответ #4 : 09.12.2022, 00:22:53 »
1) вместо JLoader::register('FieldsHelper', JPATH_ADMINISTRATOR . '/components/com_fields/helpers/fields.php');
можно использовать это:
use Joomla\Component\Fields\Administrator\Helper\FieldsHelper;

2) вот здесь:
$customFields = FieldsHelper::getFields('com_users.user', JFactory::getUser($authorid), true);
вторым параметром передавайте объект, а не ИД. Ид будет вытащен из объекта:
$customFields = FieldsHelper::getFields('com_users.user', $user, true);

3) обращаться к элементам массива по индексам - не гуд. после добавления (или удаления) еще одного поля - порядок может поменяться. Лучше собрать массив по ключам:
$keys = array_column($customFields, 'name');
$fields = array_combine($keys, $customFields);
print_r($fields);

Если что-то не заработает - пишите. Писал по памяти без проверки, мог ошибиться в синтаксисе.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

romagromov

  • Давно я тут
  • 692
  • 9 / 3
Re: Вывести поля профиля Joomla
« Ответ #5 : 09.12.2022, 00:25:14 »
Да понятно, что поиндексам не гуд.
Нет даже официальной документации. Я для начала просто хоть как-то получить данные.
Получилось вот так:

Код
JLoader::register('FieldsHelper', JPATH_ADMINISTRATOR . '/components/com_fields/helpers/fields.php');
$customFields = FieldsHelper::getFields('com_users.user', JFactory::getUser($authorid), true);
$avatar = $customFields['0']->rawvalue;
<?php echo $avatar ; ?>

Дальше буду по вашим подсказкам допиливать. Спасибо.

Кстати
Код
use Joomla\Component\Fields\Administrator\Helper\FieldsHelper;

отдает ошибку 0 Class "Joomla\Component\Fields\Administrator\Helper\FieldsHelper" not found
« Последнее редактирование: 09.12.2022, 00:29:02 от romagromov »
*

romagromov

  • Давно я тут
  • 692
  • 9 / 3
Re: Вывести поля профиля Joomla
« Ответ #6 : 09.12.2022, 00:31:53 »
2) вот здесь:
$customFields = FieldsHelper::getFields('com_users.user', JFactory::getUser($authorid), true);
вторым параметром передавайте объект, а не ИД. Ид будет вытащен из объекта:
$customFields = FieldsHelper::getFields('com_users.user', $user, true);


Это если мы смотрим профиль текущего пользователя. А мне нужно вывести блок об авторе, которы написал статью.
Поэтому сначала мы определяем ID автора статьи

Код
$authorid = $item->created_by;
$user = JFactory::getUser($authorid);

а потом уже тянем остальные данные.
*

romagromov

  • Давно я тут
  • 692
  • 9 / 3
Re: Вывести поля профиля Joomla
« Ответ #7 : 09.12.2022, 00:42:20 »
$keys = array_column($customFields, 'name');
$fields = array_combine($keys, $customFields);
print_r($fields);

Вот по этой штуке не совсем понял.
У меня есть поле, у которой name = avatar;
Как мне вывести его value?
Пробовал варианты:
echo $fields->avatar;
echo $fields['avatar']->rawvalue;

Не работает...

PS

Все, есть контакт.
Вот так работает. Получаем адрес изображения. Дальше просто его пихаем в img src
Код
JLoader::register('FieldsHelper', JPATH_ADMINISTRATOR . '/components/com_fields/helpers/fields.php');
$customFields = FieldsHelper::getFields('com_users.user', $user, true);
$cfkeys = array_column($customFields, 'name');
$cfields = array_combine($cfkeys, $customFields);
$avatar=$cfields['avatar']->rawvalue;
« Последнее редактирование: 09.12.2022, 00:54:53 от romagromov »
*

sivers

  • Живу я здесь
  • 2566
  • 351 / 0
Re: Вывести поля профиля Joomla
« Ответ #8 : 09.12.2022, 08:40:15 »
отдает ошибку 0 Class "Joomla\Component\Fields\Administrator\Helper\FieldsHelper" not found
это для 4-й Joomla работает. не глянул на ветку.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

sivers

  • Живу я здесь
  • 2566
  • 351 / 0
Re: Вывести поля профиля Joomla
« Ответ #9 : 09.12.2022, 08:43:08 »
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Проблема со входом в панель администратора Joomla 3.x после обновления

Автор danieeljose

Ответов: 1
Просмотров: 206
Последний ответ 13.02.2025, 13:23:16
от sivers
Максимальная версия PHP для Joomla 3

Автор Dram

Ответов: 5
Просмотров: 1207
Последний ответ 24.01.2025, 18:09:39
от wishlight
[Решено] Вывод значений из custom fields материала в модуле по имени поля

Автор goga_pgasovav

Ответов: 3
Просмотров: 539
Последний ответ 30.12.2024, 13:22:11
от goga_pgasovav
Обновление Joomla 3.10 до 4

Автор Scaltro

Ответов: 0
Просмотров: 685
Последний ответ 19.09.2024, 18:32:39
от Scaltro
How To Get URLs Of My Joomla Store

Автор jarethdf

Ответов: 1
Просмотров: 708
Последний ответ 22.08.2024, 14:48:44
от sivers