Jump to content
View in the app

A better way to browse. Learn more.

IPBMafia.ru - поддержка Invision Community, релизы, темы, плагины и приложения

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Персонализация профиля пользователя

Featured Replies

Posted

Всем привет.

На одном из ресурсов казнета замутили вот что: 


post-8414-0-25862400-1400126626_thumb.jp

 

ссылка на мой профиль там


вот

 

т.е. как обычно в персонализации выбираешь фон для профиля, но он становится не как фон, а как вот такая шапка профиля, причем не надо ни размер рисунка подгонять ни чего - само все становится достаточно симпатично. 

да и вообще CSS симпатичный я бы перенял позиционирование и выравнивание. 

сможет кто помочь ? 

1. CSS для персонализации прописан в шаблоне customizeProfile. Выдергиваете из исходного кода и заменяете

2. Далее в шаблоне profileModern находите 

<div class='ipsBox clear vcard' id='profile_background'>

и ниже добавляете 

<div id='customBackground'></div>

3. Смотрите результат, подгоняете, если что-то не нравится.

  • Author

1. CSS для персонализации прописан в шаблоне customizeProfile. Выдергиваете из исходного кода и заменяете

перебрал все CSS не нашел такого у себя

#customBackground {
background-color: #FFFFFF !important;
background-image: url("__vse.kz/uploads/bgimages/bgimg-37941.jpg?nc=1400126283") !important;
background-position: 50% 50%;
background-repeat: no-repeat;
-webkit-background-size: 100% 100%;
-moz-background-size: 100% 100%;
background-size: cover;
height: 500px;
margin: -9px -9px 0 -9px;
}

2. Далее в шаблоне profileModern находите 

<div class='ipsBox clear vcard' id='profile_background'>
и ниже добавляете 

<div id='customBackground'></div>
3. Смотрите результат, подгоняете, если что-то не нравится.

Спасибо.

Ни чего не изменилось. Видимо еще где то надо править.


локализация разная у нас или что.....
Она тут, родимая, каким боком? :)

На скриншоте вижу у Вас 2 стиля. Нажимайте на Default, находите группу Профили пользователей, В ней открываете шаблон customizeProfile. В этой же группе будет 2-ой нужный шаблон

  • Author

Она тут, родимая, каким боком? :)

На скриншоте вижу у Вас 2 стиля. Нажимайте на Default, находите группу Профили пользователей, В ней открываете шаблон customizeProfile. В этой же группе будет 2-ой нужный шаблон

 

Спасибо! 

не подскажите переменную для  background-image:  что вставить что бы персональное изображение было а не одно для всех ? 

 

background-image: url("__vse.kz/uploads/bgimages/bgimg-37941.jpg?nc=1400126283") !important;
отбой разобрался с этим...

Edited by AUS

  • Author

теперь бы разобраться как опустить фон как на втором скрине

post-8414-0-11705500-1400237741_thumb.jp

post-8414-0-07413700-1400236100_thumb.jp

и удалить баграунд тот что обычный был

да и кнопки "удалить персонализацию" и "редактировать профиль" бы опустить сверху вниз к кнопке "публикации"

теперь бы разобраться как опустить фон как на втором скрине

и удалить баграунд тот что обычный был

Нужно все css-изменения забрать и заменить ими оригинальные.

Плюс добавьте 

#profile_background .ipsBox_container {
	background: transparent;
	border: none;
}

Кнопки находятся в шаблоне profileModern

<if test="canEditUser:|$this->memberData['member_id'] && $member['member_id'] == $this->memberData['member_id']) || $this->memberData['g_is_supmod'] == 1 || ($this->memberData['member_id'] && $member['member_id'] != $this->memberData['member_id'])">
	<ul class='topic_buttons'>
		<if test="weAreSupmod:|:$this->memberData['g_is_supmod'] == 1 && $member['member_id'] != $this->memberData['member_id']">
			<li><a href='{parse url="app=core&amp;module=modcp&amp;do=editmember&amp;auth_key={$this->member->form_hash}&amp;mid={$member['member_id']}&amp;pf={$member['member_id']}" base="public"}'>{$this->lang->words['supmod_edit_member']}</a></li>
		</if>
		<if test="weAreOwner:|:$this->memberData['member_id'] && $member['member_id'] == $this->memberData['member_id']">
			<li><a href='{parse url="app=core&amp;module=usercp&amp;tab=core" base="public"}'>{$this->lang->words['edit_profile']}</a></li>
		</if>
		<if test="supModCustomization:|$member['member_id'] == $this->memberData['member_id'] ) AND $member['customization']['type']">
			<li class='non_button'><a href='{parse url="showuser={$member['member_id']}&amp;secure_key={$this->member->form_hash}&amp;removeCustomization=1" seotitle="{$member['members_seo_name']}" template="showuser" base="public"}'>{$this->lang->words['cust_remove']}</a></li>
		</if>
	</ul>
