Jump to content

Поля профиля


ipb323

Recommended Posts

Посмотрел поиском, но ответа не нашёл. Может кто сталкивался - как прочитать в шаблоне значение кастомного поля из Профиля. Хочу в Профиле сделать кнопку, чтобы люди могли индивидуально включать некие опции. Шаблон будет читать это поле и допустим, подгружать или игнорировать некий скрипт.

Link to comment
Share on other sites

{{$custom = $member->contentProfileFields()[core_pfieldgroups_#][core_pfield_#]}} 

ID-шники группы и поля взять из админки, $member может быть чем угодно: $author, $comment->member, смотрите в полях шаблона.

Можно в цикле все поля читать, если надо, типа

{{foreach $member->contentProfileFields() as $group => $fields}}
    {{foreach $fields as $field => $value}}
        {$group} - {$field} - {$value}
    {{endforeach}}
{{endforeach}}

 

Link to comment
Share on other sites

Ой, это не совсем то :)

Поля профиля добываются так: 

$member->profileFields( \IPS\core\ProfileFields\Field::PROFILE )['core_pfieldgroups_#']['core_pfield_#']

Link to comment
Share on other sites

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

В каком шаблоне, например?

В глобал.

У меня задача отследить истина/ложь в кастомном поле и включить/выключить скрипт для каждого конкретного пользователя.

Link to comment
Share on other sites

Впрочем не важно, синтаксис php надо соблюдать. Вот такое работает у меня, выводит поле на экран

{{$memb = \IPS\Member::load( \IPS\Member::loggedIn()->member_id );}}
{{$cust = $memb->profileFields( \IPS\core\ProfileFields\Field::PROFILE )['core_pfieldgroups_1']['core_pfield_2'];}}
{{var_dump($cust); die();}}

 

Link to comment
Share on other sites

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

['core_pfieldgroups_1']['core_pfield_14'] 

Сначала выведите на экран, я не помню, там true/false или 1/0. 

Лёд тронулся. По крайней мере, уже не кричит на ошибку, а уверенно выдаёт NULL :) 

В базе у меня поле принимает значение 1 или 0 (текстовое).

Link to comment
Share on other sites

Не должно, если поле установлено. И почему текстовое? Измените на чекбокс или Да/Нет, нагляднее и пользователю понятнее.

Link to comment
Share on other sites

1 час назад, Desti сказал:

Не должно, если поле установлено. И почему текстовое? Измените на чекбокс или Да/Нет, нагляднее и пользователю понятнее.

Сам движок его сделал текстовым, я через админку поставил да/нет. А для пользователя это, как ползунок вкл/выкл. Мне кажется, что в базе специально так сделали, чтобы можно было тип поля переключать, не перелопачивая таблицу.

Edited by ipb323
Link to comment
Share on other sites

40 минут назад, ipb323 сказал:

Сам движок его сделал текстовым

Видимо, я что-то не понимаю в этой жизни.. Какой движок, что поставил? Вы сами выбираете, что надо и в каком виде.

image.png.0e4b0cdd2625d0f9d4060491009d8c01.png

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

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

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...