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

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, позволяющий выводит информацию расширенных полей пользователей (напр. аватары, дни рождения и т.д.) в произвольном месте и использоваться для интеграций с другими расширениями

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

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

voland

  • Легенда
  • 10462
  • 558 / 111
  • Эта строка съедает место на вашем мониторе
Сейчас, в связи с выходом Joomla 3.7 плагин теряет свою актуальность, т.к. почти весь функционал (кроме поля аватаров) поддерживается в 3.7. В связи с этим у меня большие сомнения - стоит ли дальше поддерживать плагин
Думаю, что стоит, хотя я особо не вникал что там в 3.7 такого появилось, но не думаю что там всё также удобно и продумано ))
Сейчас сайт, над которым работаю - версией помладше.
Другой сайт, где плагин внедрен - там доработки в Kunena для связи с ним, переписывать всё это под сырые поля 3.7 - не.. нафиг..
*

voland

  • Легенда
  • 10462
  • 558 / 111
  • Эта строка съедает место на вашем мониторе
В таком случае, можно поступить следующим образом:
В список добавить следующие значения:
1) пусто
2) ИП
3) ООО
Вариант... но не совсем..
В таком случае надо будет потом запрещать выбирать "пусто"
*

sherza

  • Захожу иногда
  • 226
  • 90 / 1
Да, пожалуй, вы правы - в вашей ситуации это не есть хорошо. Мы раньше не сталкивались с такой задачей - запрет выбора значения по умолчанию. Давайте так поступим - я сейчас в отъезде, вы мне напишите примерно через месяц на почту и я вам вышлю апдейт, хорошо?

irina собака psytronica точка ру

P.S: уважаемые пользователи, в ближайший месяц в связи с моим отъездом я буду редко заходить на форум, поэтому заранее прошу прощения, если ваши вопросы будут подолгу оставаться без ответов
*

voland

  • Легенда
  • 10462
  • 558 / 111
  • Эта строка съедает место на вашем мониторе
Да, пожалуй, вы правы - в вашей ситуации это не есть хорошо. Мы раньше не сталкивались с такой задачей - запрет выбора значения по умолчанию. Давайте так поступим - я сейчас в отъезде, вы мне напишите примерно через месяц на почту и я вам вышлю апдейт, хорошо?

irina собака psytronica точка ру

P.S: уважаемые пользователи, в ближайший месяц в связи с моим отъездом я буду редко заходить на форум, поэтому заранее прошу прощения, если ваши вопросы будут подолгу оставаться без ответов
Месяц.. Да я за часик сам сделаю и выложу доработку ))
При условии что Вы согласны с моей логикой конечно, тогда это можно будет внедрить.

Иначе придется форкать :-( (не публично конечно, просто под проект, но тем не менее)
*

sherza

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

voland

  • Легенда
  • 10462
  • 558 / 111
  • Эта строка съедает место на вашем мониторе
voland, я только за) Если сделаете - я пробегусь глазами по коду и вполне можно внедрить.
Насчет остального - можете публично форкать, можете доработать и продавать от своего имени - я не против))
Спасибо, но целиком я такое не потяну, лучше задонейтю если деньги будут )
*

sherza

  • Захожу иногда
  • 226
  • 90 / 1
*

voland

  • Легенда
  • 10462
  • 558 / 111
  • Эта строка съедает место на вашем мониторе
zygo_profile.php
строка 506
Код: php
					if (!($fieldDefaultValue)) $html .= '<option> </option>'   ;
ну и чуть выше где вариант с массив аналогично.

Вот только я не пойму, по идее говорят на stackoverflow что надо примерно так
Код: php
if (!($fieldDefaultValue)) $html .= '<option  disabled hidden selected="selected" value>- Выберите значение -</option>'   ;
Но в этом случае где-то какая-то ошибка - поля пропадают совсем.
*

AlekVolsk

  • Гуру
  • 6774
  • 395 / 4
у option обязательно должен быть value. хотя бы пустой, disabled и selected - взаимоисключающие атрибуты
*

sherza

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

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

denxio

  • Захожу иногда
  • 147
  • 4 / 0
Здравствуйте!
Можно ли отключать вывод аватар на определенных страницах или в определенных пунктах меню сайта? К примеру, есть раздел со статьями пользователей, где аватары как раз кстати. А есть разделы, где статьям аватара не нужна.
Продаю корм для собак и кошек. Форумчанам — существенная скидка.
*

