Новости Joomla

Как тестировать Joomla PHP-разработчику? Компонент Patch tester.

👩‍💻 Как тестировать Joomla PHP-разработчику? Компонент Patch tester.Joomla - open source PHP-фреймворк с готовой админкой. Его основная разработка ведётся на GitHub. Для того, чтобы международному сообществу разработчиков было удобнее тестировать Pull Requests был создан компонент Patch Tester, который позволяет "накатить" на текущую установку Joomla именно те изменения, которые необходимо протестировать. На стороне инфраструктуры Joomla для каждого PR собираются готовые пакеты, в которых находится ядро + предложенные изменения. В каждом PR обычно находятся инструкции по тестированию: куда зайти, что нажать, ожидаемый результат. Тестировщики могут предположить дополнительные сценарии, исходя из своего опыта и найти баги, о которых сообщить разработчику. Или не найти, и тогда улучшение или исправление ошибки быстрее войдёт в ядро Joomla. Напомню, что для того, чтобы PR вошёл в ядро Joomla нужны минимум 2 положительных теста от 2 участников сообщества, кроме автора. Видео на YouTubeВидео на VK ВидеоВидео на RuTubeКомпонент на GitHub https://github.com/joomla-extensions/patchtester@joomlafeed#joomla #php #webdev #community

Вышел релиз Revo PageBuilder Toolkit for YOOtheme Pro 1.6

Вышел релиз Revo PageBuilder Toolkit for YOOtheme Pro 1.6.2PageBuilder Toolkit - это специализированный плагин для конструктора страниц Yootheme Pro, содержит набор различных утилит для ускорения процесса работы и отладки макета, множественные улучшения в интерфейсе, включая поддержку dark mode, подсказки, быстрая смена разрешения в окне просмотра и много чего еще.v.1.6.2 Что нового?- Индикатор статусов: теперь не просто показывает состояние запросов, но и делает автоматические попытки их отправки при кратковременных сбоях в сети, а если это не помогло, то переводит конструктор в ручной режим, что позволяет сохранит макет и настройки темы прежде чем вы потеряете все, что было сделано с момента последнего сохранения- Подсветка ошибок в макете: плагин анализирует код страницы и может автоматически подсвечивать data атрибуты с кучей мусора, которые попадают в код страницы при копипасте из Figma в TinyMCE (пригодится для старых макетов, в текущей работе плагин сам очищает код мусора). Также есть подсветка семантических ошибок сборки - дубли h1 тега на странице и вложенных друг в друга заголовков.- Улучшена поддержка будущего релиза Yootheme Pro 5 и редактора CodeMirror 6Плагин для русскоязычных пользователей доступен в каталоге расширений SovMart и распространяется за символическую плату (100р). Разработчики Joomla расширений и партнеры автора могут получить плагин бесплатно.Для работы плагина необходим конструктор страниц Yootheme Pro.Разработчик плагина - участник нашего сообщества Александр Судьбинов (@alexrevo), член официальной группы поддержки Yootheme Pro. Страница расширенияОписание на сайте автора@joomlafeed#joomla #yootheme

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

sherza

  • Захожу иногда
  • 226
  • 90 / 1
Несколько лет назад я написала плагин hkm_profile, позволяющий генерировать поля расширенного профиля cms Joomla. Сейчас хочу поделиться с вами его развитием - zygo_profile. Точнее, уже тремя расширениями.



ОПИСАНИЕ И СКРИНШОТЫ:
Более подробное описание со ссылками на скачивание расширений находится здесь:
http://www.psytronica.ru/2015/10/joomla-3x-zygoprofile-hkmprofile.html

В двух словах: пользователь получает возможность заполнить в своем профиле при регистрации/правке профиля дополнительные поля расширенного профиля (например: загрузить аватар, добавить личную подпись, выбрать день рождения, свой пол из выпадающего списка.... Состав полей не является определенным, пользователь создает его сам, как конструктор). Данные поля настраиваются в админ-панели плагина Zygo Profile - определяется их состав, тип, названия, required и прочие свойства. Поля могут быть разных типов: текстовые, списки, радиокнопки, аватар, дата.  Затем при помощи плагина  Zygo Profile Content можно вывести информацию из этих полей в материалы Joomla (отобразить аватар блоггера, вывести его подпись).

