Перейти к содержанию

Текстовое поле в постконтейнере


Рекомендуемые сообщения

Ребят, всем привет!

Такой вопрос, можно ли как-то реализовать, чтобы в новой версии движка с новыми званиями была возможность ещё отдельного звания, или статуса, как угодно можно назвать, который будет отображаться текстом под ником в постконтейнере? Может как-то совместить старые и новые звания, но по сути не нужно, чтобы что-то выводилось по умолчанию, просто чтобы было текстовое поле, которое могут редактировать админы? Думал как-то реализовать при помощи доп полей, но разве можно как-то отдельно, в нужном месте вывести доп поле? Они вроде привязаны к блоку вывода доп полей, где все и выводятся.

Ссылка на комментарий
Поделиться на другие сайты

Ок, а на платной основе кто такое сможет реализовать? :)

Ссылка на комментарий
Поделиться на другие сайты

.

Изменено пользователем ZIKURIK
Ссылка на комментарий
Поделиться на другие сайты

13 часов назад, the.bunin сказал:

но разве можно как-то отдельно, в нужном месте вывести доп поле?

Перебрать $comment->author->contentProfileFields(), найти свое поле, вывести в любом месте.

{{foreach $comment->author()->contentProfileFields() as $group => $fields}}
  {{if $group == 'core_pfieldgroups_1'}} ----- нужная группа
    {{foreach $fields as $field => $value}}
      {{if $field=='core_pfield_2'}}  ----- нужное поле
        <p class='ipsResponsive_hidePhone ipsType_break'>
          {$v = explode(": ", strip_tags($value))}
          {$v[1]}
        </p>
      {{endif}}
    {{endforeach}}
  {{endif}}
{{endforeach}}

Или шаблон создать и передавать туда $author и нужные поля. 

Ссылка на комментарий
Поделиться на другие сайты

Или так как вариант:

{{if $comment->author()->member_id}}
	{{$ProfileFields = $comment->author()->contentProfileFields();}}
	{$ProfileFields['core_pfieldgroups_GID']['core_pfield_PID']}
{{endif}}

GID - id группы доп. полей
PID - id доп. поля профиля
Чтобы убрать заголовок можно использовать пользовательское форматирование введя только {$content}

Ссылка на комментарий
Поделиться на другие сайты

Блин, заработался, можно же проще

{{$a = explode(": ", strip_tags( $comment->author()->contentProfileFields()['core_pfieldgroups_1']['core_pfield_2']));}}      
{$a[1]}

 

2 минуты назад, ZIKURIK сказал:

Чтобы убрать заголовок можно использовать пользовательское форматирование введя только {$content}

Тогда еще проще:)

{{$a = $comment->author()->contentProfileFields()['core_pfieldgroups_1']['core_pfield_2'];}}
{$a}

 

Ссылка на комментарий
Поделиться на другие сайты

19 минут назад, Desti сказал:

Тогда еще проще:)

{{$a = $comment->author()->contentProfileFields()['core_pfieldgroups_1']['core_pfield_2'];}}
{$a}

Как раз в этом варианте заголовок вывелся, а в первом без него :) 

Desti ZIKURIK ребят, супер, спасибо огромное) Только возник вопрос, а как сделать, чтобы отображалось только в том месте, где я вывожу? Потому что получается дублируется ещё в общем блоке доп полей. А если в настройках доп поля указываю, чтобы не отображать с контентом, то везде пропадает, логично)

Ссылка на комментарий
Поделиться на другие сайты

5 минут назад, the.bunin сказал:

Потому что получается дублируется ещё в общем блоке доп полей.

Можно покурочить шаблон customFieldsDisplay, добавить условия типа {{if $group != 'core_pfieldgroups_1'}} и {{if $field == 'core_pfield_2'}} в циклы

 

Это, конечно, костылики, но Custom поля применяются во вполне конкретных местах и красиво их не сделать. Можно добавить свою функцию myContentProfileField() в \IPS\Member и получать одно конкретное поле прямо из базы, но это уже плюгин и хак. 

Ссылка на комментарий
Поделиться на другие сайты

21 минуту назад, the.bunin сказал:

Только возник вопрос, а как сделать, чтобы отображалось только в том месте, где я вывожу? Потому что получается дублируется ещё в общем блоке доп полей. А если в настройках доп поля указываю, чтобы не отображать с контентом, то везде пропадает, логично)

выключи в настройках поля отображение в темах и в профиле.
и в постконтейнер в нужное место:
field_7 = айди поля. в таблице core_pfields_content.

		{{$status = \IPS\Db::i()->select( 'field_7', 'core_pfields_content', array( 'member_id=?', $comment->author()->member_id ) )->first();}}
			{{if $status != NULL}}
				<li class='ipsList_reset'>{$status}</li>
			{{endif}}

как итог:

Спойлер

321.PNG.6f05a035efdb796b21eb3206ad9257a3.PNG

321321.PNG.add2057789594db71068f295a825d526.PNG

 

 

Ссылка на комментарий
Поделиться на другие сайты

Какие вы крутые, ребята! 

Ссылка на комментарий
Поделиться на другие сайты

by_ix попробуйте найти хоть один select  в дефолтном шаблоне. 

Ссылка на комментарий
Поделиться на другие сайты

Только что, Desti сказал:

попробуйте найти

а кто-то говорил, что нужно без них? 

Ссылка на комментарий
Поделиться на другие сайты

3 минуты назад, by_ix сказал:

а кто-то говорил, что нужно без них? 

Официальная позиция инвижынов - "если есть возможность, постарайтесь обходиться без них". 

Ссылка на комментарий
Поделиться на другие сайты

1 минуту назад, Desti сказал:

постарайтесь обходиться

обходимся без официальных позиций.

Ссылка на комментарий
Поделиться на другие сайты

20 минут назад, by_ix сказал:

выключи в настройках поля отображение в темах и в профиле.
и в постконтейнер в нужное место:
field_7 = айди поля. в таблице core_pfields_content.

		{{$status = \IPS\Db::i()->select( 'field_7', 'core_pfields_content', array( 'member_id=?', $comment->author()->member_id ) )->first();}}
			{{if $status != NULL}}
				<li class='ipsList_reset'>{$status}</li>
			{{endif}}

как итог:

  Показать контент

321.PNG.6f05a035efdb796b21eb3206ad9257a3.PNG

321321.PNG.add2057789594db71068f295a825d526.PNG

 

Вообще ТОП 🔥 спасибо, встало как надо)

Ссылка на комментарий
Поделиться на другие сайты

Ребят, вопрос, а почему не применяется в постконтейнере форматирование к полю? То есть, если выставляю тип поля "Код" или даже "Редактор", делаю наклонные текст или жирный, то выводится с содержимым. Как исправить?

Ссылка на комментарий
Поделиться на другие сайты

the.bunin замени {$status} на {$status|raw}.

Ссылка на комментарий
Поделиться на другие сайты

4 минуты назад, by_ix сказал:

the.bunin замени {$status} на {$status|raw}.

от души!🍻

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...