Дополнительные поля профиля IPB 3.2.3

Управление дополнительными полями в IPB 3.2.* 3.2.3 3.2

Решил я как-то сделать свой форум (Invision Pover Board 3.2.3) более социальным, добавить в профиль побольше разных полей (vk, facebook, last.fm и др.).
Поля насоздавал, иконки подобрал, описание, но столкнулся со следующей проблемой: кликнуть по ним нельзя, в отличие от стандартных (для примера поле skype выглядит так: skype).
Т.е. получалось, что если кто-то хочет попасть в профиль юзера, в том же VK или Facebook, ему нужно вручную туда переходить и вводить id. Я же хотел сделать чтобы в контактной информации дополнительные поля отображались как ссылка на профиль пользователя в соответствующей соц. сети. 
         Опишу решение которым воспользовался я:
Несмотря на свою нелюбовь к ручной правке (с новой то системой хуков) пришлось все же копаться, т.к. ни где подобного хука или хотя бы описания, как сделать, я не нашел.

Открываем: Внешний вид - управление стилями - ваш стиль - шаблоны - профили пользователей - customFieldGroup__contact

Там идем в самый конец и находим: 
{$f->parsed}
</if>
</if>
после него будет еще много  </if>
Итак, до {$f->parsed} добавляем следующее (разбираю на примере Vkontakte):

<if test="vk:|:$f->raw_data['pf_key'] == 'vk'">
<a class='url uid' rel="me" href='http://vk.com/{$f->parsed}'>{$f->parsed}</a>
 <else />
Здесь vk - это ваш ключ в дополнительных полях профиля,
http://vk.com/ - это приставка, которая добавляется перед id

После {$f->parsed} добавляем
</if> 
и сохраняем.
Таким образом вы можете добавить ссылки на все поля (не забывайте только для каждого добавлять </if> ). Если вы хотите чтобы выводилась полная ссылка (например блог),тогда ничего не указывайте вместо http://vk.com/


Единственное что теперь, юзер, который вместо своего id введет полную ссылку - испортит весь ход событий. Для этого стоит более тщательно подходить к описанию поля или ограничивать длину, но вот тут то и возникает проблема, большинство соц. сетей предоставляют пользователям самим выбирать свой id, и некоторые юзеры могут выбрать себе id в несколько раз превышающий id+стандартный id. 

Лично я не выставляю ограничение длины поля, проще самому потом подправить, если заметишь криво заполненное поле, и отрезать лишнее.
Надеюсь кому-то помог, удачи)


Комментарии

  1. спасибо. а как можно для других категорий, не контактов? вот создал я категорию, а там чет не получается

    ОтветитьУдалить
  2. Не совсем понятно где именно вы создали категорию

    ОтветитьУдалить

Отправить комментарий

Популярные сообщения из этого блога