Ссылки на GitHub:  

Zygo Profile - Плагин расширенного профиля пользователя:
GitHub: https://github.com/psytronica/zygoprofile

Ветка "Development" : https://github.com/psytronica/zygoprofile/tree/development

Zygo Profile Content - Плагин вывода полей расширенного профиля в материалы Joomla
GitHub: https://github.com/psytronica/plg_content_zygo_profile

Zygo Online - Модуль "кто на сайте" с выводом аватаров пользователей из расширенного профиля
GitHub: https://github.com/psytronica/mod_zygo_online

Zygo Jcomments - Плагин для отображения аватара из Zygo Profile в jComments (автор docenttmp):
GitHub: https://github.com/docenttmp/plg_jcomments_zygo_avatar
docenttmp также сделал возможность отображения online/offline в комментариях. Инструкции в настройках плагина

Zygo Kunena Avatars - Плагин для отображения аватара из Zygo Profile в форуме Kunena
GitHub: https://github.com/psytronica/Zygo-Kunena-Avatars

ДЕМО-ПЕСОЧНИЦА:

http://psytronica.getenjoyment.net/
Весь дополнительный функционал - аватары, любимые цвета, выводится посредством плагина Zygo Profile Content
Место вывода полей, количество, и т.д. настраивается в админ-панели плагина

Плагин Zygo Profile  содержит API, позволяющий выводит информацию расширенных полей пользователей (напр. аватары, дни рождения и т.д.) в произвольном месте и использоваться для интеграций с другими расширениями

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

Буду рада вашим вопросам, советам по улучшению приложения и конструктивной критике
*

fandjuml

  • Захожу иногда
  • 59
  • 6 / 3
fandjuml, интеграция с slogin уже есть: https://github.com/psytronica/ZygoProfile-Slogin-Integration. Позволяет брать данные для расширенного профиля (аватар, день рождения и т.д.) из данных slogin, полученных из соц сетей при регистрации через slogin
Спасибо вам большое! Я в курсе - самый первый взял)))  (я вам анонимом с кофе три голову марочил и надоедал - Вы уж извините).
Интересно, с куненой связать не планируете или вам это не интересно?
Я тут малость "губу раскатал":
Было бы супер, если бы через ваш компонент при регистрации данные в Kunena улетали (сайт, аватар, социалки и прочие поля). Хотя понимаю - зачем оно вам нужно. Поэтому губу закатываю обратно.
*

sherza

  • Захожу иногда
  • 226
  • 90 / 1
fandjuml, правильно делали, что писали. Есть вопросы - надо решать). Насчет Kunena - интересно, да только времени сейчас маловато - в последнее время я почти все время в разъездах. Может, однажды и до Kunena доберусь)
*

Olg

  • Завсегдатай
  • 1183
  • 91 / 2
Спасибо за нужный плагин.
Наглый вопрос: есть ли способ для типа поля "Список выбора" загнать одним чохом большой список (конкретно -- список всех стран мира; по одной стране загонять уж больно страшно и ошибок наделаешь)?
*

sherza

  • Захожу иногда
  • 226
  • 90 / 1
Olg, к сожалению, никакого механизма на этот счет я не предусмотрела, поэтому проще сделать следующим образом:

1) Если у вас установлен phpMyAdmin, то в таблице #__extensions находите строку с name="plg_user_zygo_profile"  и в поле "params" находите для данного поля  fieldOptions_value и fieldOptions_text. В квадратных скобках в кавычках в fieldOptions_value указываете value select-списков, в fieldOptions_text - аналогично указываете текст опций (ваши города)
пример:
Код
["fieldOptions_value":{"2":["red","orange","yellow"]},"fieldOptions_text":{"2":["красный","оранжевый","желтый"]}

2) Если нет возможности воспользоваться phpMyAdmin (или это вызывает сложности), я подготовлю для вас простой php-скрипт


P.S: fandjuml, ваш вопрос про перенос аватаров еще актуален? Видимо, вы удалили этот комментарий на сайте, теперь он, по крайней мере, не отображается
*

Olg

  • Завсегдатай
  • 1183
  • 91 / 2