denxio

  • Захожу иногда
  • 147
  • 4 / 0
denxio, на данный момент такого функционала нет. Если хотите, я вам подскажу, что добавить в плагин, чтобы получить желаемый результат
Если вас это не затруднит, и если я осилю информацию ;)
Продаю корм для собак и кошек. Форумчанам — существенная скидка.
*

sherza

  • Захожу иногда
  • 226
  • 90 / 1
denxio, насколько я понимаю, ваш вопрос относился к плагину Zygo Profile Content.
Необходимо внести несколько правок в файл plugins/content/zygo_profile/zygo_profile.php

Цитировать
Можно ли отключать вывод аватар на определенных страницах или в определенных пунктах меню сайта? К примеру, есть раздел со статьями пользователей, где аватары как раз кстати. А есть разделы, где статьям аватара не нужна.

1) Отключение вывода аватара в определенных пунктах меню:

На строку 38 после строк

Код
    public function __construct(& $subject, $config)
    {

добавляем строки вида

Код
    	$app = JFactory::getApplication();
    $itemid = $app->input->get('Itemid');
       

Затем, в зависимости от того, что вам нужно, добавляете следующее:

1. Пусть необходимо вывести аватары в только пункте меню с id 9

Код
if($itemid!=9) return;

2. Пусть необходимо вывести аватары во всех пунктах меню, кроме 9

Код
if($itemid==9) return;

2. Пусть необходимо вывести аватары в пунктах меню 101, 102, 103

Код
if(!in_array($itemid , array(101, 102, 103))) return;

3. Во всех пукнтах, кроме 104, 105, 106, 107

Код
if(in_array($itemid , array(104, 105, 106, 107))) return;


2) Отключение вывода аватара на определенных страницах:

Допустим, необходимо отключить на странице категории с id=9

Аналогично предыдущему пункту после строк

Код
    	$app = JFactory::getApplication();
    $itemid = $app->input->get('Itemid');

Добавляем следующее:

Код
 $option = $app->input->get('option');
$view = $app->input->get('view');
$id = $app->input->get('id');

if($option=="com_content" && $view =="category" && $id==9) return;


3) Отключение вывода аватара для материалов определенной категории:

Пусть необходимо отключить аватары для материалов, находящихся в категории с id=9

Примерно на строке 66 после строк

Код
		if(strpos($context, 'com_content.')!==0 || empty($this->zygocontent)){
return true;
}

добавляем строку

Код
if($article->catid==9) return; 

Если необходимо отключить для материалов нескольких категорий, делаем по аналогии:

Код
if(in_array($article->catid, array(9, 8, 7))) return;

Пишите, если возникнут трудности. Удачи!
*

denxio

  • Захожу иногда
  • 147
  • 4 / 0
Спасибо! Все работает :)
Продаю корм для собак и кошек. Форумчанам — существенная скидка.
*

Siyanko

  • Новичок
  • 2
  • 0 / 0
Интересный плагин, хотелось бы по пробовать. Но, когда запускаю в менеджере плагинов Расширенный профиль, выдает ошибку - Cannot use string offset as an array
Перевод "Нельзя использовать смещение строки в виде массива"
Что может быть не так?
*

murzuk

  • Захожу иногда
  • 77
  • 0 / 0
Потрясающий плагин! Очень нужна интеграция с модулем контакты. Дублирование аватара в ячейку image и вывод остальных полей. Для того, чтобы при редактировании пользователем в своём профиле, всё отображалось в контактах. !
« Последнее редактирование: 31.03.2018, 15:18:59 от murzuk »
*

Zhenya199292

  • Новичок
  • 1
  • 0 / 0
Именно тут:https://barlinek-profi.com.ua/
*

murzuk

  • Захожу иногда
  • 77
  • 0 / 0
Добрый день! Очень нужна помощь! Мне надо вывести аватар пользователя в списке Контактов, выполняющего роль списка блогеров. Вставляю в место вывода фото контакта код:
Код
include_once (JPATH_ROOT."/plugins/user/zygo_profile/zygo_helper.php");
 
