Виджеты для разных тем. - Дизайн и модификация Invision Power Board

Перейти к содержимому

 

СвернутьПрикрепленные теги

Теги не найдены

Страница 1 из 1

Виджеты для разных тем.

#1 Пользователь не на сайте   Dzi ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 18
  • Регистрация: 21-Февраль 18
  • Репутация: 0
  • IPB version:4.1.x
 

Отправлено 21 Февраль 2018 - 19:28

Возможно как-то задать чтобы к примеру с одной темой блок выглядел иначе чем с другой.
К примеру у меня есть 2 темы, одна светлая, вторая тёмная..
и виджет с кодом дискорда тёмного цвета
Хочется чтобы а белой теме был другой код с белым цветом(код у меня есть, осталось понять как сделать чтобы он переключался)
Помогите.
Вложение  discordserver.png (58,52К)
Количество загрузок: 5
0

#2 Пользователь не на сайте   Dmitriy427 ответил: »

 
 
  • Advanced
  • Смотреть блог
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Specialist
  • Сообщений: 648
  • Регистрация: 15-Октябрь 11
  • Репутация: 188
  • Откуда:Россия, Тула
  • IPB version:I have no IPB
 

Отправлено 21 Февраль 2018 - 23:46

В настройках внешнего вида, в свойствах темы "Light" кликаете по иконке "Редактировать HTML и CSS", во вкладке CSS выбираете core -> front -> custom -> custom.css и добавляете туда свои селекторы, например:
#discord-widget .widget-body { background-color: #f3f3f3 !important; color: #6a6b80 !important; }
Сохраняете тему и смотрите результат.
0

#3 Пользователь не на сайте   Dzi ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 18
  • Регистрация: 21-Февраль 18
  • Репутация: 0
  • IPB version:4.1.x
 

Отправлено 22 Февраль 2018 - 03:08

Короче ваш вариант не помог.
Но я нашёл решение радикально
Взял и просто вставил в код sidebar напрямую код дискорда после виджетов.

{{$adsForceSidebar = ( \IPS\Settings::i()->ads_force_sidebar AND \IPS\core\Advertisement::loadByLocation( 'ad_sidebar' ) );}}
{{if (isset( \IPS\Output::i()->sidebar['enabled'] ) and \IPS\Output::i()->sidebar['enabled'] ) && ( ( isset( \IPS\Output::i()->sidebar['contextual'] ) && trim( \IPS\Output::i()->sidebar['contextual'] ) !== '' ) || ( isset( \IPS\Output::i()->sidebar['widgets']['sidebar'] ) && count( \IPS\Output::i()->sidebar['widgets']['sidebar'] ) ) || ( \IPS\Dispatcher::i()->application instanceof \IPS\Application AND \IPS\Dispatcher::i()->application->canManageWidgets() ) || $adsForceSidebar )}}
	<div id='ipsLayout_sidebar' class='ipsLayout_sidebar{$position} {{if !( isset( \IPS\Output::i()->sidebar['contextual'] ) && trim( \IPS\Output::i()->sidebar['contextual'] ) !== '' ) && ( !isset( \IPS\Output::i()->sidebar['widgets']['sidebar'] ) || !count( \IPS\Output::i()->sidebar['widgets']['sidebar'] ) ) && \IPS\Dispatcher::i()->application->canManageWidgets() && !$adsForceSidebar}}ipsLayout_sidebarUnused{{endif}}' data-controller='core.front.widgets.sidebar'>
      
		{{if isset( \IPS\Output::i()->sidebar['contextual'] ) && trim( \IPS\Output::i()->sidebar['contextual'] ) !== ''}}
			<aside id="elContextualTools" class='ipsClearfix' {{if isset( \IPS\Output::i()->sidebar['sticky'] )}}data-ipsSticky{{endif}}>
				{expression="\IPS\Output::i()->sidebar['contextual']" raw="true"}
			</aside>
		{{endif}}
		{{if $adsForceSidebar OR ( \IPS\core\Advertisement::loadByLocation( 'ad_sidebar' ) AND ( ( isset( \IPS\Output::i()->sidebar['contextual'] ) && trim( \IPS\Output::i()->sidebar['contextual'] ) !== '' ) OR ( isset( \IPS\Output::i()->sidebar['widgets']['sidebar'] ) && count( \IPS\Output::i()->sidebar['widgets']['sidebar'] ) ) ) )}}
			<div data-role='sidebarAd'>
				{advertisement="ad_sidebar"}
			</div>
			<br><br>
		{{endif}}
		{template="widgetContainer" group="global" app="core" params="'sidebar', 'vertical'"}<br>
      <iframe src="https://discordapp.com/widget?id=388039995375484948&theme=light" width="328" height="400" allowtransparency="true" frameborder="0"></iframe>
	</div>
{{endif}}

0

#4 Пользователь не на сайте   Dzi ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 18
  • Регистрация: 21-Февраль 18
  • Репутация: 0
  • IPB version:4.1.x
 

Отправлено 22 Февраль 2018 - 03:48

Только вот теперь виджет отображается на всех страницах - а хотелось бы чтобы только на главной..
0