Спасибо за быстрый ответ. Как делать понятно. Но если такой функционал будет прямо в настройках плагина -- это просто "сбыча мечт".
Теперь о грустном. Установлена J 3.5.1, Kunena 4. Хотел использовать ваш плагин для формы регистрации, но при его активации на странице регистрации -- белый экран (независимо от того, влючён ли при этом родной плагин профиля пользователя или нет) и красуется сообщение:
Parse error: syntax error, unexpected '[' in /home/.../public_html/plugins/user/zygo_profile/zygo_profile.php on line 400
Чем это может быть вызвано и как это лечить?
*

sherza

  • Захожу иногда
  • 226
  • 90 / 1
Видимо, на хостинге php 5.3 или ниже + какая-то настройка, гадать не буду.
Внесла маленькое изменение в код плагина:
Пожалуйста, сообщите мне, решится ли проблема, когда установите
https://github.com/psytronica/zygoprofile/archive/master.zip
(При желании можно обновить только zygo_profile.php)
*

Olg

  • Завсегдатай
  • 1183
  • 91 / 2
Добрый вечер. Прекрасно! После замены файла работает.
С версией PHP наблюдаю комедию: в личном кабинете timeweb для сайта сам устанавливал 5.4 (был выбор: 5.4 или 5.3), а системной информации Joomla! показывается 5.3.29. Дурят нашего брата...
*

Olg

  • Завсегдатай
  • 1183
  • 91 / 2
Продолжаются странности. Попытка сделать select просто из двух пунктов окончилась на данный момент неудачей:
на картинке settings.PNG -- настройки поля, на картинке frontend.PNG -- то, что получается. А получается совсем не так, как у вас на сайте: вместо select создаётся input. Может я неправильно поле настроил?
« Последнее редактирование: 03.06.2016, 12:26:29 от Olg »
*

sherza

  • Захожу иногда
  • 226
  • 90 / 1
Olg, дело в том, что плагин использует стандартные типы полей Joomla. В более ранних версиях данное поле отображалось как select, теперь отображается как input+datalist (html5!)
*

Olg

  • Завсегдатай
  • 1183
  • 91 / 2
И как это победить?
*

Olg

  • Завсегдатай
  • 1183
  • 91 / 2
Если поставить поверх, то настройки, сделанные в предыдущей версии, слетят?
*

Olg

  • Завсегдатай
  • 1183
  • 91 / 2
Работает и ничего не слетело...
Большое спасибо.
*

fandjuml

  • Захожу иногда
  • 59
  • 6 / 3
fandjuml, ваш вопрос про перенос аватаров еще актуален? Видимо, вы удалили этот комментарий на сайте, теперь он, по крайней мере, не отображается
А я думал это Вы удалили коммент... - он сначала отображался, но на следующий день зайдя за вашим советом, я его больше не видел - подумал что коммент не прошёл модерацию...
По вашему рецепту я интегрировал Аватары в JComments, работает отлично. Но вопрос с переносом аватаров из Slogina в ZygoProfile я так и не решил. Папки с ID создал, по две картинки с новыми именами и с соответствующими размерами добавил + пустую заглушку (index.html) - аватары в комментах не отобразились. Вот мысль пришла, что наверно где то в БД для Zygo нужно добавить пользователей, но в этом направлении я ещё не рыл, думал Вы подскажите.
*

sherza

  • Захожу иногда
  • 226
  • 90 / 1
fandjuml, я обычно чужие комментарии без нужды не удаляю :). Приношу извинения за неудобство, если вдруг еще раз наткнетесь на подобный глюк blogspot, дублируйте вопрос в эту тему

Что касается аватаров - они прописываются в таблицу #__user_profiles, где     
profile_key=zygo_profile.uniqueID_x_
profile_value=_Ссылка_на_аватар_\n

где _x_ - ID поля аватара. Его можно найти в редактировании полей плагина (Название поля, ID = _x_)
_Ссылка_на_аватар_ - берется относительно корня, напр: media/plg_zygo_profile/556/thumb1110094194.jpg. Сами файлы аватара могут лежать не обязательно в media/plg_zygo_profile
\n - перевод строки

Если у вас очень много пользователей и руками это сделать сложно, я могу придумать для вас скрипт заполнения этой таблицы
*

