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

Добавить настройку темы


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

Привет!

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

<?php

return new \IPS\Helpers\Form\Select("core_theme_setting_title_{$row['sc_id']}", $value ? explode(',', $value) : array(), false, array( 'options' => array (
  'activity' => 'Activity', 
  'forumtopic' => 'Forums',  
  'pages' => 'Pages', 
  'downloads' => 'Downloads', 
  'message' => 'message',
  'posts' => 'posts',
  'topics' => 'topics',
  ), 'parse' => 'normal', 'multiple' => true, 'unlimited' => '*', 'unlimitedLang' => 'all_items' ), NULL, NULL, NULL, 'theme_setting_' . $row['sc_key'] );

И использовать следующие коды в редакторе темы:

{{if theme.profile_items == 'activity'}} 
<!--activity-->
{{endif}} 
{{if theme.profile_items == 'forumtopic'}} 
<!--forumtopic-->
{{endif}} 
{{if theme.profile_items == 'pages'}} 
<!--pages-->
{{endif}} 
{{if theme.profile_items == 'downloads'}} 
<!--downloads-->
{{endif}} 
{{if theme.profile_items == 'message'}} 
<!--message-->
{{endif}} 
{{if theme.profile_items == 'posts'}} 
<!--posts-->
{{endif}} 
{{if theme.profile_items == 'topics'}}
<!--topics-->
{{endif}}

Однако, когда я выбираю один элемент, он отображается на переднем плане, но когда я выбираю более одного элемента, ничего не отображается.

В чем может быть проблема?

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

57 минут назад, turk сказал:

Привет!

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

<?php

return new \IPS\Helpers\Form\Select("core_theme_setting_title_{$row['sc_id']}", $value ? explode(',', $value) : array(), false, array( 'options' => array (
  'activity' => 'Activity', 
  'forumtopic' => 'Forums',  
  'pages' => 'Pages', 
  'downloads' => 'Downloads', 
  'message' => 'message',
  'posts' => 'posts',
  'topics' => 'topics',
  ), 'parse' => 'normal', 'multiple' => true, 'unlimited' => '*', 'unlimitedLang' => 'all_items' ), NULL, NULL, NULL, 'theme_setting_' . $row['sc_key'] );

И использовать следующие коды в редакторе темы:

{{if theme.profile_items == 'activity'}} 
<!--activity-->
{{endif}} 
{{if theme.profile_items == 'forumtopic'}} 
<!--forumtopic-->
{{endif}} 
{{if theme.profile_items == 'pages'}} 
<!--pages-->
{{endif}} 
{{if theme.profile_items == 'downloads'}} 
<!--downloads-->
{{endif}} 
{{if theme.profile_items == 'message'}} 
<!--message-->
{{endif}} 
{{if theme.profile_items == 'posts'}} 
<!--posts-->
{{endif}} 
{{if theme.profile_items == 'topics'}}
<!--topics-->
{{endif}}

Однако, когда я выбираю один элемент, он отображается на переднем плане, но когда я выбираю более одного элемента, ничего не отображается.

В чем может быть проблема?

А где цикл foreach?

{{foreach value=profile_item from=theme.profile_items}}
{{if profile_item == 'activity'}}
<!--activity-->
{{endif}}
{{if profile_item == 'forumtopic'}}
<!--forumtopic-->
{{endif}}
{{if profile_item == 'pages'}}
<!--pages-->
{{endif}}
{{if profile_item == 'downloads'}}
<!--downloads-->
{{endif}}
{{if profile_item == 'message'}}
<!--message-->
{{endif}}
{{if profile_item == 'posts'}}
<!--posts-->
{{endif}}
{{if profile_item == 'topics'}}
<!--topics-->
{{endif}}
{{endforeach}}

 

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

1 час назад, ryancoolround сказал:
{{foreach value=profile_item from=theme.profile_items}}

Этот метод не сработал.

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

А если эту строку:

В 12.05.2023 в 11:21, turk сказал:
return new \IPS\Helpers\Form\Select("core_theme_setting_title_{$row['sc_id']}", $value ? explode(',', $value) : array(), false, array( 'options' => array (

Заменить на эту строку:

return new \IPS\Helpers\Form\Select("core_theme_setting_title_{$row['sc_id']}", $value instanceof \IPS\Helpers\Form\Select ? $value->value : array(), false, array( 'options' => array (

Ну и соответственно сам шаблон подправить под правильный для актуальных версий синтаксис:

{{if in_array('activity', theme.theme_settings['core_theme_setting_title_{$row.sc_id}'].value)}}
<!--activity-->
{{endif}}

Опять же, это эксперименты и догадки, не более.

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

@turk you can use blow snippet:

{{if mb_strstr( theme.profile_item, 'activity' )}}

 

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

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

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

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

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

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

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

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

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

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

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