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

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


AUS

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

Всем привет.

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


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. Смотрите результат, подгоняете, если что-то не нравится.

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

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. Смотрите результат, подгоняете, если что-то не нравится.

Спасибо.

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

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


перебрал все CSS не нашел такого у себя
Я не писал, что это css

АЦ - Внешний вид - Стиль - Профили пользователей - customizeProfile

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

Я не писал, что это css

АЦ - Внешний вид - Стиль - Профили пользователей - customizeProfile

локализация разная у нас или что.....

post-8414-0-41103700-1400210559_thumb.jp

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


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

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

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

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

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

 

Спасибо! 

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

 

background-image: url("__vse.kz/uploads/bgimages/bgimg-37941.jpg?nc=1400126283") !important;
отбой разобрался с этим... Изменено пользователем AUS
Ссылка на комментарий
Поделиться на другие сайты

background-image: url("{$member['customization']['_bgUrl']}?nc={$member['pp_profile_update']}") !important;
Ссылка на комментарий
Поделиться на другие сайты

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

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 месяцев спустя...

можете кинуть свой 

customizeProfile

?

а то не могу понять что там надо изменить...

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

  • 2 года спустя...

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

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

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']}

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

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

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

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

http://php.net/manual/ru/function.unserialize.php

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

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

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

 

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

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

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

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

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

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

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

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

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

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

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

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