カテゴリーツリーを配列として取得するサンプル : WordPress

Pocket

カテゴリーツリーを配列として取得するサンプルです。

category_tree

「テスト1」カテゴリーのidが9のときは下記のように呼び出します。

<?php
ini_set( 'xdebug.var_display_max_children', - 1 );
ini_set( 'xdebug.var_display_max_data', - 1 );
ini_set( 'xdebug.var_display_max_depth', - 1 );
$records = CategoriesTree::get_records_for_category_tree( 9, array() );
$data    = CategoriesTree::set_records_for_category_tree( $records );
$tree    = CategoriesTree::get_category_tree( $data[0], array( $data[1][0] ) );
var_dump( $tree );
?>


array (size=1)
  0 => 
    array (size=4)
      'id' => int 9
      'parent_id' => int 0
      'name' => string 'テスト1' (length=10)
      'children' => 
        array (size=3)
          0 => 
            array (size=4)
              'id' => int 10
              'parent_id' => int 9
              'name' => string 'テスト1-1' (length=12)
              'children' => 
                array (size=2)
                  0 => 
                    array (size=4)
                      'id' => int 11
                      'parent_id' => int 10
                      'name' => string 'テスト1-1-1' (length=14)
                      'children' => 
                        array (size=1)
                          0 => 
                            array (size=3)
                              'id' => int 13
                              'parent_id' => int 11
                              'name' => string 'テスト1-1-1-1' (length=16)
                  1 => 
                    array (size=3)
                      'id' => int 12
                      'parent_id' => int 10
                      'name' => string 'テスト1-1-2' (length=14)
          1 => 
            array (size=4)
              'id' => int 14
              'parent_id' => int 9
              'name' => string 'テスト1-2' (length=12)
              'children' => 
                array (size=2)
                  0 => 
                    array (size=3)
                      'id' => int 16
                      'parent_id' => int 14
                      'name' => string 'テスト1-2-1' (length=14)
                  1 => 
                    array (size=3)
                      'id' => int 17
                      'parent_id' => int 14
                      'name' => string 'テスト1-2-2' (length=14)
          2 => 
            array (size=3)
              'id' => int 15
              'parent_id' => int 9
              'name' => string 'テスト1-3' (length=12)

コメント

No comments yet.

コメントの投稿

改行と段落タグは自動で挿入されます。
メールアドレスは表示されません。