wp_terms_checklist()
Displays/retrieve the UL list of checkbox input elements input type="checkbox" labelled with term names.
Taxonomy-independent version of wp_category_checklist().
To work on the front-end, you need to connect the file:
require_once ABSPATH .'/wp-admin/includes/template.php';
Hooks from the function
Return
String
. If echo argument is set to true, displays HTML code, otherwise returns the HTML.
Usage pattern
wp_terms_checklist( $post_id, [ 'descendants_and_self' => 0, 'selected_cats' => false, 'popular_cats' => false, //'walker' => null, 'taxonomy' => 'category', 'checked_ontop' => true, 'echo' => true, ] );
Usage
wp_terms_checklist( $post_id, $args );
- $post_id(int)
- Post ID.
- $args(array|string)
Array or string of arguments for generating a terms checklist.
Default: empty array
-
descendants_and_self(int)
ID of the category to output along with its descendants. -
selected_cats(int[])
Array of category IDs to mark as checked.
Default: false -
popular_cats(int[])
Array of category IDs to receive the "popular-category" class.
Default: false -
walker(Walker)
Walker object to use to build the output.
Default: empty which results in a Walker_Category_Checklist instance being used -
taxonomy(string)
Taxonomy to generate the checklist for.
Default: 'category' -
checked_ontop(true|false)
Whether to move checked items out of the hierarchy and to the top of the list.
Default: true - echo(true|false)
Whether to echo the generated markup. False to return the markup instead of echoing it.
Default: true
-
Examples
#1 Get the checklist of taxonomy elements
Let's say we have taxonomy wpfunc
and we need to list the checkboxes of element 51 and all its children elements. Also, specify dedicated and popular items.
require_once ABSPATH .'/wp-admin/includes/template.php'; $args = [ 'descendants_and_self' => 51, 'selected_cats' => array(219, 52), 'popular_cats' => array(219, 52), 'taxonomy' => 'wpfunc', 'checked_ontop' => true ]; echo '<ul>'; wp_terms_checklist( 0, $args ); echo '</ul>';
Displays:
<ul> <li id='wpfunc-52' class="popular-category"> <label class="selectit"><input value="52" type="checkbox" name="tax_input[wpfunc][]" id="in-wpfunc-52" checked='checked' /> Comments</label> </li> <li id='wpfunc-219' class="popular-category"> <label class="selectit"><input value="219" type="checkbox" name="tax_input[wpfunc][]" id="in-wpfunc-219" checked='checked' /> Comment pagination</label> </li> <li id='wpfunc-51'> <label class="selectit"><input value="51" type="checkbox" name="tax_input[wpfunc][]" id="in-wpfunc-51" /> Comments, Pings...</label> <ul class='children'> <li id='wpfunc-218'> <label class="selectit"><input value="218" type="checkbox" name="tax_input[wpfunc][]" id="in-wpfunc-218" /> Comments Loop</label> </li> </ul> </li> </ul>
Changelog
Since 3.0.0 | Introduced. |
Since 4.4.0 | Introduced the $echo argument. |