Intereting Posts
Неустранимая ошибка после изменений в functions.php, даже с исходным файлом Почему $ wpdb-> get_results не работает на определенных таблицах, но не у других (у которых есть данные)? Создание пользовательского виджета WordPress и остановка js от запуска дважды (один раз в активном виджетах один раз в селекторе виджета)? get_results внезапно не работает на одной таблице Штрих-код функции У вас нет прав для редактирования этого пользователя Выборочное скрытие или разрешение эскизов изображений с изображением на первой странице Отключить плагин на странице администратора Как повторно запустить основной запрос на основе значения метаданных? Скопировать сообщение из категории в тип сообщения custum Имя автора комментария Добавить код только для сообщений в блоге post_content обрезается на пустое место на $ wpdb-> update один термин два таксономии? WordPress в подкаталоге, но не изображениях

Получить конкретные боковые панели $ wp_registered_sidebars

У меня есть следующие функции, как в этом pastebin в дочерней теме:

http://pastebin.com/uzjmXiyN

Эти функции создают раскрывающееся окно, в котором вы можете выбрать боковую панель для использования на определенной странице. Все хорошо работает после большого пота. Моя единственная проблема – это

$ wp_registered_sidebars

функции в следующем фрагменте кода

foreach($wp_registered_sidebars as $sidebar_id => $sidebar) { $output .= "<option"; if($sidebar_id == $val) $output .= " selected='selected'"; $output .= " value='".$sidebar_id."'>".$sidebar['name']."</option>"; } $output .= "</select>"; echo $output; 

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

$ dynamic_widget_areas

массив. Если я заменю

$ wp_registered_sidebars

с

$ dynamic_widget_areas

Я получаю следующие ошибки:

Примечание. Неопределенная переменная: dynamic_widget_area … и т. Д.

а также

Предупреждение: неверный аргумент для foreach () … и т. Д.

Каков правильный способ отображения только определенных боковых панелей.

Solutions Collecting From Web of "Получить конкретные боковые панели $ wp_registered_sidebars"

Это общий вопрос PHP. Вам нужно проверить, установлен ли ключ $sidebar_id в $dynamic_widget_areas при прохождении цикла. Это доказательство кода концепции должно дать вам эту идею.

 $dynamic_widget_areas = array( 'sidebar-1' => 'stuff', ); global $wp_registered_sidebars; $output = ''; foreach($wp_registered_sidebars as $sidebar_id => $sidebar) { $output .= "<option"; if(isset($dynamic_widget_areas[$sidebar_id])) { if($sidebar_id == $val) { $output .= " selected='selected'"; } $output .= " value='".$sidebar_id."'>".$sidebar['name']."</option>"; } } $output .= "</select>";