Go to file
Boone Gorges eebe549408 When creating terms, avoid false dupe checks due to accented characters.
`wp_insert_term()` doesn't allow the creation of a term when the term `name`
is the same as another term in the same hierarchy level of the same taxonomy.
Previously, this duplicate check used `get_term_by( 'name' )`, which uses the
database collation to determine sameness. But common collations do not
distinguish between accented and non-accented versions of a character. As a
result, it was impossible to create a term 'Foo' if a sibling term with an
accented character existed.

We address this problem by using `get_terms()` to do the duplicate check. This
query returns all potentially matching terms. We then do a stricter check
for equivalence in PHP, before determining whether one of the matches is
indeed a duplicate.

Props boonebgorges, tyxla, geza.miklo, mehulkaklotar.
Fixes #33864.

git-svn-id: https://develop.svn.wordpress.org/trunk@34809 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-03 20:24:09 +00:00
src When creating terms, avoid false dupe checks due to accented characters. 2015-10-03 20:24:09 +00:00
tests When creating terms, avoid false dupe checks due to accented characters. 2015-10-03 20:24:09 +00:00
tools/i18n i18n tools: Use https for msgid-bugs-address URLs. 2015-07-27 19:37:13 +00:00
.editorconfig Use HTTPS URLs for codex.wordpress.org. 2015-04-12 21:28:58 +00:00
.gitignore Ignore .DS_Store files. 2015-03-13 18:11:33 +00:00
.jshintrc Update grunt-contrib-jshint to 0.11.0 2015-03-06 21:07:35 +00:00
.travis.yml Add PHP Nightlies to the test suite 2015-10-02 16:50:53 +00:00
Gruntfile.js Speed up browserify builds, don't uglify the media builds on watch. 2015-09-09 02:11:23 +00:00
package.json Build Tools: Update grunt-contrib-uglify to 0.9.2. 2015-08-25 03:27:23 +00:00
phpunit.xml.dist Exclude external-http tests when running phpunit. 2014-11-10 14:48:28 +00:00
wp-cli.yml Introduce default wp-cli.yml for core development. 2014-04-30 21:35:18 +00:00
wp-config-sample.php Lightly clean up and improve inline documentation in wp-config-sample.php. 2015-05-10 00:05:30 +00:00
wp-tests-config-sample.php Update wp-tests-config-sample.php to run with WP_DEBUG by default. see #25282. 2013-09-23 16:17:59 +00:00