fandjuml

  • Захожу иногда
  • 59
  • 6 / 3
fandjuml, если у вас очень много пользователей и руками это сделать сложно, я могу придумать для вас скрипт заполнения этой таблицы
Спасибо - получилось! Я руками быстро справился - аватары с папками по ID у меня уже были готовы, поэтому заполнение таблицы сложностей не вызвало.
Версия PHP - 7.0.7; Joomla! 3.5.1. Использую интеграцию со слогином + аватарю jcomments.
 Работает как часики! СПАСИБО!
*

voland

  • Легенда
  • 11026
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Офигеннский плагинище.
Спасибо за разработку

Наглость, конечно, но до полного счастья не хватает интеграции с Куненой и вывода полей в таблице пользователей в админке (еще б с возможностью сортировать и фильтровать)...
*

sherza

  • Захожу иногда
  • 226
  • 90 / 1
voland, спасибо за отзыв!

Насчет интеграции с Kunena - ко мне уже много раз поступали такие просьбы, но смогу заняться не раньше осени.

Насчет вывода полей в таблице пользователей в админке (еще б с возможностью сортировать и фильтровать) - идея хорошая, конечно, но задачка не вполне тривиальная (особенно, что касается сортировки и фильтрации) - я имею в виду,  с минимальным вмешательством, не подменяя выборки com_users/models/users.php полностью на свои и не внося другие кардинальные изменения, дабы не нарушить работу чужих возможных плагинов и не наткнуться на несовместимость при очередном апгрейде Joomla. Если у Вас есть мысли, как это лучше реализовать, готова обсудить :)

Офигеннский плагинище.
Спасибо за разработку

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

P.S:  В связи с моим отъездом до конца лета отвечать в теме буду редко. Кому не отвечу летом - отвечу осенью. Спасибо за понимание.
*

T34

  • Новичок
  • 9
  • 1 / 0
Доброго дня!

Дорогая Зья, спасибо за замечательный плагин!

Дорогие знатоки, помогите простым решением. Сам я в PHP ни в зуб ногой, а решение нужно срочно. Как вывести из "#___users-profiles" значение записанного туда этим чудесным плагином заданного поля, по аналогии с вот таким выводом данных из поля "#____users"?

Код: php
<?php
$user = &JFactory::getUser();
?>

<div>
  <input name="skype" type="hidden" value="<?= $user->skype; ?>" title="" class="kakoy-to_class" id="skype" />
</div>

В описании плагина есть какие-то намёки для грамотных людей, но я их понять не способен по своей дремучести. Всю голову сломал уже.  :(
« Последнее редактирование: 21.07.2016, 08:53:54 от T34 »
*

sherza

  • Захожу иногда
  • 226
  • 90 / 1
T34, спасибо за отзыв!

Можно сделать так:
Код
<?php
$user = JFactory::getUser();

include_once (JPATH_ROOT."/plugins/user/zygo_profile/zygo_helper.php");

// ID поля. На вкладке "Плагин" в настройках плагина для каждого поля после
// строки "Название поля" указан его ID
$fid = 1;

// Значение определенного поля в том виде, в котором оно хранится в базе данных
$field = ZygoHelper::getFieldData($fid, $user->id);

// Если тип поля в настройках плагина выбран "Текстовое поле", можно в нужном месте сделать echo $field;
?>
 
<div>
  <input name="skype" type="hidden" value="<?php echo $field; ?>" title="" class="kakoy-to_class" id="skype" />
</div>

*

T34

  • Новичок
  • 9
  • 1 / 0
Низкий Вам поклонище, дорогая Зья!  Оно заработало! :D

А вытянуть подобным образом из "#____user-profiles" те значения, которые туда вписаны стандартным профилем Joomla! и в нём же отображены — это возможно?
*

T34

  • Новичок
  • 9
  • 1 / 0
Дорогая Зья, объясните чайнику, пожалуйста, какую переменную тут выводить? Потому что я наитием попробовал вот так извернуться:

Код: php
<?php
$user = JFactory::getUser();

include_once (JPATH_ROOT."/plugins/user/zygo_profile/zygo_helper.php");

$uinfo = ZygoHelper::getUserInfo($user->id);
echo str_replace('"', "", $uinfo["profile.skype"]);

echo $uinfo;
?>

— получилась ахинея чудовищная.  :'(
*

sherza

  • Захожу иногда
  • 226
  • 90 / 1
Смотрите, все просто:
1) получаете объект, содержащий все переменные профилей для конкретного пользователя
Код: php
$uinfo = ZygoHelper::getUserInfo($user->id);

