Перейти к публикации
View in the app

A better way to browse. Learn more.

Дизайн и модификация 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.

Как совместить несколько скинов?

Опубликовано:

Сделали новый скин форума ipb 3.1.4 Для каждого раздела свой стиль (отличаются только шапкой), привязали к разделам в "настройках стиля" форумов. Но теперь в этих разделах невозможно переключиться на стандартный стиль или на мобильную версию.

 

Как этого можно избежать?

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

Опубликовано:

Если скинов несколько, никак нельзя.

Делайте внутри одного скина смену шапки в зависимости от ID раздела. Закажите хук например для такого действия.

Опубликовано:
  • Автор

Делайте внутри одного скина смену шапки в зависимости от ID раздела.

Огромное спасибо! А подробней не подскажете, в какое конкретно место кода нужно исправления внести? Т.е. где код, который показ шапки обеспечивает?

Опубликовано:

Обратитесь к программистам, я просто не знаю как лучше.

Могу только сказать, что модифицировать нужно Global Templates > defaultHeader

Там выводится макрос для смены логотипа.

 

Если не только лого меняется, но и фон под ним, тогда придется править и / или

Global Templates > globalTemplate

Опубликовано:
  • Автор

Меняется картинка в середине шапки, все остальное остается. Это здесь поискать:

Если не только лого меняется, но и фон под ним, тогда придется править и / или

Global Templates > globalTemplate

Опубликовано:

Я же не знаю, как у Вас устроена шапка и каким способом привязана картинка.

Могу давать рекомендации только для стандартного варианта. Обратитесь к разработчику Ваших скинов (м.б. картинка вообще в css задана. Тогда надо не трогать html для шапки, а делать дополнительные css, которые заставить подгружаться в зависимости от категории)

Опубликовано:
  • Автор

Я же не знаю, как у Вас устроена шапка и каким способом привязана картинка.

Могу давать рекомендации только для стандартного варианта. Обратитесь к разработчику Ваших скинов (м.б. картинка вообще в css задана. Тогда надо не трогать html для шапки, а делать дополнительные css, которые заставить подгружаться в зависимости от категории)

В том то и дело, что разработчик, не знает, как по-другому сделать смену шапки. Завтра узнаю у него подробно, как там все организовано. Большое спасибо!

Опубликовано:

У вас сейчас используется подмена картинки:

#branding { background: url("http://**********/public/style_images/yatakaya/branding.png") no-repeat scroll center top transparent; }

 

Разные скины/файлы/кэши для разных разделов ради одной этой строки - не только трудозатратно (особенно в плане поддержки скинов), но еще и нерационально по ресурсам.

 

Общий принцип решения такой - найти в globalTemplate этот самый brading:

<div id='branding'>

 

И заменить на более сложный вариант:

<php>
$forum_id = 0;
if( !empty( $this->request['f'] ) ) {
	$forum_id = intval( $this->request['f'] ); 		
} elseif ( !empty( $this->request['t'] ) ) {
	if ( ! isset( $this->registry->class_forums->topic_cache['tid'] ) OR ! $this->registry->class_forums->topic_cache['tid'] )
	{
		$this->DB->build( array( 'select' => '*', 'from' => 'topics', 'where' => 'tid='.intval( $this->request['t'] ) ) );									
		$this->DB->execute();			
		$this->topic = $this->DB->fetch();
	}
	else
	{
		$this->topic = $this->registry->class_forums->topic_cache;
	}
	$forum_id = isset( $this->topic['forum_id'] ) ? $this->topic['forum_id'] : 0;
   }
</php>
<!-- Forum_id = {$forum_id}-->
		<div id='branding' style='background:url(/path/to/image_{$forum_id}.jpg)'>

 

В переменной {$forum_id} ниже этого блока ... всегда будет id текущего форума, либо 0, если мы на главной или на служебных страницах.

Изменено пользователем Fisana
URL варезник заменила на ****

Опубликовано:

Пока не делал, сразу хочу спросить - как назвать изображения, и будет ли этот вариант работать при переходе не только в раздел с форумами, но и в темы, принадлежащие форумам?

Опубликовано:

Работать будет и в темах, и в списках тем. Названия картинок - на ваш вкус. Я для примера написал "/path/to/image_{$forum_id}.jpg". {$forum_id} - это номер форума: 0 (главная + служебные страницы), 1, 2, 3, 4 и т.д. Какой форум за каким номером идет можно посмотреть прямо на главной странице по ссылками, например для ********** легко увидеть id = 11.

Изменено пользователем Fisana
Ссылку на варезник убила

Опубликовано:

Кстати, только сейчас посмртрела.

На форуме копирайты убиты :(

 

Зачем в теме мы варезник рекламируем? Если в инфо юзера прописано, слова не скажу. Это не видно никому, кроме администрации.

А в постах ссылки на сайты, нарушающие авторские права, запрещены.

 

ТС, приведите копирайты форума в соответствие с лицензионным соглашением.

Опубликовано:
  • Автор

А в постах ссылки на сайты, нарушающие авторские права, запрещены.

Извините, не знала. Это произошло случайно.

 

@Ritsuka, огромное спасибо за такой обстоятельный ответ!

 

Надеюсь, все получится! :)

Опубликовано:

Хм. Не обратил внимания даже. Думаю, раз уж на дизайн не пожадничали - с чего будут рисковать всем... Однако.

Опубликовано:

Неплохой способ, есть одно но - сами знаете в ipb нет разницы в урлах и id между категориями, форумами и подфорумами, поэтому (наверно) приходится делать несколько одинаковых изображений, их получается по 10-15 для каждой категории. Лучше заместо style задавать class, и в css перечислять все форумы и тд

Создайте аккаунт или войдите в него для комментирования

Сейчас на странице 0

  • Нет пользователей, просматривающих эту страницу.

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.