Posted 12 мая, 20231 yr comment_193288 Привет! Я хочу добавить настройку выпадающего списка в мою тему, для этого я использую следующий код: <?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}} Однако, когда я выбираю один элемент, он отображается на переднем плане, но когда я выбираю более одного элемента, ничего не отображается. В чем может быть проблема? Link to comment https://ipbmafia.ru/topic/25668-dobavit-nastrojku-temy/ Share on other sites Больше вариантов
12 мая, 20231 yr comment_193289 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}} Link to comment https://ipbmafia.ru/topic/25668-dobavit-nastrojku-temy/?&do=findComment&comment=193289 Share on other sites Больше вариантов
12 мая, 20231 yr Author comment_193291 1 час назад, ryancoolround сказал: {{foreach value=profile_item from=theme.profile_items}} Этот метод не сработал. Link to comment https://ipbmafia.ru/topic/25668-dobavit-nastrojku-temy/?&do=findComment&comment=193291 Share on other sites Больше вариантов
13 мая, 20231 yr comment_193306 А если эту строку: В 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}} Опять же, это эксперименты и догадки, не более. Link to comment https://ipbmafia.ru/topic/25668-dobavit-nastrojku-temy/?&do=findComment&comment=193306 Share on other sites Больше вариантов
13 мая, 20231 yr comment_193309 @turk you can use blow snippet: {{if mb_strstr( theme.profile_item, 'activity' )}} Link to comment https://ipbmafia.ru/topic/25668-dobavit-nastrojku-temy/?&do=findComment&comment=193309 Share on other sites Больше вариантов
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.