Liệt kê tất cả các danh mục con từ danh mục


Câu trả lời:


29

Có, bạn có thể sử dụng get_clists () bằng cách sử dụng 'child_of'thuộc tính. Ví dụ: tất cả các danh mục phụ của danh mục có ID là 17:

$args = array('child_of' => 17);
$categories = get_categories( $args );
foreach($categories as $category) { 
    echo '<p>Category: <a href="' . get_category_link( $category->term_id ) . '" title="' . sprintf( __( "View all posts in %s" ), $category->name ) . '" ' . '>' . $category->name.'</a> </p> ';
    echo '<p> Description:'. $category->description . '</p>';
    echo '<p> Post Count: '. $category->count . '</p>';  
}

Điều này sẽ nhận được tất cả các loại là con cháu (ví dụ: con và cháu).

Nếu bạn muốn hiển thị chỉ phân loại, có hậu duệ trực tiếp (trẻ em tức là chỉ), bạn có thể sử dụng 'parent'thuộc tính.

$args = array('parent' => 17);
$categories = get_categories( $args );
foreach($categories as $category) { 
    echo '<p>Category: <a href="' . get_category_link( $category->term_id ) . '" title="' . sprintf( __( "View all posts in %s" ), $category->name ) . '" ' . '>' . $category->name.'</a> </p> ';
    echo '<p> Description:'. $category->description . '</p>';
    echo '<p> Post Count: '. $category->count . '</p>';  
}

6
Chỉ là một gợi ý: Với sự phổ biến của các loại bài đăng và phân loại tùy chỉnh, tôi cảm thấy nên đề xuất hơn get_terms, bởi vì điều này giúp người dùng làm quen với các hàm tìm nạp thuật ngữ chung, trong đó các hàm danh mục có phần cụ thể đối với phân loại tích hợp ( mặc dù không phải trong mọi trường hợp). Tất nhiên, bạn không cần phải đồng ý, đó chỉ là một gợi ý ...;)
t31os

2
Tôi đồng ý rằng get_terms () có thể tốt hơn.
Django Reinhardt

@ t31os - bạn có thể gửi câu trả lời bằng cách sử dụng get_termskhông?
vsync
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.