Changeset 34809
- Timestamp:
- 10/03/2015 08:24:09 PM (9 years ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/wp-includes/taxonomy-functions.php
r34787 r34809 2517 2517 * unless a unique slug has been explicitly provided. 2518 2518 */ 2519 if ( $name_match = get_term_by( 'name', $name, $taxonomy ) ) { 2519 $name_matches = get_terms( $taxonomy, array( 2520 'name' => $name, 2521 'hide_empty' => false, 2522 ) ); 2523 2524 /* 2525 * The `name` match in `get_terms()` doesn't differentiate accented characters, 2526 * so we do a stricter comparison here. 2527 */ 2528 $name_match = null; 2529 if ( $name_matches ) { 2530 foreach ( $name_matches as $_match ) { 2531 if ( strtolower( $name ) === strtolower( $_match->name ) ) { 2532 $name_match = $_match; 2533 break; 2534 } 2535 } 2536 } 2537 2538 if ( $name_match ) { 2520 2539 $slug_match = get_term_by( 'slug', $slug, $taxonomy ); 2521 2540 if ( ! $slug_provided || $name_match->slug === $slug || $slug_match ) { -
trunk/tests/phpunit/tests/term/wpInsertTerm.php
r34720 r34809 629 629 } 630 630 631 /** 632 * @ticket 33864 633 */ 634 public function test_wp_insert_term_with_and_without_accents() { 635 register_taxonomy( 'wptests_tax', 'post' ); 636 637 $t1 = $this->factory->term->create( array( 638 'name' => 'Foó', 639 'taxonomy' => 'wptests_tax', 640 ) ); 641 $t2 = $this->factory->term->create( array( 642 'name' => 'Foo', 643 'taxonomy' => 'wptests_tax', 644 ) ); 645 646 $this->assertInternalType( 'int', $t1 ); 647 $this->assertInternalType( 'int', $t2 ); 648 $this->assertNotEquals( $t1, $t2 ); 649 650 $term_2 = get_term( $t2, 'wptests_tax' ); 651 $this->assertSame( $t2, $term_2->term_id ); 652 $this->assertSame( 'Foo', $term_2->name ); 653 654 } 655 631 656 /** Helpers **********************************************************/ 632 657
Note: See TracChangeset
for help on using the changeset viewer.