2) Получаете конкретную переменную, содержащую значение конкретного поля (расписываю подробно):
Код: php
$fieldname = "skype";
$field_value = str_replace('"', "", $uinfo["profile.".$fieldname]);

3) Выводите значение этой переменной в том месте, где вам надо:

Код: php
echo $field_value;
*

T34

  • Новичок
  • 9
  • 1 / 0
Спасибо большое, теперь понятно! Получился такой скрипт:

Код: php
<?php
$user = JFactory::getUser();
 
include_once (JPATH_ROOT."/plugins/user/zygo_profile/zygo_helper.php");
 
$uinfo = ZygoHelper::getUserInfo($user->id);

$fieldname = "city";

$field_value = str_replace('"', "", $uinfo["profile.".$fieldname]);

echo $field_value;
?>

И всё в нём хорошо, за исключением вывода результата кракозябрами: \u041c\u043e\u0441\u043a\u0432\u0430
Дорогая Зья, это как-то можно вылечить до нормального кириллического вида?
*

T34

  • Новичок
  • 9
  • 1 / 0
Спасибо за идею! Попробовал напрячь старика Джейсона:

Код: php
<?php
$user = JFactory::getUser();
 
include_once (JPATH_ROOT."/plugins/user/zygo_profile/zygo_helper.php");
 
$uinfo = ZygoHelper::getUserInfo($user->id);

$fieldname = "city";

$field_value = str_replace('"', "", $uinfo["profile.".$fieldname]);

echo json_decode($field_value);
?>

Кракозябры не появляются. Вообще ничего не появляется. :(
*

sherza

  • Захожу иногда
  • 226
  • 90 / 1
b2z, благодарю за участие

Маленькое уточнение (убираем str_replace, если делаем json_decode):
Код: php
<?php
$user = JFactory::getUser();
 
include_once (JPATH_ROOT."/plugins/user/zygo_profile/zygo_helper.php");
 
$uinfo = ZygoHelper::getUserInfo($user->id);
 
$fieldname = "city";
 
$field_value = json_decode($uinfo["profile.".$fieldname]);
 
echo $field_value;
?>
*

T34

  • Новичок
  • 9
  • 1 / 0
Вот это совсем другое дело!  :D

Дорогая Зелёная Зья, Вы просто волшебница какая-то! Я весь интернет облазил, читая по-английски, по-итальянски и даже через Гугл-колоду по-немецки тяжкие стенания граждан, влекомых желанием хоть что-то вытащить из злосчастной "#________user-profiles" таблички. И ни у кого не получилось.

А у Вас РРРРАЗ — и получилось! Легко и элегантно.

Снимаю шляпу и раскланиваюсь, шурша её перьями по паркету.  ^-^
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

JL Like - Социальные кнопки для Joomla (новый взгляд)

Автор zikkuratvk

Ответов: 638
Просмотров: 109889
Последний ответ 24.12.2025, 15:58:50
от wishlight
А-ля корзина для материалов Joomla

Автор Efanych

Ответов: 152
Просмотров: 21744
Последний ответ 23.12.2025, 18:15:39
от zikkuratvk
WT Amo CRM library - простая PHP библиотека для Joomla 4+ (для разработчиков)

Автор sergeytolkachyov

Ответов: 3
Просмотров: 3926
Последний ответ 29.11.2025, 10:56:40
от sergeytolkachyov
SW JProjects - Менеджер цифровых проектов для Joomla! CMS™

Автор Septdir

Ответов: 61
Просмотров: 18666
Последний ответ 19.11.2025, 09:49:12
от sergeytolkachyov
SM FAQ - компонент Вопрос-Ответ для Joomla 2.5+

Автор SmokerMan

Ответов: 682
Просмотров: 157304
Последний ответ 11.10.2025, 12:43:44
от wishlight