부모 범주의 자식 가져 오기
4 대답
- 투표
-
- 2012-11-29
'parent'문자열을
get_categories
에 전달할 수 없습니다. a>. 부모의 ID를 전달해야합니다.$categories=get_categories( array( 'parent' => $cat->cat_ID ) );
사용할 수있는 두 개의 유사하지만 같지 않은 "하위 가져 오기"매개 변수 가 있습니다. .
<인용구>자녀 (정수) ID로 식별되는 범주의 하위 항목 (예 : 자녀 및 손자) 인 모든 범주를 표시합니다. 그곳에 이 매개 변수의 기본값은 없습니다. 매개 변수를 사용하는 경우 hide_empty 매개 변수가false로 설정됩니다.
부모 (정수) ID로 식별되는 카테고리의 직계 하위 항목 (예 : 하위 항목 만) 인 카테고리 만 표시합니다. 이것은 'child_of'매개 변수처럼 작동하지 않습니다. 이에 대한 기본값이 없습니다. 매개 변수. [2.8.4에서]
이제
$categories
를 반복해야합니다. 배열 만 에코 할 수는 없습니다.foreach ($categories as $c) { var_dump($c); // what you really want instead of var_dump is something to // to create markup-- list items maybe, For example... echo '<li>'.$c->cat_name.'</li>'; }
You can't just pass the string "parent" to
get_categories
. You have to pass the ID of the parent.$categories=get_categories( array( 'parent' => $cat->cat_ID ) );
Notice that there are two similar but not equal "get child" parameters that you can use.
child_of (integer) Display all categories that are descendants (i.e. children & grandchildren) of the category identified by its ID. There is no default for this parameter. If the parameter is used, the hide_empty parameter is set to false.
parent (integer) Display only categories that are direct descendants (i.e. children only) of the category identified by its ID. This does NOT work like the 'child_of' parameter. There is no default for this parameter. [In 2.8.4]
Now you need to loop over the
$categories
. You can't just echo an array.foreach ($categories as $c) { var_dump($c); // what you really want instead of var_dump is something to // to create markup-- list items maybe, For example... echo '<li>'.$c->cat_name.'</li>'; }
-
불행히도 그것은 나에게 Array의 출력을주는 것입니다.가져온 값이 없습니다.Unfortunately, that is just giving me an output of Array. No values are being pulled in.
- 0
- 2012-11-29
- Chris Da Sie
-
'Array'는 배열을 에코하려고 할 때 발생합니다.배열을 반복하고 개별 요소를 에코해야합니다.'Array' is what happens when you try to echo an array. You need to loop over the array and echo the individual elements.
- 0
- 2012-11-29
- s_ha_dum
-
'hide_empty'=>false를 추가 할 수 있습니다.빈 카테고리도 표시합니다.You might want to add 'hide_empty' => false. To also show empty categories.
- 2
- 2018-06-18
- Floris
-
- 2018-04-25
archive.php 파일에서 아래 코드를 사용하십시오. 이 코드가 도움이 될 것입니다.
<?php $term = get_queried_object(); $children = get_terms( $term->taxonomy, array( 'parent' => $term->term_id, 'hide_empty' => false ) ); if ( $children ) { foreach( $children as $subcat ) { echo '<li><a href="' . esc_url(get_term_link($subcat, $subcat->taxonomy)) . '">' . $subcat->name . '</a></li>'; } } ?>
Use the code below in your archive.php file. This code will help you:
<?php $term = get_queried_object(); $children = get_terms( $term->taxonomy, array( 'parent' => $term->term_id, 'hide_empty' => false ) ); if ( $children ) { foreach( $children as $subcat ) { echo '<li><a href="' . esc_url(get_term_link($subcat, $subcat->taxonomy)) . '">' . $subcat->name . '</a></li>'; } } ?>
-
답변을 ** [수정]하고 ** 설명을 추가하세요. ** 왜 ** 문제가 해결 될 수 있나요?Please **[edit] your answer**, and add an explanation: **why** could that solve the problem?
- 0
- 2018-04-25
- fuxia
-
- 2019-12-22
배열에 값이 없으면 다음 접근 방식을 시도 할 수 있습니다.
$last_categories = get_categories( array( 'taxonomy' => 'product_cat', 'parent' => $sub_category->cat_ID ) );
If there are no values in the array you can try the following approach:
$last_categories = get_categories( array( 'taxonomy' => 'product_cat', 'parent' => $sub_category->cat_ID ) );
-
- 2020-03-02
하위 카테고리를 얻으려면 다음 코드를 사용할 수 있습니다.
$category = get_queried_object(); // this is for getting the parent category on archive or any place the category object is called. $categories=get_categories( array( 'parent' => $category->term_id, 'hide_empty' => false ) );
알림 :-아래에 게시물이없는 카테고리를 표시하기 위해 'hide_empty'=>false를 사용했습니다. 그런 다음 $ categories 배열을 사용하여 마크 업을 반복하고 만듭니다.
To get child categories you can use following code.
$category = get_queried_object(); // this is for getting the parent category on archive or any place the category object is called. $categories=get_categories( array( 'parent' => $category->term_id, 'hide_empty' => false ) );
Notice :- I have used 'hide_empty' => false to show categories with no any posts under it. Then use the $categories array to loop and make your markup.
이 루프에 표시 할 모든 하위 범주를 가져 오려고하는데 코드로 어려움을 겪고 있습니다.이것이 제가 지금까지 가지고있는 것입니다.
어떤 도움이라도 좋을 것입니다