Skip to content

Commit 9abf35c

Browse files
Code Modernization: Fix null to non-nullable deprecation in term_exists().
The `term_exists()` function expects a string or an integer for the `$term` parameter. It validates for integer, but not for string or `null`. One of the pre-existing test cases, passed `null` to the function, leading to a `trim(): Passing null to parameter #1 ($string) of type string is deprecated` notice on PHP 8.1. Fixed now by doing a cursory check on the variable at the start of the function and bowing out early in case the `$term` is `null`. The issue was discovered via and is already covered by the `Tests_TermExists::test_term_exists_unknown()` test method. Follow-up to [15220]. [38716]. Props jrf, hellofromTonya. See #53635. git-svn-id: https://develop.svn.wordpress.org/trunk@51796 602fd350-edb4-49c9-b593-d223f7449a82
1 parent ce168ea commit 9abf35c

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

src/wp-includes/taxonomy.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1480,6 +1480,10 @@ function unregister_term_meta( $taxonomy, $meta_key ) {
14801480
function term_exists( $term, $taxonomy = '', $parent = null ) {
14811481
global $wpdb;
14821482

1483+
if ( null === $term ) {
1484+
return null;
1485+
}
1486+
14831487
$select = "SELECT term_id FROM $wpdb->terms as t WHERE ";
14841488
$tax_select = "SELECT tt.term_id, tt.term_taxonomy_id FROM $wpdb->terms AS t INNER JOIN $wpdb->term_taxonomy as tt ON tt.term_id = t.term_id WHERE ";
14851489

0 commit comments

Comments
 (0)