Intereting Posts
Изображения, загруженные на внешний интерфейс, отображаются правильно, но не в медиаредакторе. Разработка темы для многоязычной установки WordPress Отключить только основной канал? Как заставить get_template_part сначала сначала проверять дочернюю тему? Запретить подписчикам изменять определенные поля профиля Alert Email при изменении любой почты или страницы Сообщения WordPress в аккордеоне не отображаются на некоторых ПК Переопределить значения настраиваемых параметров для каждой базы меню Преобразование вывода функции the_permalink () в строку Правила перезаписи внешнего / не-WP Как настроить значок страницы defualt для меню администратора? Каков наилучший способ для дезинфекции данных? Добавление пользовательской Javascript для детской темы скелета Поддомен WordPress wp-admin перенаправляется в основной домен Подготовленные утверждения неправильно использовались в ACF?

Получить имена категорий в качестве массива для использования в настройках темы

Я создаю тему, а для страницы настроек темы я следую этому руководству: http://wp.tutsplus.com/tutorials/using-the-settings-api-part-1-create-a-theme-options-page/

Теперь я хочу, чтобы с каждой категорией был установлен флажок. Это то, что я должен был иметь:

$options[] = array( "section" => "zzz", "id" => HS_SHORTNAME . "_multicheckbox_inputs", "title" => __( 'Multi-Checkbox', 'hs_textdomain' ), "desc" => __( 'Some Description', 'hs_textdomain' ), "type" => "multi-checkbox", "std" => '', "choices" => array( __('Category 1','hs_textdomain') . "|category1", __('Category 2','hs_textdomain') . "|category2", __('Category 3','hs_textdomain') . "|category3") ); 

Однако я попробовал несколько вариантов, но ни один из них не дал мне точно так, как показано выше. Я думаю, что ответ близок к функции get_categories () без везения. Также попробовали:

 function my_list_cats() { $cats = get_categories(); foreach($cats as $cat) { $catsArray[] = __('' . $cat->cat_name . '','hs_textdomain') . "|" . $cat->category_nicename . ""; } echo implode(', ', $catsArray); } 

А потом:

 "choices" => array(my_list_cats()) 

Но не повезло. Кто-нибудь знает решение? большое спасибо

Solutions Collecting From Web of "Получить имена категорий в качестве массива для использования в настройках темы"

Спасибо Майкл за подсказку. Я, наконец, понял. Решение состоит в следующем:

 $options[] = array( "section" => "zzz", "id" => HS_SHORTNAME . "_multicheckbox_inputs", "title" => __( 'Multi-Checkbox', 'hs_textdomain' ), "desc" => __( 'Some Description', 'hs_textdomain' ), "type" => "multi-checkbox", "std" => '', "choices" => my_list_cats() ); 

И в functions.php:

 function my_list_cats() { $cats = get_categories(); foreach($cats as $cat) { $catsArray[] = __('' . $cat->cat_name . '','hs_textdomain') . "|" . $cat->category_nicename . ""; } return $catsArray; } 

Еще раз спасибо!