Introduce `required` argument for `wp_dropdown_categories()`.
This allows the HTML5 `required` attribute to be added to the `select` element. Props wzislam, pcarvalho. Fixes #31909. Built from https://develop.svn.wordpress.org/trunk@37465 git-svn-id: http://core.svn.wordpress.org/trunk@37433 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
3b24e53ba7
commit
03fa635ba7
|
@ -314,6 +314,7 @@ function category_description( $category = 0 ) {
|
||||||
*
|
*
|
||||||
* @since 2.1.0
|
* @since 2.1.0
|
||||||
* @since 4.2.0 Introduced the `value_field` argument.
|
* @since 4.2.0 Introduced the `value_field` argument.
|
||||||
|
* @since 4.6.0 Introduced the `required` argument.
|
||||||
*
|
*
|
||||||
* @param string|array $args {
|
* @param string|array $args {
|
||||||
* Optional. Array or string of arguments to generate a categories drop-down element.
|
* Optional. Array or string of arguments to generate a categories drop-down element.
|
||||||
|
@ -351,6 +352,8 @@ function category_description( $category = 0 ) {
|
||||||
* @type string|array $taxonomy Name of the category or categories to retrieve. Default 'category'.
|
* @type string|array $taxonomy Name of the category or categories to retrieve. Default 'category'.
|
||||||
* @type bool $hide_if_empty True to skip generating markup if no categories are found.
|
* @type bool $hide_if_empty True to skip generating markup if no categories are found.
|
||||||
* Default false (create select element even if no categories are found).
|
* Default false (create select element even if no categories are found).
|
||||||
|
* @type bool $required Whether the <select> element should have the HTML5 'required' attribute.
|
||||||
|
* Default false.
|
||||||
* }
|
* }
|
||||||
* @return string HTML content only if 'echo' argument is 0.
|
* @return string HTML content only if 'echo' argument is 0.
|
||||||
*/
|
*/
|
||||||
|
@ -376,6 +379,7 @@ function wp_dropdown_categories( $args = '' ) {
|
||||||
'hide_if_empty' => false,
|
'hide_if_empty' => false,
|
||||||
'option_none_value' => -1,
|
'option_none_value' => -1,
|
||||||
'value_field' => 'term_id',
|
'value_field' => 'term_id',
|
||||||
|
'required' => false,
|
||||||
);
|
);
|
||||||
|
|
||||||
$defaults['selected'] = ( is_category() ) ? get_query_var( 'cat' ) : 0;
|
$defaults['selected'] = ( is_category() ) ? get_query_var( 'cat' ) : 0;
|
||||||
|
@ -414,9 +418,10 @@ function wp_dropdown_categories( $args = '' ) {
|
||||||
$name = esc_attr( $r['name'] );
|
$name = esc_attr( $r['name'] );
|
||||||
$class = esc_attr( $r['class'] );
|
$class = esc_attr( $r['class'] );
|
||||||
$id = $r['id'] ? esc_attr( $r['id'] ) : $name;
|
$id = $r['id'] ? esc_attr( $r['id'] ) : $name;
|
||||||
|
$required = $r['required'] ? 'required' : '';
|
||||||
|
|
||||||
if ( ! $r['hide_if_empty'] || ! empty( $categories ) ) {
|
if ( ! $r['hide_if_empty'] || ! empty( $categories ) ) {
|
||||||
$output = "<select name='$name' id='$id' class='$class' $tab_index_attribute>\n";
|
$output = "<select $required name='$name' id='$id' class='$class' $tab_index_attribute>\n";
|
||||||
} else {
|
} else {
|
||||||
$output = '';
|
$output = '';
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
*
|
*
|
||||||
* @global string $wp_version
|
* @global string $wp_version
|
||||||
*/
|
*/
|
||||||
$wp_version = '4.6-alpha-37464';
|
$wp_version = '4.6-alpha-37465';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
||||||
|
|
Loading…
Reference in New Issue