$avatar_links = ZygoHelper::getAvatar($user->id); ?>      <img src="<?php echo $avatar_links->link; ?>">
выходит только изображение noavatar, если ставлю не link, а linkLarge, то ссылка на аватар вообще не формируется.
« Последнее редактирование: 15.05.2018, 12:19:10 от murzuk »
*

murzuk

  • Захожу иногда
  • 77
  • 0 / 0
Например часть файла default.php из ком_контакты:
Код
<?php
/**
 * @package     Joomla.Site
 * @subpackage  com_contact
 *
 * [member=126442]copyright[/member]   Copyright (C) 2005 - 2018 Open Source Matters, Inc. All rights reserved.
 * @license     GNU General Public License version 2 or later; see LICENSE.txt
 */

defined('_JEXEC') or die;

jimport('joomla.html.html.bootstrap');

$cparams = JComponentHelper::getParams('com_media');
$tparams = $this->item->params;

?>

<div class="contact<?php echo $this->pageclass_sfx; ?>" itemscope itemtype="https://schema.org/Person">
<?php if ($tparams->get('show_page_heading')) : ?>
<h1>
<?php echo $this->escape($tparams->get('page_heading')); ?>
</h1>
<?php endif; ?>

<?php if ($this->contact->name && $tparams->get('show_name')) : ?>
<div class="page-header">
<h2>
<?php if ($this->item->published == 0) : ?>
<span class="label label-warning"><?php echo JText::_('JUNPUBLISHED'); ?></span>
<?php endif; ?>
<span class="contact-name" itemprop="name"><?php echo $this->contact->name; ?></span>
</h2>
</div>
<?php endif; ?>

<?php $show_contact_category = $tparams->get('show_contact_category'); ?>

<?php if ($show_contact_category === 'show_no_link') : ?>
<h3>
<span class="contact-category"><?php echo $this->contact->category_title; ?></span>
</h3>
<?php elseif ($show_contact_category === 'show_with_link') : ?>
<?php $contactLink = ContactHelperRoute::getCategoryRoute($this->contact->catid); ?>
<h3>
<span class="contact-category"><a href="<?php echo $contactLink; ?>">
<?php echo $this->escape($this->contact->category_title); ?></a>
</span>
</h3>
<?php endif; ?>

<?php echo $this->item->event->afterDisplayTitle; ?>

<?php if ($tparams->get('show_contact_list') && count($this->contacts) > 1) : ?>
<form action="#" method="get" name="selectForm" id="selectForm">
<label for="select_contact"><?php echo JText::_('COM_CONTACT_SELECT_CONTACT'); ?></label>
<?php echo JHtml::_('select.genericlist', $this->contacts, 'select_contact', 'class="inputbox" onchange="document.location.href = this.value"', 'link', 'name', $this->contact->link); ?>
</form>
<?php endif; ?>

<?php if ($tparams->get('show_tags', 1) && !empty($this->item->tags->itemTags)) : ?>
<?php $this->item->tagLayout = new JLayoutFile('joomla.content.tags'); ?>
<?php echo $this->item->tagLayout->render($this->item->tags->itemTags); ?>
<?php endif; ?>

<?php echo $this->item->event->beforeDisplayContent; ?>

<?php $presentation_style = $tparams->get('presentation_style'); ?>
<?php $accordionStarted = false; ?>
<?php $tabSetStarted = false; ?>

<?php if ($this->params->get('show_info', 1)) : ?>
<?php if ($presentation_style === 'sliders') : ?>
<?php echo JHtml::_('bootstrap.startAccordion', 'slide-contact', array('active' => 'basic-details')); ?>
<?php $accordionStarted = true; ?>
<?php echo JHtml::_('bootstrap.addSlide', 'slide-contact', JText::_('COM_CONTACT_DETAILS'), 'basic-details'); ?>
<?php elseif ($presentation_style === 'tabs') : ?>
<?php echo JHtml::_('bootstrap.startTabSet', 'myTab', array('active' => 'basic-details')); ?>
<?php $tabSetStarted = true; ?>
<?php echo JHtml::_('bootstrap.addTab', 'myTab', 'basic-details', JText::_('COM_CONTACT_DETAILS')); ?>
<?php elseif ($presentation_style === 'plain') : ?>
<?php echo '<h3>' . JText::_('COM_CONTACT_DETAILS'). '</h3>'; ?>
<?php endif; ?>

