Перейти к содержимому
Открыть в приложении

Удобный способ просмотра. Узнать больше.

Дизайн и модификация Invision Community

Полноэкранное приложение на главном экране с push-уведомлениями, медалями и многим другим.

Чтобы установить это приложение на iOS и iPadOS
  1. Нажмите иконку «Поделиться» в Safari
  2. Прокрутите меню и нажмите На экран «Домой».
  3. Нажмите Добавить в правом верхнем углу.
Чтобы установить это приложение на Android
  1. Нажмите меню из трёх точек (⋮) в правом верхнем углу браузера.
  2. Нажмите Добавить на главный экран или Установить приложение.
  3. Подтвердите, нажав Установить.
Русский язык для Invision Community 5

[HOWTO] Динамическое лого по дням и месяцам

Чтобы сделать динамический логотип, реагирующий на время года и праздники, вам потребуется:

 

1. Приготовить набор логтипов, назвая каждый следующим образом:

 

logo-[месяц].png - стандартный логотип месяца,
logo-[месяц]-[число].png - особый логотип на особый день.

 

Например:

 

logo-03.png - мартовский
logo-03-08.png - особый логотип на 8 марта

 

Праздники не обязательны, но на все 12 месяцев логотипы нужно сделать.

 

2. Создать на форуме папку /public/logos/, и сложить их туда.

 

3. Отредактировать шаблон Глобальные > defaultHeader. Заменить его содержимое на:

<php>
$logo_ext = '.png';
$logo = file_exists(DOC_IPS_ROOT_PATH . '/' . PUBLIC_DIRECTORY . '/logos/logo-' . date('m-d') . $logo_ext) ? date('m-d') . $logo_ext : date('m') . $logo_ext;
$logo = $this->settings['public_dir'] . 'logos/logo-'.$logo;
</php>

<a href='{$this->settings['board_url']}' title='{$this->lang->words['go_home']}' rel="home" accesskey='1'><img src='{$logo}' alt='{$this->lang->words['logo']}' /></a>

 

Если у вас логотипы не в .png, а в .jpg, просто замените значение: $logo_ext = '.jpg';

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

  • Автор

Если лениво рисовать сразу на все месяцы, можно:

 

1. Положить в папку /public/logos/ стандартный вариант логотипа под именем logo.png.

 

2. Усложнить код шаблона:

 

<php>
$logo_ext = '.png';
if ( file_exists(DOC_IPS_ROOT_PATH . '/' . PUBLIC_DIRECTORY . '/logos/logo-' . date('m-d') . $logo_ext) ) {
   $logo = $this->settings['public_dir'] . 'logos/logo-' . date('m-d') . $logo_ext;
} elseif ( file_exists(DOC_IPS_ROOT_PATH . '/' . PUBLIC_DIRECTORY . '/logos/logo-' . date('m') . $logo_ext) ) {
   $logo = $this->settings['public_dir'] . 'logos/logo-' . date('m') . $logo_ext;
} else {
   $logo = $this->settings['public_dir'] . 'logos/logo'. $logo_ext;
};
</php>

<a href='{$this->settings['board_url']}' title='{$this->lang->words['go_home']}' rel="home" accesskey='1'><img src='{$logo}' alt='{$this->lang->words['logo']}' /></a>

 

Теперь логтипом будет либо "logo-[месяц]-[день].png", либо, если его нет, "logo-[месяц].png", либо, если и такого нет, "logo.png".

  • 8 месяцев спустя...

Спасибо за полезную информацию. А как сделать чтобы лого в произвольном порядке менялось например один раз в час или произвольно при обновлении страницы пользователем?

Вместо "date('m-d')" использовать "rand(1, n)", где n - максимальное числовое значение в имени файла логотипа. Т.е. если в наборе 10 файлов (logo-1.png, logo-2.png ... logo-10.png), то пишем "rand(1, 10)".

$logo = file_exists(DOC_IPS_ROOT_PATH . '/' . PUBLIC_DIRECTORY . '/logos/logo-' . rand(1, 10) . $logo_ext);

Это будет случайное лого из набора.

 

Со сменой раз в час сложнее, если требуется рендомно выбрать лого из произвольного числа файлов... Если же следовать предложенному методу, то нужно сделать набор из 24-х логотипов, нумерация файлов от 00 до 23 и использовать "date('H')", или 12 файлов и "date('h')", нумерация 01 - 12.

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

Аккаунт

Навигация

Поиск

Поиск

Настроить push-уведомления браузера

Chrome (Android)
  1. Нажмите на иконку замка рядом с адресной строкой.
  2. Нажмите Права доступа -> Уведомления.
  3. Измените свои настройки.
Chrome (компьютер)
  1. Нажмите на иконку замка в адресной строке.
  2. Выберите Настройки сайта.
  3. Найдите Уведомления и измените свои настройки.