</if>

Их нужно переносить к "Публикации"

  • 5 месяцев спустя...
  • 2 years later...

Все сделал как написано, получилось персонализировать шапку форума, но только в профиле пользователя. Нельзя ли сделать так, чтобы пользователь видел персональные цвета глобально по всему форуму?

7 часов назад, konon сказал:

Все сделал как написано, получилось персонализировать шапку форума, но только в профиле пользователя. Нельзя ли сделать так, чтобы пользователь видел персональные цвета глобально по всему форуму?

По примеру что описано выше, применяете его к другим классам и шаблонам форума

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

По примеру что описано выше, применяете его к другим классам и шаблонам форума

Дело в том, что когда я в шаблоне customizeProfile применяю следующий код:

<style type="text/css">
/* Overwrite some of the standard IPB rules */
/* Content, is the main page under the header */

<if test="hasBodyCustomization:|:$member['customization']['bg_color']">
#header {
	<if test="hasBackgroundColor:|:$member['customization']['bg_color']">
		background-color: #{$member['customization']['bg_color']} !important;
	</if>
}
</if>
</style>

то шапка форума #header меняет свой цвет при заходе в профиль этого пользователя. Измененный цвет шапки видят все посетители профиля. Видимо за это отвечает $member, который наполняется данными именно того пользователя, в профиль которого заходишь.

Вот тут даны некоторые рецепты по персонализации всплывающего окошка пользователя showCard через

$member['customization']['bg_color']

и пользовательской инфы в сообщениях userInfoPane через

$author['customization']['bg_color']

Но опять же, логика такая, что другие пользователи видят ваши персонализированные элементы. Конструкции "просматриваю профиль $member - вижу его цвет", "навожу курсор на $member - вижу его цвет", "читаю пост $author - вижу его цвет" - мне не подходят :( Мне нужно "я вижу свой цвет, и только я".

То есть, нужно брать значение цвета из настройки персонализации и генерировать индивидуальный CSS для пользователя. Теоретически решаемо, ведь если движок генерирует ссылку на профиль пользователя, которая у каждого отображается в шапке, то он как-то определяет его ID. А раз есть ID, то можно как-то и выковырять значение цвета и прилепить перед </head> стилевое правило для #header...

Помогите пожалуйста)

Покопался в документации ipboard 3.х, вот к чему пришел на данный момент.

В профиле на вкладке Персонализация вводим свой цвет (#002D96), адрес изображения по желанию.

Далее выводим значение $memberData через главный шаблон:

<php>
    print_r($this->memberData);
</php>

В длинном выводе обнаруживаем искомый цвет из настроек персонализации:

Array (
[member_id] => 12345
...
[pp_customization] => a:4:{s:8:"bg_color";s:6:"002D96";s:7:"bg_tile";i:0;s:6:"bg_url";s:30:"http://...";s:4:"type";s:3:"url";}
...

Таким образом, можно получить строку a:4:{s:8:"bg_color";s:6:"002D96";s:7:"bg_tile";i:0;s:6:"bg_url";s:30:"http://...";s:4:"type";s:3:"url";} двумя способами:

<php>
    print($this->memberData['pp_customization']);
</php>

или

{$this->memberData['pp_customization']}

Вот только как же теперь из нее вытащить значение цвета?

Большое спасибо! Все получилось :)

<php>
    $customization = unserialize($this->memberData['pp_customization']);
</php>
<if test="$customization['bg_color']">
<style>
#header {
    background: #{$customization['bg_color']} !important;
}
</style>

 

Не могу отредактировать пост, </if> забыл в конце.

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
Ответить в этой теме...

Последние посетители 0

  • No registered users viewing this page.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.