<?php if ($this->contact->image && $tparams->get('show_image')) : ?>
<div class="thumbnail pull-right">
<?php
 
include_once (JPATH_ROOT."/plugins/user/zygo_profile/zygo_helper.php");
 
$avatar_links = ZygoHelper::getAvatar($user->id); ?>
<img src="<?php echo $avatar_links->link; ?>">

</div>
<?php endif; ?>

<?php if ($this->contact->con_position && $tparams->get('show_position')) : ?>
*

Maffo

  • Захожу иногда
  • 77
  • 0 / 0
Привет. Такая проблема, если название поля пишу по русски "Аватар", то аватар не отображается и выводится ошибка

Код
"FIELD_ATTRIBUTES_PROBLEM 'Аватар'

Если название поля по английски, то ошибки нет, но аватар все равно не отображается ни в админке ни на сайте.

Хотя сам аватар успешно загружается  в указанную папку, но не удаляется, пишут типо удален, но не фига . Если заменять, -то заменяется. Joomla 3.8.11

А вот если сначала название указать на английском, а потом на руссский переименовать, то ошибки нет, но все равно не отображает аватар :'(

Help >:(
« Последнее редактирование: 17.08.2018, 12:14:09 от Maffo »
*

Olegator

  • Новичок
  • 6
  • 0 / 0
Интересный плагин, хотелось бы по пробовать. Но, когда запускаю в менеджере плагинов Расширенный профиль, выдает ошибку - Cannot use string offset as an array
Перевод "Нельзя использовать смещение строки в виде массива"
Что может быть не так?
Тоже столкнулся с такой ошибкой. Не работает в PHP 7.2. Создал описание в трекере проекта - https://github.com/psytronica/zygoprofile/issues/1 И исправление кода - https://github.com/psytronica/zygoprofile/pull/2/commits/eaddf9ea7fb2ae3fdcdc4058cc54a1579d7ec6b5
*

limon142

  • Захожу иногда
  • 71
  • 1 / 0
Всем доброго времени суток. Как избавиться от проблемки, а именно, когда пользователь заходит в «изменить профиль»  но не меняя аватарку по умолчанию нажимает сохранить в компоненте JComments перестает отображаться эта аватарка по умолчанию т.е. код был такой:

Код
<div class="comment-avatar"><img src="https://сайт.ru/images/avatar/resize.jpg" alt="user1"></div>

а становится такой: 
Код
<div class="comment-avatar"><img src="https://сайт.ru/" alt="user1"></div>

Пропадает путь src, как можно исправить?
« Последнее редактирование: 01.01.2019, 18:59:19 от limon142 »
*

limon142

  • Захожу иногда
  • 71
  • 1 / 0
Вопрос снят. В плагине "Расширенный профиль"  в созданном поле "Аватар" в "Значение по умолчанию" нужно было прописать путь. 
*

svetlana5v

  • Новичок
  • 1
  • 0 / 0
Всем здрасти, как сделать, чтоб при регистрации уже автоматически записывался адрес с аватаркой по умолчанию в БД user_profiles.
т.е. смысл такой, когда люди регистрируются и начинают писать комментарии через jcomments, аватарка в коментах не отображается, потому что она берет адрес с базы, поле аватар пустое в БД user_profiles и соответственно она в коментак не отображается. Как решить этот вопрос?   
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Бесплатная система фильтрации полей Joomla

Автор zikkuratvk

Ответов: 178
Просмотров: 8971
Последний ответ 16.06.2019, 19:52:40
от AlekVolsk
Плагин Яндекс Доставка для VirtueMart 3

Автор draff

Ответов: 2
Просмотров: 80
Последний ответ 14.06.2019, 16:06:59
от draff
SM FAQ - компонент Вопрос-Ответ для Joomla 2.5+

Автор SmokerMan

Ответов: 677
Просмотров: 113758
Последний ответ 11.06.2019, 13:30:36
от roymustafa
SW JProjects - Менеджер цифровых проектов для CMS Joomla!™

Автор Septdir

Ответов: 10
Просмотров: 570
Последний ответ 28.05.2019, 13:08:01
от Septdir
JYProExtra - Улучшения для Joomla YooThemePRO

Автор Septdir

Ответов: 3
Просмотров: 282
Последний ответ 27.05.2019, 17:32:36
от Septdir