• список таксо на конечном этапе получаю так

    foreach( $categories as $cat ){ echo $cat->name; }

    все итемы из категории вижу.

    теперь. есть некий массив

    array(‘0’ => ‘Значение 1’, ‘2’ => ‘Значение 2’, ‘3’ => ‘Значение 3’ );

    Вопрос: как полученный список итемов таксо воткнуть в массив (заменить или добавить значения в нем). Что то не получается так

    array(foreach( $categories as $cat ){ $cat->name; } );

Просмотр 4 ответов — с 1 по 4 (всего 4)
  • Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Если нужен список рубрик в виде массива, его можно получить так:

    $cat_names = wp_list_pluck( $categories, 'name' );

    или так:

    $cat_names = array();
    foreach ( $categories as $cat ) {
    	$cat_names[] = $cat->name;
    }

    Если этот массив нужно объединить с каким-то другим, можно воспользоваться функцией array_merge().

    большое спасибо.
    первый вариант не отработал (вернее видно, что выпадающий список увеличился, но там нет значений)
    второй Ок

    array(
    				'id'			=>	'pip',
    				'title'			=>	'Учасник',
    				'type'			=>	'select', // выпадающий список
    //				'desc'			=>	'Выберите из списка',
    				'cap'			=>	$mycap,
    				'std'			=>	'',
    				'args'			=>	$cat_names

    (последний параметр) то, что надо (вместе с примером вашим выше).
    это я вот по этому примеру

    http://truemisha.ru/blog/wordpress/meta-boxes.html

    затащил с вашей помощью список из другой рубрики в выпадающий список к одному из типов полей

    связанная тема
    https://ru.forums.wordpress.org/topic/advanced-custom-fields-466?replies=14

    вопрос еще.

    а кроме выпадающих списков чтото типа листбокс иле чеклистбокс с несколькими вариантами выбора есть (а так же с отображением дерева структуры)?
    это последнее, что мне не хватает.

    а кроме выпадающих списков чтото типа листбокс иле чеклистбокс с несколькими вариантами выбора есть (а так же с отображением дерева структуры)?
    это последнее, что мне не хватает.

    для двух уровней вложенности я так делал

    <?php
     $news_cats = get_categories("hide_empty=0&parent=0");
    foreach ($news_cats as $categ) {
    echo '<br><div class="ttt"><b>'.$categ->cat_name.'</b><br>';
    
    $news_catss = get_categories("hide_empty=0&parent=$categ->cat_ID");
    foreach ($news_catss as $categs) {
    echo $categs->cat_name.' <input name="com" value="'.$categs->cat_ID.'" type="checkbox"><br>';
    } 
    
    echo '</div>';
    }
    ?>

    в css все оформляется,

    можно конеш. и третий добавить

    за ответ спасибо.
    но както.. не то. а если 10 вложений будет, там все эти проверки на вложенность и потом 10 get_cat? 🙁

Просмотр 4 ответов — с 1 по 4 (всего 4)

Тема «список значений категории в массив» закрыта для новых ответов.