#5 Пользователь не на сайте   newbie ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins.ru Team
  • Сообщений: 3 591
  • Регистрация: 26-Октябрь 11
  • Репутация: 1 403
  • IPB version:I have no IPB
 

Отправлено 22 Февраль 2018 - 09:34

Добавьте 2 виджета. После в темном стиле скроете светлый, а в светлом - темный
0

#6 Пользователь не на сайте   Dzi ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 18
  • Регистрация: 21-Февраль 18
  • Репутация: 0
  • IPB version:4.1.x
 

Отправлено 22 Февраль 2018 - 10:04

Как скрыть их?
0

#7 Пользователь не на сайте   newbie ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins.ru Team
  • Сообщений: 3 591
  • Регистрация: 26-Октябрь 11
  • Репутация: 1 403
  • IPB version:I have no IPB
 

Отправлено 22 Февраль 2018 - 10:09

Через css. Я не вижу у Вас на форуме виджетов
0

#8 Пользователь не на сайте   Dzi ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 18
  • Регистрация: 21-Февраль 18
  • Репутация: 0
  • IPB version:4.1.x
 

Отправлено 22 Февраль 2018 - 10:34

Суть в том что мне нужно блок с виджетом скрыть а не только виджет сам.
0

#9 Пользователь не на сайте   newbie ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins.ru Team
  • Сообщений: 3 591
  • Регистрация: 26-Октябрь 11
  • Репутация: 1 403
  • IPB version:I have no IPB
 

Отправлено 22 Февраль 2018 - 10:39

Скрывайте. Смотрите селектор у блока.
В IPS виджет - это блок с названием и содержимым, а не содержимое
0

#10 Пользователь не на сайте   Dzi ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 18
  • Регистрация: 21-Февраль 18
  • Репутация: 0
  • IPB version:4.1.x
 

Отправлено 22 Февраль 2018 - 11:19

Я плохо вдупляю.
Давайте я поставлю блок с дискордом обратно и вы покажите мне пример на нём..
А то я пытаюсь кубик в кружок впихнуть и не понимаю..
заранее спасибо..
0

#11 Пользователь не на сайте   newbie ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins.ru Team
  • Сообщений: 3 591
  • Регистрация: 26-Октябрь 11
  • Репутация: 1 403
  • IPB version:I have no IPB
 

Отправлено 22 Февраль 2018 - 11:27

Каждый виджет имеет атрибут data-blockid с уникальным значением.
В данном случае data-blockid="plugin_3_sodTxtWidget_5w8hbhe8u"

Чтобы скрыть виджет, нужно добавить в custom.css
li[data-blockid="plugin_3_sodTxtWidget_5w8hbhe8u"] {
    display: none;
}

1

#12 Пользователь не на сайте   Dzi ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 18
  • Регистрация: 21-Февраль 18
  • Репутация: 0
  • IPB version:4.1.x
 

Отправлено 22 Февраль 2018 - 11:33

Лол, всё так просто?!
Большое спасибо..
Можете заглянуть пожалуйста ещё в соседнию темку, если не затруднит.. :unsure:
0

#13 Пользователь не на сайте   newbie ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins.ru Team
  • Сообщений: 3 591
  • Регистрация: 26-Октябрь 11
  • Репутация: 1 403
  • IPB version:I have no IPB
 

Отправлено 22 Февраль 2018 - 11:45

Можно еще проще сделать. С одним виджетом
Темная тема
<iframe id="elDiscord_dark" src="https://discordapp.com/widget?id=388039995375484948&theme=dark" width="328" height="400" allowtransparency="true" frameborder="0"></iframe>

Светлая тема
<iframe id="elDiscord_light" src="https://discordapp.com/widget?id=388039995375484948&theme=light" width="328" height="400" allowtransparency="true" frameborder="0"></iframe>


И css в зависимости от стиля
#elDiscord_dark {
    display: none;
}

или
#elDiscord_light {
    display: none;
}


Либо средствами js вообще вырезать из кода
$('#elDiscord_dark').remove();

$('#elDiscord_light').remove();


Кстати у плагина, с помощью которого реализовано, есть php-версия. Можно определять стиль юзера, и выводить 1 фрейм в зависимости от стиля
0

Сообщить об этой теме:


Страница 1 из 1


Быстрый ответ

  

1 пользователей читают эту тему
0 зарегистрированных, 1 гостей, 0 скрытых


Контактная информация

Вопросы по работе сайта

+7 (917) 501-4765
C 10 до 20 в рабочие дни (время московское)

Техническая поддержка

Контактные данные специалистов

Дизайн форумов

IPB 3.x ¦ IPB 2.x

Бесплатные шаблоны

IPB 3.2 – 3.4 ¦ IPB 3.1 ¦ IPB 3.0 ¦ IPB 2.2 – 2.3 ¦ IPB 2.1 ¦ Клипарт
Лицензия на использование ¦ Ваша поддержка ¦ О проекте
Copyright © 2005-2018 IPBSkins.ru Team
При копировании материалов с сайта
прямая ссылка на источник обязательна