taxonomy_meta_box_sanitize_cb_input( string $taxonomy, array|string $terms )
Sanitizes POST values from an input taxonomy metabox.
Parameters
- $taxonomy
-
(string) (Required) The taxonomy name.
- $terms
-
(array|string) (Required) Raw term data from the 'tax_input' field.
Return
(array)
Source
File: wp-admin/includes/post.php
function taxonomy_meta_box_sanitize_cb_input( $taxonomy, $terms ) { /* * Assume that a 'tax_input' string is a comma-separated list of term names. * Some languages may use a character other than a comma as a delimiter, so we standardize on * commas before parsing the list. */ if ( ! is_array( $terms ) ) { $comma = _x( ',', 'tag delimiter' ); if ( ',' !== $comma ) { $terms = str_replace( $comma, ',', $terms ); } $terms = explode( ',', trim( $terms, " \n\t\r\0\x0B," ) ); } $clean_terms = array(); foreach ( $terms as $term ) { // Empty terms are invalid input. if ( empty( $term ) ) { continue; } $_term = get_terms( array( 'taxonomy' => $taxonomy, 'name' => $term, 'fields' => 'ids', 'hide_empty' => false, ) ); if ( ! empty( $_term ) ) { $clean_terms[] = (int) $_term[0]; } else { // No existing term was found, so pass the string. A new term will be created. $clean_terms[] = $term; } } return $clean_terms; }
Changelog
Version | Description |
---|---|
5.1.0 | Introduced. |
© 2003–2021 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/functions/taxonomy_meta_box_sanitize_cb_input