VetalDX 1 01/17/15 18:36 <b><if test="authorcfields:|:$author['custom_fields'] != """></b> <ul class='custom_fields'> <foreach loop="customFieldsOuter:$author['custom_fields'] as $group => $data"> <foreach loop="customFields:$author['custom_fields'][ $group ] as $field"> <if test="$field != ''"> <li> {$author['custom_fields']['contact']['icq']} </li> </if> </foreach> </foreach> выходит так нет аськи Поделиться сообщением Ссылка на сообщение
siv1987 2628 01/17/15 18:46 И не будет. Что вы вообще хотите сделать? К переменной нужно обращаться в таком виде если требуется вывести содержимое дополнительного поле за пределами цикла. Чтобы оно отобразилось в сообщение достаточно заполнить опцию "Отображение поля в сообщении". Поделиться сообщением Ссылка на сообщение
VetalDX 1 01/17/15 18:52 я хочу сделать над группой иконки.например синий квадратик вк профиль, когда юзер в настройках указ id к вк, то в постах тогда будет отображаться иконка, также и аська и другие какие я создам доп. поля.чтобы нажав на иконка переходило по ссылки. Поделиться сообщением Ссылка на сообщение
siv1987 2628 01/17/15 19:11 Дополнительное поле не будет в переменной если не заполнить опцию для вывода в сообщение.Если при этом не требуется что-бы поле отображалось в списке, нужно исключить ее условием (обращаем внимание на "$key => $field" которого по умолчанию в цикле нету): <foreach loop="customFields:$author['custom_fields'][ $group ] as $key => $field"> <if test="$field != '' AND ! in_array($key, array('icq'))"> <li> {$field} </li> </if> </foreach> Можно указать несколько ключей через запятую - 'icq', 'icq2', 'icq3'В "Отображение поля в сообщении" прописать {content}Дальше можете обращаться напрямую к этому полю {$author['custom_fields']['contact']['icq']} в любом месте шаблона (естественно за пределами цикла). Получить значение дополнительного поля также можно по $author['field_ид'], где ид - ид дополнительного поле.Проблема в том, что здесь хранятся raw данные не отформатированные от служебных символов, что чревато для XSS инъекции. При таком подходе всегда следует использовать IPSText::parseCleanValue {parse expression="IPSText::parseCleanValue($author['field_ид'], false)"} Поделиться сообщением Ссылка на сообщение
VetalDX 1 01/18/15 13:06 Ну вот что получилось у меня.Так как я и хотел. Поделиться сообщением Ссылка на сообщение