Commit Graph

708 Commits

Author SHA1 Message Date
Boone Gorges 3ceee6cd24 Improve 'alias_of' handling in wp_insert_term() and wp_update_term().
Using get_term_by() rather than direct SQL queries to fetch the alias term
fixes a number of issues:

* Object cache for aliased term is properly cleared after update.
* If the aliased term is in the object cache, it's served from there, saving a database query.
* Duplicate 'edit_terms' and 'edited_terms' hooks can be removed.
* Fix a PHP notice when the 'alias_of' term is not found.
* Prevent the incorrect creation of a new term group for the primary term when the 'alias_of' term is not found.

Adds unit tests for 'alias_of' functionality in both functions.

Fixes #29848.
Built from https://develop.svn.wordpress.org/trunk@29862


git-svn-id: http://core.svn.wordpress.org/trunk@29622 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-10-09 02:32:19 +00:00
Boone Gorges 17631e3b8e Explicitly declare hierarchical=false for post_tag in create_initial_taxonomies().
In certain edge cases, such as during the automated test suite,
create_initial_taxonomies() can be called in a situation where a non-default
permastruct setting has been saved outside of wp-admin. This causes the
'hierarchical' setting for the post_tag taxonomy to remain unset, leading to
PHP notices in get_term_link().

See #29827.
Built from https://develop.svn.wordpress.org/trunk@29859


git-svn-id: http://core.svn.wordpress.org/trunk@29620 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-10-09 00:58:20 +00:00
Boone Gorges 0c64fe335a In get_terms(), select term taxonomy count for all values of 'fields'.
Not having the count caused queries with 'fields' values of 'id=>name' and
'id=>slug' to return incorrect results when querying a hierarchical taxonomy
with 'hide_empty=true'.

Includes unit tests for get_terms() when using various combinations of 'fields',
'hide_empty', and 'hierarchical' arguments.

Props technical_mastermind.
Fixes #29859.
Built from https://develop.svn.wordpress.org/trunk@29845


git-svn-id: http://core.svn.wordpress.org/trunk@29608 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-10-06 22:05:18 +00:00
Scott Taylor d4d1fcda0f `wp_update_term()` should mimic `wp_insert_term()` and set a value for `$term_group` before the `alias_of` logic runs. This ensures that `$term_group` exists when `compact()` is called.
See [28461].
Fixes #29278.

Built from https://develop.svn.wordpress.org/trunk@29549


git-svn-id: http://core.svn.wordpress.org/trunk@29325 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-20 17:04:18 +00:00
John Blackbourn 93c80ac896 Docblock corrections for `get_the_terms()` function and corresponding filter, and `registered_taxonomy` action. Fixes #29183.
Built from https://develop.svn.wordpress.org/trunk@29467


git-svn-id: http://core.svn.wordpress.org/trunk@29245 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-11 21:17:17 +00:00
Sergey Biryukov ef14aed9a2 Use an existing string.
see #19205.
Built from https://develop.svn.wordpress.org/trunk@29234


git-svn-id: http://core.svn.wordpress.org/trunk@29018 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-18 23:56:14 +00:00
Scott Taylor cf3deb2ecb Avoid a race condition when multiple windows are open so that orphaned terms cannot be created by accident.
Adds a unit test.

Props dlh.
Fixes #19205.

Built from https://develop.svn.wordpress.org/trunk@29196


git-svn-id: http://core.svn.wordpress.org/trunk@28980 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-16 21:52:15 +00:00
Drew Jaynes 164f31e8e8 Add indentation for the hash notation missed in [29128].
See #28841.

Built from https://develop.svn.wordpress.org/trunk@29129


git-svn-id: http://core.svn.wordpress.org/trunk@28914 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-13 04:18:15 +00:00
Drew Jaynes 862cc336d2 Convert default arguments documentation for `get_terms()` into a hash notation.
See #28841.

Built from https://develop.svn.wordpress.org/trunk@29128


git-svn-id: http://core.svn.wordpress.org/trunk@28913 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-13 04:15:16 +00:00
Scott Taylor fabec026c2 The 2nd argument to `array_unique()` was added to PHP in 5.2.9, so don't use it. We have to use our own code to return unique terms when `fields => all` in `wp_get_object_terms()`.
See #28843 and [28583].

Built from https://develop.svn.wordpress.org/trunk@29119


git-svn-id: http://core.svn.wordpress.org/trunk@28905 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-12 03:54:15 +00:00
Drew Jaynes d4dd02b4ae Remove backticks on `$post` variables in some short parameter descriptions.
See [28653], [28654].
See #28388.

Built from https://develop.svn.wordpress.org/trunk@28976


git-svn-id: http://core.svn.wordpress.org/trunk@28765 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-03 19:28:14 +00:00
Sergey Biryukov 19a3159082 Make default 'template' argument of the_taxonomies() and get_the_taxonomies() translatable.
props juliobox.
fixes #28714.
Built from https://develop.svn.wordpress.org/trunk@28957


git-svn-id: http://core.svn.wordpress.org/trunk@28753 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-02 13:21:16 +00:00
Drew Jaynes 52fbb3c484 Fix parameter description for `$append` in `wp_set_object_terms()` inline docs.
See #26570.

Built from https://develop.svn.wordpress.org/trunk@28952


git-svn-id: http://core.svn.wordpress.org/trunk@28749 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-02 01:39:15 +00:00
Sergey Biryukov 1b23dd8f05 Clarify the docs and add more unit tests for wp_set_object_terms().
props DrewAPicture.
fixes #26570.
Built from https://develop.svn.wordpress.org/trunk@28951


git-svn-id: http://core.svn.wordpress.org/trunk@28748 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-02 01:28:15 +00:00
Sergey Biryukov a8d0832a15 Notify developers when register_post_type() or register_taxonomy() fails because of post type or taxonomy key length.
props mattheweppelsheimer.
fixes #28683.
Built from https://develop.svn.wordpress.org/trunk@28902


git-svn-id: http://core.svn.wordpress.org/trunk@28701 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-29 21:54:14 +00:00
Sergey Biryukov 16595af731 Correct @return value for term_exists().
props simonwheatley.
fixes #28538.
Built from https://develop.svn.wordpress.org/trunk@28753


git-svn-id: http://core.svn.wordpress.org/trunk@28567 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-14 14:57:16 +00:00
Scott Taylor 17b17d1c78 Don't use variable variables in `get_terms()`.
See #27881.

Built from https://develop.svn.wordpress.org/trunk@28736


git-svn-id: http://core.svn.wordpress.org/trunk@28550 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-11 17:41:14 +00:00
Scott Taylor 980744f882 In `wp_insert_term()`, when no slug is provided, check for an existing term by name. If it exists, use that slug instead of calling `sanitize_title( $name )`.
Prevents creating an endless number of terms like `A+` or `$$$$` in any given taxonomy.

Props wonderboymusic, SergeyBiryukov, aaroncampbell.
Fixes #17689.

Built from https://develop.svn.wordpress.org/trunk@28733


git-svn-id: http://core.svn.wordpress.org/trunk@28547 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-11 02:28:14 +00:00
Scott Taylor 05eeb16e30 Replace all uses of `like_escape()` with `$wpdb->esc_like()`.
Props miqrogroove.
See #10041.

Built from https://develop.svn.wordpress.org/trunk@28712


git-svn-id: http://core.svn.wordpress.org/trunk@28528 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-10 00:44:15 +00:00
Drew Jaynes b0877f02a4 Make sure `$post` is properly documented as optional where applicable.
See #28388.

Built from https://develop.svn.wordpress.org/trunk@28653


git-svn-id: http://core.svn.wordpress.org/trunk@28471 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-03 03:53:17 +00:00
Scott Taylor 96d788132a When queries are passed to `WP_Tax_Query`, the value for `operator` is assumed to be uppercase. This is an unnecessary constraint. In `->get_sql()`, cast it using `$operator = strtoupper( $query['operator'] )`.
Props clifgriffin.
Fixes #27557.

Built from https://develop.svn.wordpress.org/trunk@28618


git-svn-id: http://core.svn.wordpress.org/trunk@28442 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-29 17:53:15 +00:00
Scott Taylor 8653099a83 In `wp_get_object_terms()`, before returning terms (and before running them through the 'wp_get_object_terms' filter) - run them through `$terms = array_values( array_unique( $terms, SORT_REGULAR ) )`.
There will be "dupes" when the function is called with `'fields' => 'all_with_object_id'`, but the objects will actually be unique due to the `object_id` addition, so they shouldn't be filtered out. 

Adds unit tests. All other unit tests pass.

Fixes #11003.

Built from https://develop.svn.wordpress.org/trunk@28583


git-svn-id: http://core.svn.wordpress.org/trunk@28408 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-27 03:29:14 +00:00
Scott Taylor 44c4b365a0 When adding queries to `tax_query`: if the query's `field` is `term_taxonomy_id`, don't require `taxonomy` to be specified. In `WP_Tax_Query::transform_query()`, `$query['taxonomy']` is never checked for the 'term_taxonomy_id' `case` because 'term_taxonomy_id' is the primary key being looked up.
Adds unit tests.

Props helen.
Fixes #25284.


Built from https://develop.svn.wordpress.org/trunk@28562


git-svn-id: http://core.svn.wordpress.org/trunk@28388 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-23 19:59:14 +00:00
Scott Taylor b8d469600b These functions import `$wpdb` but do not use it.
See #27882.

Built from https://develop.svn.wordpress.org/trunk@28539


git-svn-id: http://core.svn.wordpress.org/trunk@28365 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-22 17:37:14 +00:00
Scott Taylor eea7052df8 Eliminate the use of `extract()` in `wp_delete_term()`.
See #22400.

Built from https://develop.svn.wordpress.org/trunk@28466


git-svn-id: http://core.svn.wordpress.org/trunk@28293 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-17 14:55:14 +00:00
Scott Taylor bec9993f38 Eliminate the use of `extract()` in `get_terms()`.
See #22400.

Built from https://develop.svn.wordpress.org/trunk@28465


git-svn-id: http://core.svn.wordpress.org/trunk@28292 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-17 14:47:14 +00:00
Scott Taylor c1b5670a00 Eliminate the use of `extract()` in `wp_insert_term()`.
See #22400.

Built from https://develop.svn.wordpress.org/trunk@28464


git-svn-id: http://core.svn.wordpress.org/trunk@28291 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-17 14:16:14 +00:00
Scott Taylor 66c3f62a54 Eliminate use of `extract()` in `wp_update_term()`.
See #22400.

Built from https://develop.svn.wordpress.org/trunk@28461


git-svn-id: http://core.svn.wordpress.org/trunk@28288 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-16 21:29:13 +00:00
Scott Taylor 5a5c86139f Eliminate use of `extract()` in `wp_get_object_terms()`.
There are 3 properties, just set them to variables. They are used too often to warrant a refactor.

See #22400.

Built from https://develop.svn.wordpress.org/trunk@28441


git-svn-id: http://core.svn.wordpress.org/trunk@28268 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-15 19:58:15 +00:00
Scott Taylor eb2bbf9c97 Eliminate the use of `extract()` in `get_objects_in_term()`. Only one property (`order`) was extracted.
See #22400.

Built from https://develop.svn.wordpress.org/trunk@28423


git-svn-id: http://core.svn.wordpress.org/trunk@28250 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-15 05:43:16 +00:00
Scott Taylor 80a37d2fcd Eliminate the use of `extract()` in `WP_Tax_Query::get_sql()`. All unit tests still pass.
See #22400.

Built from https://develop.svn.wordpress.org/trunk@28422


git-svn-id: http://core.svn.wordpress.org/trunk@28249 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-15 05:41:14 +00:00
Scott Taylor e6fad96f5e Eliminate the use of `extract()` in `the_taxonomies()`. Adds unit test.
See #22400.

Built from https://develop.svn.wordpress.org/trunk@28421


git-svn-id: http://core.svn.wordpress.org/trunk@28248 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-15 05:25:14 +00:00
Scott Taylor c0b0b00e6d Eliminate use of `extract()` in `get_the_taxonomies()`. Adds unit test.
See #22400.

Built from https://develop.svn.wordpress.org/trunk@28415


git-svn-id: http://core.svn.wordpress.org/trunk@28242 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-15 03:51:13 +00:00
Sergey Biryukov 3ad1c8897c Correct 'show_in_menu' parameter description in register_taxonomy().
fixes #27943.
Built from https://develop.svn.wordpress.org/trunk@28241


git-svn-id: http://core.svn.wordpress.org/trunk@28069 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-02 11:29:13 +00:00
Andrew Nacin 6ca804ee76 Avoid infinite recursion in get_term_children() when a term is incorrectly a parent of itself.
props kovshenin.
fixes #27123.

Built from https://develop.svn.wordpress.org/trunk@27837


git-svn-id: http://core.svn.wordpress.org/trunk@27671 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-29 06:08:15 +00:00
Drew Jaynes 4bd2c5ce85 Inline documentation for hooks in wp-includes/taxonomy.php.
Props kpdesign for some minor language tweaks.
Fixes #27505.

Built from https://develop.svn.wordpress.org/trunk@27827


git-svn-id: http://core.svn.wordpress.org/trunk@27661 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-28 21:29:13 +00:00
Drew Jaynes da19fc531c Better standardize parameter value types in PHPDocs where both a post ID or `WP_Post` would be acceptable.
Covers cases where previously only `int` or `int|object` types were notated.

Props coffee2code for the original patch.
See #20495.

Built from https://develop.svn.wordpress.org/trunk@27473


git-svn-id: http://core.svn.wordpress.org/trunk@27318 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-08 19:32:16 +00:00
Scott Taylor c353fa41a2 In `get_terms()`, leverage `get_term_children()` over `_get_term_children()` when making sure to show empty terms that have children in a hierarchical taxonomy while avoiding duplicates.
Adds unit test for `child_of` param. Adjusts unit tests for `get_terms()`.

See [27108] and [27125].
Props SergeyBiryukov.
Fixes #27123.


Built from https://develop.svn.wordpress.org/trunk@27458


git-svn-id: http://core.svn.wordpress.org/trunk@27304 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-07 19:29:16 +00:00
Scott Taylor 3556e565b3 `get_term_children()` returns an array of IDs, not objects. The docs have been updated to reflect this.
Fixes #27312.


Built from https://develop.svn.wordpress.org/trunk@27457


git-svn-id: http://core.svn.wordpress.org/trunk@27303 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-07 19:16:15 +00:00
Andrew Nacin d24a109288 Revert [27115] and let cache backends handle the stripping of spaces in cache keys as necessary.
microtime() returns greater precision than microtime(true).

see #27000, #23448, #26903, #14485.

Built from https://develop.svn.wordpress.org/trunk@27300


git-svn-id: http://core.svn.wordpress.org/trunk@27153 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-26 22:05:13 +00:00
Drew Jaynes cb8951b0b3 Remove all `@package` and `@subpackage` PHPDoc tags not at the file- or class-levels in core.
See #27200.

Built from https://develop.svn.wordpress.org/trunk@27262


git-svn-id: http://core.svn.wordpress.org/trunk@27119 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-25 17:14:14 +00:00
Scott Taylor c1dbe9ab77 Remove extraneous type-casting in `wp_get_object_terms()`.
Props OriginalEXE.
Fixes #27133.


Built from https://develop.svn.wordpress.org/trunk@27186


git-svn-id: http://core.svn.wordpress.org/trunk@27046 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-17 21:56:12 +00:00
Scott Taylor 5a43c3324d Partially revert [27101], [27102], [27141], and [27142]. Those commits introduced new functions to sync up cache invalidation events. The current commit alters existing internals.
"The cache invalidation with static was introduced in r9102 with version 2.7. Multisite wasn't in core back then, so something like switch_to_blog() wasn't a concern, but now it breaks if you switch the blog in between calls to clean_term_cache."

This solution is simpler. All unit tests pass. Removes unnecessary tests linked to removed functions.

Props kovshenin.
Fixes #14485, #22526.


Built from https://develop.svn.wordpress.org/trunk@27163


git-svn-id: http://core.svn.wordpress.org/trunk@27029 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-11 16:50:13 +00:00
Scott Taylor 6a626ab231 Reuse the `terms` cache group for taxonomy cache invalidation.
See #22526, #14485, [27101], [27102].


Built from https://develop.svn.wordpress.org/trunk@27142


git-svn-id: http://core.svn.wordpress.org/trunk@27009 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-09 17:42:11 +00:00
Drew Jaynes f481bcd2db Improve inline documentation for several 'last_changed'-related functions introduced in [27101] and [27102].
Functions include:
* `get_taxonomy_last_changed()`
* `set_taxonomy_last_changed()`
* `post_taxonomy_is_fresh()`
* `taxonomy_hierarchy_is_fresh()`

Fixes #22526, #14485.

Built from https://develop.svn.wordpress.org/trunk@27141


git-svn-id: http://core.svn.wordpress.org/trunk@27008 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-09 02:02:12 +00:00
Scott Taylor 75d8688f60 When a `term_id` matches in `_get_term_children()`, recurse through its children until there is no more depth in the hierarchy. Since `get_terms()` return terms with a `count` of `0` when their children are not empty, we must return all children so that `get_terms()` can check their count.
In [27108], #26903 was fixed, but only because we were using the example in the ticket, leaving out infinite depth for hierarchical taxonomies.

Adds unit tests, including `Tests_Term_getTerms::test_get_terms_seven_levels_deep()`.

Fixes #26903. Again.


Built from https://develop.svn.wordpress.org/trunk@27125


git-svn-id: http://core.svn.wordpress.org/trunk@26992 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-07 19:53:12 +00:00
Andrew Nacin 084a7b50cd Use a float for last_changed microtime cache values.
microtime() by default returns a string with a space, which isn't allowed for keys in some cache backends.

props _jameslee, drozdz.
fixes #27000. see #23448.

Built from https://develop.svn.wordpress.org/trunk@27115


git-svn-id: http://core.svn.wordpress.org/trunk@26982 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-07 08:14:12 +00:00
Scott Taylor c2b712e3b9 In `get_terms()`, don't set automatically `hierarchical` to `false` when `parent => 0` is passed. The default value for `parent` is `''`.
In `_get_term_children()`, don't skip a top-level term without first including its children in the returned term list. Ironically, the call to `_get_term_children()` in `get_terms()` has a comment stating `"Make sure we show empty categories that have children."`, but it didn't work if you were retrieving top-level categories only.

All unit tests pass. Added a unit test based on the use case described in this ticket.

Fixes #26903.


Built from https://develop.svn.wordpress.org/trunk@27108


git-svn-id: http://core.svn.wordpress.org/trunk@26975 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-06 17:45:12 +00:00
Scott Taylor 5d03d8eb50 Regenerate the term hierarchy cache (`{taxonomy}_children`) when it is out of sync with the passed taxonomy's `last_changed` value.
Introduces `taxonomy_hierarchy_is_fresh()`, which is only called in `_get_term_hierarchy()`. The taxonomy's `last_changed` value is checked against the value of `wp_cache_get( 'hierarchy_last_changed', $taxonomy )`.

Adds a unit test - `Tests_Term:test_hierachy_invalidation()`.

See [27101], which makes this type of cache invalidation possible.
Fixes #14485.


Built from https://develop.svn.wordpress.org/trunk@27102


git-svn-id: http://core.svn.wordpress.org/trunk@26971 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-06 01:58:14 +00:00
Scott Taylor 578dbcd9f5 Add cache invalidation when updating a term, example: create a category, assign it to a post, edit the category. Currently, the post's term cache is not updated. When updating terms in a given taxonomy, invalidate the object term caches linked to that taxonomy.
Introduce `get_taxonomy_last_changed()`, `set_taxonomy_last_changed()`, and `post_taxonomy_is_fresh()`.

`post_taxonomy_is_fresh()` is only called in `get_object_term_cache()` - at which point the taxonomy's `last_changed` value is checked against the post's `{$taxonomy}_last_changed` value.

`set_taxonomy_last_changed()` is called whenever directory database queries are made that insert new terms or affect existing terms.

Fixes #22526.


Built from https://develop.svn.wordpress.org/trunk@27101


git-svn-id: http://core.svn.wordpress.org/trunk@26970 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-06 01:41:12 +00:00
Scott Taylor a6b3bced06 `get_comment()`, `wp_get_post_revision()`, and `get_term()` all used to return by reference. Because of this, `$null` was set to `null` so the return value would be a variable where applicable. This has not been necessary since [21792], so the `$null`s have been removed.
Props toszcze.
Fixes #24768.


Built from https://develop.svn.wordpress.org/trunk@27057


git-svn-id: http://core.svn.wordpress.org/trunk@26930 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-29 06:46:12 +00:00
Drew Jaynes d13198db3a Add inline documentation for the 'show_admin_column' argument added to `register_taxonomy()` in 3.5.
Also adds a 'show_admin_column' value to the defaults array.

Props johnbillion.
Fixes #26707.

Built from https://develop.svn.wordpress.org/trunk@26912


git-svn-id: http://core.svn.wordpress.org/trunk@26793 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-07 02:13:10 +00:00
Drew Jaynes cd8cedc40d First there were two, and now there are three -- in the @since versions that came before and that shall be. And so it will be, says nacin.
Props JustinSainton, SergeyBiryukov, DrewAPicture.
Fixes #26713.

Built from https://develop.svn.wordpress.org/trunk@26868


git-svn-id: http://core.svn.wordpress.org/trunk@26754 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-12-24 18:57:12 +00:00
Andrew Nacin 804be8b332 Be specific in term_exists error messages in wp_insert_term() as to what already exists (name, or name and slug).
props ericmann, SergeyBiryukov.
fixes #15741.

Built from https://develop.svn.wordpress.org/trunk@26544


git-svn-id: http://core.svn.wordpress.org/trunk@26436 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-12-02 23:06:11 +00:00
Scott Taylor ff6233b9c5 Fix lingering reference problem in `wp_get_object_terms()` by not setting the `foreach`'d vars to a reference. Adds unit test.
Props stephenharris.
Fixes #26339.


Built from https://develop.svn.wordpress.org/trunk@26510


git-svn-id: http://core.svn.wordpress.org/trunk@26404 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-12-02 00:00:10 +00:00
Sergey Biryukov bf6f02320a A negative term parent value should be sanitized to 0, not 1. Fix a regression in sanitize_term_field() caused by [26010].
props mattheu for initial patch.
fixes #25852.
Built from https://develop.svn.wordpress.org/trunk@26028


git-svn-id: http://core.svn.wordpress.org/trunk@25958 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-11-06 23:41:09 +00:00
Scott Taylor cefafee3d3 Cast proper fields to `int` when returning from `wp_get_object_terms()`. Add `term_taxonomy_id` and `object_id` to the list in `sanitize_term()` and `sanitize_term_field()`.
Fixes #17646. Adds unit tests.
Props simonwheatley, dd32, kovshenin.


Built from https://develop.svn.wordpress.org/trunk@26010


git-svn-id: http://core.svn.wordpress.org/trunk@25941 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-11-05 01:19:11 +00:00
Helen Hou-Sandí 7fa704d972 Allow passing `false` for the `meta_box_cb` arg in `register_taxonomy()` to turn off the meta box display entirely. fixes #21543.
Built from https://develop.svn.wordpress.org/trunk@25948


git-svn-id: http://core.svn.wordpress.org/trunk@25907 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-27 16:29:09 +00:00
Andrew Nacin bba2a414a2 Fix the exclude_tree argument in get_terms(), which fixes the exclude argument in wp_list_categories().
This was a 3.7 regression caused by [25162].

props dd32.
see #25710 for trunk.

Built from https://develop.svn.wordpress.org/trunk@25933


git-svn-id: http://core.svn.wordpress.org/trunk@25892 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-26 15:04:11 +00:00
Andrew Nacin 1d269541e2 Introduce register_taxonomy_for_object_type().
props leewillis77.
fixes #11058.

Built from https://develop.svn.wordpress.org/trunk@25596


git-svn-id: http://core.svn.wordpress.org/trunk@25513 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-24 02:54:08 +00:00
Andrew Nacin 377cf11bfb Pass $taxonomies to two more filters in get_terms().
props johnbillion.
fixes #18754.

Built from https://develop.svn.wordpress.org/trunk@25576


git-svn-id: http://core.svn.wordpress.org/trunk@25493 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-23 18:39:09 +00:00
Andrew Nacin 5febb6045f Introduce a meta_box_cb argument for register_taxonomy().
The specified callback function is used as the meta box callback for the taxonomy.

props garyc40, helen.
fixes #14206.

Built from https://develop.svn.wordpress.org/trunk@25572


git-svn-id: http://core.svn.wordpress.org/trunk@25489 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-23 17:12:10 +00:00
Scott Taylor ae4cf7665a Add `@access private` to `_get_custom_object_labels()`, which was already implied by the dangling underscore. Cast `$labels` to `array` in `get_taxonomy_labels()` and `_get_custom_object_labels()`.
Props nacin, foofy.
Fixes #16310.


Built from https://develop.svn.wordpress.org/trunk@25553


git-svn-id: http://core.svn.wordpress.org/trunk@25473 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-21 17:44:09 +00:00
Scott Taylor 2d323d43e1 Ensure that terms with a post count of `0` are not returned in `wp_count_terms()` when `hide_empty => true`. Adds unit test which ensures that `wp_count_terms()` returns `0`.
Props markjaquith.
Fixes #15919.


Built from https://develop.svn.wordpress.org/trunk@25551


git-svn-id: http://core.svn.wordpress.org/trunk@25471 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-21 16:48:10 +00:00
Drew Jaynes 00ca46973c Clarify error handling and special cases in the `wp_insert_term()` phpdoc block.
props lgedeon, SergeyBiryukov. See #22801.

Built from https://develop.svn.wordpress.org/trunk@25498


git-svn-id: http://core.svn.wordpress.org/trunk@25419 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-19 16:09:10 +00:00
Sergey Biryukov 8d2764fbd3 Update inline documentation for wp_insert_term().
props DrewAPicture.
fixes #22801.
Built from https://develop.svn.wordpress.org/trunk@25489


git-svn-id: http://core.svn.wordpress.org/trunk@25410 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-19 01:57:10 +00:00
Scott Taylor 6ea9e9692d Use `wp_parse_args()` again for `$args['rewrite']` in `register_taxonomy()`.
Props SergeyBiryukov.
Fixes #23668.


Built from https://develop.svn.wordpress.org/trunk@25483


git-svn-id: http://core.svn.wordpress.org/trunk@25404 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-18 20:39:09 +00:00
Scott Taylor 072b0f2128 Use `reset()` to access the first element of an array, don't assume there is an item at index `0`.
See #25282.


Built from https://develop.svn.wordpress.org/trunk@25384


git-svn-id: http://core.svn.wordpress.org/trunk@25323 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-12 05:09:09 +00:00
Scott Taylor 6fb5ef65c0 Avoid a notice by casting `$args['rewrite']` to `array()` before adding a `slug` property and running `array_merge()`.
Fixes #23668.


Built from https://develop.svn.wordpress.org/trunk@25351


git-svn-id: http://core.svn.wordpress.org/trunk@25313 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-11 17:17:11 +00:00
Scott Taylor cb982c66ac Don't call `sanitize_title_with_dashes( $taxonomy )` in `register_taxonomy()` unless `$args['rewrite']['slug']` is empty.
Props SergeyBiryukov.
Fixes #23668.


Built from https://develop.svn.wordpress.org/trunk@25335


git-svn-id: http://core.svn.wordpress.org/trunk@25297 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-11 00:09:10 +00:00
Scott Taylor 7c2e7f8995 Add `term_taxonomy_id` to available fields in `get_term_by()`. Adds unit test.
Props jchristopher.
Fixes #21651.


Built from https://develop.svn.wordpress.org/trunk@25334


git-svn-id: http://core.svn.wordpress.org/trunk@25296 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-11 00:02:08 +00:00
Scott Taylor d041c830bc Avoid database error when `include` or `exclude` is not really a `term_id`. Adds more unit tests.
Props kovshenin.
Fixes #11823.


Built from https://develop.svn.wordpress.org/trunk@25257


git-svn-id: http://core.svn.wordpress.org/trunk@25225 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-05 17:15:09 +00:00
Scott Taylor 6895dc9f8e Introduce `description__like` arg to `get_terms()`. Make `description__like` and `name__like` perform `LIKE`s with a wildcard on both sides of passed string. Previously, strings had to match the beginning of the name, so searching for `burrito` in `This is a burrito` would fail. Adds unit tests.
Props aaroncampbell for the original patch, 5 years ago.
Fixes #8214.


Built from https://develop.svn.wordpress.org/trunk@25241


git-svn-id: http://core.svn.wordpress.org/trunk@25211 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-04 19:41:08 +00:00
Scott Taylor 7c1ea6c95c No need to re-map the return values of `wp_parse_id_list()` to int.
See #22074, #11823.


Built from https://develop.svn.wordpress.org/trunk@25169


git-svn-id: http://core.svn.wordpress.org/trunk@25145 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-29 18:54:09 +00:00
Scott Taylor 29952baa41 Search term `name` and `slug` when the `search` arg is passed to `get_terms()`. Adds unit test.
Props wojtek.szkutnik.
Fixes #13992.


Built from https://develop.svn.wordpress.org/trunk@25164


git-svn-id: http://core.svn.wordpress.org/trunk@25143 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-29 16:50:09 +00:00
Scott Taylor 4b449d38b4 Improve the include / exclude SQL generation in `get_terms()` by using `IN` and `NOT IN` where applicable. Adds unit tests for include / exclude.
Props sirzooro, duck_.

Fixes #11823.


Built from https://develop.svn.wordpress.org/trunk@25162


git-svn-id: http://core.svn.wordpress.org/trunk@25141 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-29 16:24:09 +00:00
Scott Taylor 2f2f50c659 Support `id=>name` and `id=>slug` values for `fields` arg in `get_terms()`. Adds unit tests.
Props mikeschinkel.

Fixes #13661.


Built from https://develop.svn.wordpress.org/trunk@25161


git-svn-id: http://core.svn.wordpress.org/trunk@25140 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-29 15:19:10 +00:00
Andrew Nacin 732f176943 Pass $taxonomies to the get_terms_orderby filter.
props johnbillion.
fixes #18754.

Built from https://develop.svn.wordpress.org/trunk@25142


git-svn-id: http://core.svn.wordpress.org/trunk@25122 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-27 21:06:09 +00:00
Dominik Schilling 8688857816 Introduce show_in_menu for register_taxonomy.
Accepts boolean: true to show, false to hide. If not set, the default is inherited from show_ui.

fixes #20930.
Built from https://develop.svn.wordpress.org/trunk@25133


git-svn-id: http://core.svn.wordpress.org/trunk@25113 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-26 22:35:10 +00:00
Dominik Schilling 357f52eed7 Improve inline docs for register_post_type() and register_taxonomy().
* register_taxonomy: Use the same doc format for the associative array arg as used for register_post_type()
* register_taxonomy: Improve docs for _builtin, capabilities, hierarchical and rewrite args
* register_taxonomy: Use the same order in $defaults as in docblock
* register_taxonomy: Replace is_null with null ===, to be consistent
* register_post_type: Use the same order in $defaults as in docblock
* register_post_type: Improve docs for @uses and default fallbacks
And while we're on it: Whitespaces.

fixes #25150.
Built from https://develop.svn.wordpress.org/trunk@25130


git-svn-id: http://core.svn.wordpress.org/trunk@25110 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-26 20:24:08 +00:00
Scott Taylor a97dfd3009 Use `reset()` to grab the first taxonomy in an array, not by numerical index. Cleans up whitespace. Props webord, nbachiyski. Fixes #23506.
Built from https://develop.svn.wordpress.org/trunk@25108


git-svn-id: http://core.svn.wordpress.org/trunk@25090 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-23 21:29:10 +00:00
Scott Taylor 22c59d9c45 Check `term_id` against the `$term` object, not the non-existent var `$args`. Props rboren. Fixes #12729.
Built from https://develop.svn.wordpress.org/trunk@25106


git-svn-id: http://core.svn.wordpress.org/trunk@25088 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-23 21:05:09 +00:00
Andrew Nacin ac1f98d4ce Add description argument to register_taxonomy().
props aaronholbrook.
fixes #24808.



git-svn-id: http://core.svn.wordpress.org/trunk@24833 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-28 23:01:56 +00:00
Andrew Nacin cd47b3dc90 Add $taxonomy to edit_terms and edited_terms actions. props SergeyBiryukov, fixes #22542.
git-svn-id: http://core.svn.wordpress.org/trunk@24829 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-28 22:15:03 +00:00
Andrew Nacin 4fd4d4452f Use sanitize_key() instead of esc_sql() when 'escaping' variable DB field names. see #21767.
git-svn-id: http://core.svn.wordpress.org/trunk@24714 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-16 14:21:05 +00:00
Ryan Boren ad4a081c0c Pinking shears
git-svn-id: http://core.svn.wordpress.org/trunk@24303 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-05-20 12:10:58 +00:00
Sergey Biryukov 53d52e7cd5 Correct inline docs for wp_delete_term(). fixes #24343.
git-svn-id: http://core.svn.wordpress.org/trunk@24261 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-05-15 08:10:52 +00:00
Sergey Biryukov 4b4b35ae3b Remove unnecessary error suppression from get_terms(). fixes #21887.
git-svn-id: http://core.svn.wordpress.org/trunk@23599 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-04 02:52:43 +00:00
Sergey Biryukov b35c629308 Fix array formatting. props WraithKenny. fixes #21210.
git-svn-id: http://core.svn.wordpress.org/trunk@23598 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-04 02:48:20 +00:00
Ryan Boren 315bfb019a Use wp_unslash() instead of stripslashes() and stripslashes_deep(). Use wp_slash() instead of add_magic_quotes().
see #21767


git-svn-id: http://core.svn.wordpress.org/trunk@23594 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-03 21:11:40 +00:00
Ryan Boren 43a7e695e9 Revert 23416, 23419, 23445 except for wp_reset_vars() changes. We are going a different direction with the slashing cleanup, so resetting to a clean slate. see #21767
git-svn-id: http://core.svn.wordpress.org/trunk@23554 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-01 16:28:40 +00:00
Sergey Biryukov e58f456cb1 Make wp_remove_object_terms() return false if nothing has been deleted. props kovshenin. fixes #15475.
git-svn-id: http://core.svn.wordpress.org/trunk@23552 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-01 16:22:07 +00:00
Sergey Biryukov 5777e5a949 Rename 'no_tagcloud' taxonomy label to 'not_found', for consistency with the post type label of the same key. fixes #23597.
git-svn-id: http://core.svn.wordpress.org/trunk@23484 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-02-25 19:39:38 +00:00
Sergey Biryukov bf1ca6b9ca Move 'no_tagcloud' argument to the taxonomy labels object. props DrewAPicture for initial patch. fixes #23597.
git-svn-id: http://core.svn.wordpress.org/trunk@23483 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-02-25 18:35:05 +00:00
Ryan Boren cc5ed3a485 Change all core API to expect unslashed rather than slashed arguments.
The exceptions to this are update_post_meta() and add_post_meta() which are often used by plugins in POST handlers and will continue accepting slashed data for now.

Introduce wp_upate_post_meta() and wp_add_post_meta() as unslashed alternatives to update_post_meta() and add_post_meta(). These functions could become methods in WP_Post so don't use them too heavily yet.

Remove all escape() calls from wp_xmlrpc_server. Now that core expects unslashed data this is no longer needed.

Remove addslashes(), addslashes_gpc(), add_magic_quotes() calls on data being prepared for handoff to core functions that until now expected slashed data. Adding slashes in no longer necessary.

Introduce wp_unslash() and use to it remove slashes from GPCS data before using it in core API. Almost every instance of stripslashes() in core should now be wp_unslash(). In the future (a release or three) when GPCS is no longer slashed, wp_unslash() will stop stripping slashes and simply return what is passed. At this point wp_unslash() calls can be removed from core.

Introduce wp_slash() for slashing GPCS data. This will also turn into a noop once GPCS is no longer slashed. wp_slash() should almost never be used. It is mainly of use in unit tests.

Plugins should use wp_unslash() on data being passed to core API.

Plugins should no longer slash data being passed to core. So when you get_post() and then wp_insert_post() the post data from get_post() no longer needs addslashes(). Most plugins were not bothering with this. They will magically start doing the right thing. Unfortunately, those few souls who did it properly will now have to avoid calling addslashes() for 3.6 and newer.

Use wp_kses_post() and wp_kses_data(), which expect unslashed data, instead of wp_filter_post_kses() and wp_filter_kses(), which expect slashed data. Filters are no longer passed slashed data.

Remove many no longer necessary calls to $wpdb->escape() and esc_sql().

In wp_get_referer() and wp_get_original_referer(), return unslashed data.

Remove old stripslashes() calls from WP_Widget::update() handlers. These haven't been necessary since WP_Widget.

Switch several queries over to prepare().

Expect something to break.

Props alexkingorg
see #21767


git-svn-id: http://core.svn.wordpress.org/trunk@23416 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-02-14 22:51:06 +00:00
Ryan Boren 353ef064ea Use microtime() instead of incrementors for last_changed to to avoid race conditions with cache evictions.
Props westi
fixes #23448


git-svn-id: http://core.svn.wordpress.org/trunk@23401 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-02-11 18:08:14 +00:00
Mark Jaquith 6953fe2a25 Introduce wp_remove_object_terms() and wp_add_object_terms(). No more fetch-alter-update nonsense. Use wp_remove_object_terms() in a few places internally.
props simonwheatley, scribu, ericmann, maxcutler. fixes #15475

git-svn-id: http://core.svn.wordpress.org/trunk@23398 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-02-08 18:45:34 +00:00
Ryan Boren 0f80568a7e Use incrementors for cache invalidation in get_terms().
fixes #23326
see #23173


git-svn-id: http://core.svn.wordpress.org/trunk@23384 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-02-04 13:48:46 +00:00
Ryan Boren b237423e72 Clear the object term relationships cache in wp_set_object_terms() rather than wp_set_post_terms(). This should be done lower in the stack than wp_set_post_terms().
Props batmoo
fixes #22560


git-svn-id: http://core.svn.wordpress.org/trunk@22878 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-27 19:42:38 +00:00
Ryan Boren 06ee370814 Pinking shears
git-svn-id: http://core.svn.wordpress.org/trunk@22634 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-17 15:11:29 +00:00
Andrew Nacin 1b0a4561a4 Use correct variable. props picklewagon. fixes #22394.
git-svn-id: http://core.svn.wordpress.org/trunk@22476 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-09 00:16:30 +00:00
Andrew Nacin 039279db28 Only call wp_get_object_terms() if get_object_term_cache() says there is no cache (false), which is different than no terms. props wonderboymusic, fixes #16505.
git-svn-id: http://core.svn.wordpress.org/trunk@22433 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-07 20:00:51 +00:00
Andrew Nacin 711f6f2619 Treat a single taxonomy passed as an array the same as when passed as a string in get_terms(). props wonderboymusic, fixes #17955.
git-svn-id: http://core.svn.wordpress.org/trunk@22417 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-07 09:03:40 +00:00
Jon Cave 391ff2f639 Fix documentation typo: s/WP_Erorr/WP_Error/. See #21593.
git-svn-id: http://core.svn.wordpress.org/trunk@22309 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-25 22:29:37 +00:00
Ryan Boren 28461df188 Return WP_Error when registering a taxonomy that exceeds 32 characters.
Props ocean90.
fixes #21593


git-svn-id: http://core.svn.wordpress.org/trunk@22307 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-25 22:12:02 +00:00
Ryan Boren 77518e9c71 Objects no longer need to be explicitly passed by ref to call_user_func*() to be callable. Props wonderboymusic. fixes #21865
git-svn-id: http://core.svn.wordpress.org/trunk@22118 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-04 20:00:16 +00:00
Ryan Boren faca571a3a Avoid 'Only variables should be assigned by reference' warning. Props wonderboymusic. see #21865
git-svn-id: http://core.svn.wordpress.org/trunk@22114 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-04 18:21:47 +00:00
Ryan Boren 3c2b9a6901 An empty taxonomy query should return no results rather than all posts. Props wonderboymusic. fixes #20604
git-svn-id: http://core.svn.wordpress.org/trunk@22109 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-04 13:16:47 +00:00
Andrew Nacin 557d9313a7 Introduce constants to allow for easier expression of time periods in seconds. Adds MINUTE_IN_SECONDS, HOUR_IN_SECONDS, DAY_IN_SECONDS, WEEK_IN_SECONDS, YEAR_IN_SECONDS. props nbachiyski, SergeyBiryukov. fixes #20987.
git-svn-id: http://core.svn.wordpress.org/trunk@21996 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-25 05:26:19 +00:00
Andrew Nacin d80d004b10 Don't repeatedly call get_object_taxonomies() in clean_object_term_cache(). see #11399.
git-svn-id: http://core.svn.wordpress.org/trunk@21951 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-22 15:21:30 +00:00
Ryan Boren df21fa1cc6 Pass a term object to the delete_term actions. Props bigdawggi. fixes #20645
git-svn-id: http://core.svn.wordpress.org/trunk@21939 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-21 13:27:56 +00:00
Andrew Nacin 8203ef4905 Make WP_Tax_Query::transform_query() public. props scribu. fixes #21684.
git-svn-id: http://core.svn.wordpress.org/trunk@21863 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-15 20:17:03 +00:00
Andrew Nacin e728ad3a1e Update docs to reflect that wp_count_terms() can return WP_Error when the taxonomy does not exist. props SergeyBiryukov, fixes #21888.
git-svn-id: http://core.svn.wordpress.org/trunk@21843 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-14 16:11:30 +00:00
Ryan Boren f483a85676 Remove unnecessary return by refs. Props wonderboymusic. fixes #21839
git-svn-id: http://core.svn.wordpress.org/trunk@21792 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-10 17:00:11 +00:00
Andrew Nacin 1af8c36086 Allow easy registration of taxonomy columns on post (and custom post type) list table screens.
To register a column for a list table, use the new manage_taxonomies_for_{$post_type}_columns
filter. Introduces show_admin_column => true for register_taxonomy(), which automatically
displays that column on all associated post types.

props jtsternberg, SergeyBiryukov for initial patches.
fixes #21240.



git-svn-id: http://core.svn.wordpress.org/trunk@21788 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-08 03:18:36 +00:00
Ryan Boren 2b47dd4afe Return WP_Error if the db insert in wp_set_object_terms() fails. Props jndetlefsen. fixes #21800
git-svn-id: http://core.svn.wordpress.org/trunk@21766 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-05 17:57:53 +00:00
Andrew Nacin 5a9193d6c9 Validate $order in wp_get_object_terms(). props duck_.
git-svn-id: http://core.svn.wordpress.org/trunk@21758 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-05 01:23:53 +00:00
Ryan Boren f56d8278bb Remove return ref from all calls to get_post()
Return WP_Post from get_default_post_to_edit()
Replace all calls to get_page() with get_post()
see #21309


git-svn-id: http://core.svn.wordpress.org/trunk@21597 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-08-23 20:01:10 +00:00
Ryan Boren 9377523bce Introduce WP_Post class. Clean up ancestors handling. Props scribu, toppa. fixes #10381 see #21309
git-svn-id: http://core.svn.wordpress.org/trunk@21559 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-08-20 19:47:52 +00:00
Ryan Boren 9dbb6a34f6 Reduce calls to sanitize_title_with_dashes in register_(post_type|taxonomy). Props ocean90. fixes #21600
git-svn-id: http://core.svn.wordpress.org/trunk@21553 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-08-20 17:25:06 +00:00
Andrew Nacin 9eeccc2230 Add term_taxonomy_id field handling to WP_Tax_Query::transform_query(), allowing the transformation to be bypassed when tt ids are passed.
props wonderboymusic.
fixes #21228.



git-svn-id: http://core.svn.wordpress.org/trunk@21552 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-08-20 16:49:21 +00:00
Andrew Nacin 84c3a86036 Hide the link manager from the UI on upgrade, if the site has no links. New DB option, link_manager_enabled.
Enforce this by denying the 'manage_links' capability, which hides the All Links, Add New Link, and Link Categories screens. Hide WP_Widget_Links and the UI for the default_link_category as well.

Convert all references to 'posts and links' when handling reassignment on user deletion to just 'posts'.

see #21307.



git-svn-id: http://core.svn.wordpress.org/trunk@21501 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-08-13 16:18:42 +00:00
ryan eaa419dba3 Consolodate some strings. Props pavelevap. fixes #20809
git-svn-id: http://core.svn.wordpress.org/trunk@20972 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-06-01 19:05:30 +00:00
nacin 2243e45a43 Add view_item to the phpdoc for get_taxonomy_labels(). props Caspie. fixes #20406.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20436 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-04-11 20:08:30 +00:00
nacin 0730535015 Introduce $wpdb->delete(). props justindgivens, scribu. fixes #18948.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20287 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-03-24 15:24:31 +00:00
duck_ a395e06896 Reduce references to the $wp_rewrite global because it's no longer used or a wrapper function can be used instead. Fixes #14546.#14546.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20023 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-02-28 20:29:33 +00:00
duck_ 8ac3015ccf Stop invalid SQL syntax by bailing from wp_get_object_terms() if $object_ids or $taxonomies is empty. Props batmoo. Fixes #19952.
git-svn-id: http://svn.automattic.com/wordpress/trunk@19975 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-02-21 20:20:50 +00:00
duck_ ecdac4be4f Taxonomy rewrite generation when turning on permalinks, r18443 for taxonomies. Props SergeyBiryukov. Fixes #19794.
git-svn-id: http://svn.automattic.com/wordpress/trunk@19930 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-02-15 17:30:37 +00:00
duck_ 312e1f1811 Post formats should show_in_nav_menus when the current theme supports them. Props filosofo, nacin. Fixes #16390.
git-svn-id: http://svn.automattic.com/wordpress/trunk@19876 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-02-08 17:12:02 +00:00
duck_ 2f4c545761 Use new $args parameter for (WP_Rewrite::)add_permastruct(). Fixes #16092.
Use array_intersect_key() to keep WP_Rewrite::$extra_permastructs free of unnecessary/unknown keys + values.


git-svn-id: http://svn.automattic.com/wordpress/trunk@19779 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-01-28 21:00:59 +00:00
nacin 774e51c04c Correct logic inversion. #19275.
git-svn-id: http://svn.automattic.com/wordpress/trunk@19742 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-01-23 20:10:01 +00:00
nacin 0c224cd82c Clean up and better document create_initial_taxonomies(). see #19275.
git-svn-id: http://svn.automattic.com/wordpress/trunk@19741 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-01-23 19:58:26 +00:00
nacin 61abfcd3c7 Add 'ep_mask' as an argument to the 'rewrite' array for register_post_type() and register_taxonomy(). Keeps 'permalink_epmask' compatible as an argument for post type registrations. Fixes endpoints for category and tag pages. fixes #19275.
git-svn-id: http://svn.automattic.com/wordpress/trunk@19738 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-01-23 19:12:04 +00:00
ryan 2b44b1a244 Update register_taxonomy_for_object_type() phpdoc to reflect that the post_type must be a string only, no arrays allowed. Props transom. fixes #19795
git-svn-id: http://svn.automattic.com/wordpress/trunk@19730 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-01-11 21:39:01 +00:00
ryan 4cf5450a81 Use wp_cache_add() instead of wp_cache_set() when priming the object term cache in update_object_term_cache(). Pass the real post_type to clean_object_term_cache() instead of hard-coding post. Call clean_object_term_cache() from clean_bookmark_cache(). Props leewillis77. fixes #19690
git-svn-id: http://svn.automattic.com/wordpress/trunk@19729 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-01-11 21:26:18 +00:00
ryan 616c35e71c One newline is enough.
git-svn-id: http://svn.automattic.com/wordpress/trunk@19684 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-01-05 20:10:39 +00:00
ryan 85304c2dc7 Introduce term_is_ancestor_of(). Finish taxonomy support for wp_insert_category(). Props garyc40. fixes #15581
git-svn-id: http://svn.automattic.com/wordpress/trunk@19678 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-01-04 22:44:19 +00:00
nacin 03d21f6606 term_exists() @return correction. props johnbillion, fixes #19565.
git-svn-id: http://svn.automattic.com/wordpress/trunk@19600 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-12-16 20:56:14 +00:00
ryan 07ff8b216b Use one space, not two, after trailing punctuation. fixes #19537
git-svn-id: http://svn.automattic.com/wordpress/trunk@19593 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-12-13 23:45:31 +00:00
ryan 39dc973965 Avoid undefined index notices. Props SergeyBiryukov, valendesigns. fixes #18455
git-svn-id: http://svn.automattic.com/wordpress/trunk@19077 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-10-28 19:52:14 +00:00
nacin 28e10d8f2b Remove duplicate word in docs. props SergeyBiryukov, fixes #18986.
git-svn-id: http://svn.automattic.com/wordpress/trunk@19065 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-10-25 16:07:14 +00:00
ryan 62afab8db3 Pinking shears
git-svn-id: http://svn.automattic.com/wordpress/trunk@19054 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-10-24 19:13:23 +00:00
nacin 975c670f15 Update the update_count_callback docs. see #18986.
git-svn-id: http://svn.automattic.com/wordpress/trunk@19037 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-10-21 21:50:36 +00:00
nacin 38921762a3 No need to specify an update_count_callback for categories or tags, as the default handler for them will now be _update_post_term_count(). see #18986, [19035].
git-svn-id: http://svn.automattic.com/wordpress/trunk@19036 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-10-21 21:46:03 +00:00
nacin 463bfd9fe5 Separate non-post term counting from _update_post_term_count(). Introduce _update_generic_term_count(). The generic handler will be the default whenever the taxonomy is attached to an object type other than a post type (link, user). Otherwise the _update_post_term_count() handler will be the default. fixes #18986. see #17548.
git-svn-id: http://svn.automattic.com/wordpress/trunk@19035 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-10-21 21:38:14 +00:00
ryan 791b424c31 Typo fix. Props SergeyBiryukov. see #18986
git-svn-id: http://svn.automattic.com/wordpress/trunk@19031 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-10-20 21:41:54 +00:00
ryan 5bfc91f5ee Fix term counting for links. Props SergeyBiryukov. fixes #18986
git-svn-id: http://svn.automattic.com/wordpress/trunk@19025 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-10-20 14:28:26 +00:00
ryan ec7afa90a1 Call wp_update_term_count() only for those terms that have been added to or removed from the object. Props jeremyclarke. fixes #18631
git-svn-id: http://svn.automattic.com/wordpress/trunk@18999 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-10-18 21:01:55 +00:00
nacin 89c0895887 new does not require by reference.
git-svn-id: http://svn.automattic.com/wordpress/trunk@18995 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-10-18 20:20:59 +00:00
ryan 0370bda8bc Count only published posts when updating term counts. Fire term count updates on transition_post_status. Props joehoyle. see #17548
git-svn-id: http://svn.automattic.com/wordpress/trunk@18932 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-10-10 20:52:44 +00:00
westi b5a3362c70 Fire an action when a post type or taxonomy is registered so plugins can react. Fixes #18802 props simonwheatley.
git-svn-id: http://svn.automattic.com/wordpress/trunk@18833 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-09-30 09:53:35 +00:00
nacin f4c5d43326 Revert [18783], as it breaks term relationship counts for attachment taxonomies. see #17548.
git-svn-id: http://svn.automattic.com/wordpress/trunk@18809 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-09-29 05:29:20 +00:00
ryan d187cf2559 Count only published posts when updating term counts. Fire term count updates on transition_post_status. Props joehoyle. fixes #17548
git-svn-id: http://svn.automattic.com/wordpress/trunk@18783 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-09-26 22:24:46 +00:00
nacin 4319712d64 Rename 'Post Tags' to 'Tags'. props scribu, fixes #17683.
git-svn-id: http://svn.automattic.com/wordpress/trunk@18661 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-09-11 17:52:46 +00:00
duck_ 2f51b9be0d Fix typos in documentation (wp-includes/[i-z]). See #18560.
git-svn-id: http://svn.automattic.com/wordpress/trunk@18639 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-09-05 19:08:15 +00:00
ryan 58379895e5 Support fields = slugs in wp_get_object_terms(). Props lancewillett, SergeyBiryukov. fixes #15835
git-svn-id: http://svn.automattic.com/wordpress/trunk@18603 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-08-25 18:49:46 +00:00
westi 76eb5b8138 Optimise get_term to not query for term_id = 0. Also improve the prepared query to use %d for the term_id.
Fixes #18076 props mdawaffe.

git-svn-id: http://svn.automattic.com/wordpress/trunk@18591 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-08-24 10:39:52 +00:00
ryan 581402ae2f Sanitize order and orderby in get_terms()
git-svn-id: http://svn.automattic.com/wordpress/trunk@18344 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-06-27 15:45:12 +00:00
ryan daa14c36f9 Bring out the pinking shears.
git-svn-id: http://svn.automattic.com/wordpress/trunk@18254 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-06-10 23:01:45 +00:00
nacin 71c2782b1c Admin Bar: Add View Site/Dashboard links, 'View X' links in the admin, 'View' action link for terms. New custom taxonomy string: view_item, defaulting to 'View Tag' and View Category'. fixes #17705.
git-svn-id: http://svn.automattic.com/wordpress/trunk@18194 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-06-08 16:49:27 +00:00
ryan 75660d68a0 Add cache_domain argument to get_terms() to allow caching to a unique set of cache buckets. Useful when taxonomy queries have been modified via filters and need their own cache space. Props mfields. fixes #13318
git-svn-id: http://svn.automattic.com/wordpress/trunk@18128 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-06-03 15:24:14 +00:00
ryan bde9c01453 Prepare some LIKEs
git-svn-id: http://svn.automattic.com/wordpress/trunk@17997 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-05-22 23:22:59 +00:00
markjaquith cb077a55ed Use the presence of manually set tax_base, not category_base, to determine whether tags use with_front to craft URLs. fixes #17308
git-svn-id: http://svn.automattic.com/wordpress/trunk@17789 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-05-02 21:34:33 +00:00
dd32 b0fdc73dca Prevent $taxonony->object_type containing duplicate values. Initial patch props kevinB. Fixes #16951
git-svn-id: http://svn.automattic.com/wordpress/trunk@17688 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-04-23 09:27:37 +00:00
ryan 0a5a01e991 Handle term intersection requests containg inexistent terms. Props scribu. fixes #17194
git-svn-id: http://svn.automattic.com/wordpress/trunk@17686 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-04-22 19:09:48 +00:00
ryan 746bb77bf3 More efficient term intersection query. Props tigertech. see #16706
git-svn-id: http://svn.automattic.com/wordpress/trunk@17652 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-04-18 20:38:59 +00:00
ryan ebecb8ffdf Return false instead of WP_Error from get_term_by() if the term does not exist. Makes fetching a term by id consistent with slug and name. Props hakre. fixes #16464 #16717 for trunk
git-svn-id: http://svn.automattic.com/wordpress/trunk@17526 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-03-22 20:06:38 +00:00
markjaquith afdda66384 Prevent double index.php preprend on PATHINFO custom taxonomy permalinks. Proper use of with_front. props greuben. fixes #16918. fixes #16622. see #15813. see #12659. For trunk
git-svn-id: http://svn.automattic.com/wordpress/trunk@17512 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-03-09 05:18:45 +00:00
markjaquith 30bc33ad5a Revert to the cat=X permalinks from 3.0 and earlier. props dd32. fixes #16644 for trunk
git-svn-id: http://svn.automattic.com/wordpress/trunk@17494 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-03-02 17:29:11 +00:00
ryan 55c2425b3b Don't allow passing slugs to get_tag_link() and get_category_link(); they are too ambiguous. Restore WP_Error return to get_term_link(). fixes #16521 for trunk
git-svn-id: http://svn.automattic.com/wordpress/trunk@17443 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-02-10 21:48:40 +00:00
ryan 6a8ff66305 Return empty strings instead of WP_Errro from get_category_link(), get_term_link(), and get_tag_link() when passed an invalid term. Clarify phpdoc. Props nacin. fixes #16521 for trunk
git-svn-id: http://svn.automattic.com/wordpress/trunk@17437 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-02-10 20:17:54 +00:00
nacin 95ef90de64 Add context to 'Format' string. props scribu, SergeyBiryukov, fixes #16423 for trunk.
git-svn-id: http://svn.automattic.com/wordpress/trunk@17372 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-01-31 12:18:57 +00:00
markjaquith 4603a50cae Revert [16832]. see #9591. fixes #16282
git-svn-id: http://svn.automattic.com/wordpress/trunk@17357 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-01-24 06:26:38 +00:00
nacin f8c83ed7d3 Correct the @return for get_term_link. It always has been able to return WP_Error. props SergeyBiryukov, see #16282.
git-svn-id: http://svn.automattic.com/wordpress/trunk@17341 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-01-20 23:36:42 +00:00
nacin f924216639 Give the format taxonomy a name. props SergeyBiryukov, see #16172.
git-svn-id: http://svn.automattic.com/wordpress/trunk@17261 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-01-11 22:11:32 +00:00
ryan f06af8506b category__and, tag__and, tag_slug__in, tag_slug__and support. fixes #16157
git-svn-id: http://svn.automattic.com/wordpress/trunk@17244 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-01-09 16:19:48 +00:00
nacin b95f4faa2d Don't check for post format support when registering the post format taxonomy. fixes #16146.
git-svn-id: http://svn.automattic.com/wordpress/trunk@17240 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-01-07 21:23:52 +00:00
ryan 85f1feed84 Bring out the shears.
git-svn-id: http://svn.automattic.com/wordpress/trunk@17228 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-01-06 04:11:14 +00:00
ryan 999afab871 Don't sanitize_key() the post type so that colons aren't stripped from attachment types. Props nacin. fixes #15982
git-svn-id: http://svn.automattic.com/wordpress/trunk@17155 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-12-26 22:00:50 +00:00
ryan c626339cca link_notes and term_description escaping fixes. Props garyc40. fixes #15454
git-svn-id: http://svn.automattic.com/wordpress/trunk@17146 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-12-25 22:45:09 +00:00
nacin 300bee4a8d Make get_the_taxonomies() take an array of arguments. props scribu, fixes #14740.
git-svn-id: http://svn.automattic.com/wordpress/trunk@17028 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-12-17 16:33:16 +00:00
ryan 2cc6b2e7ff phpdoc notation fixes. Props demetris. fixes #15852
git-svn-id: http://svn.automattic.com/wordpress/trunk@17009 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-12-16 22:46:13 +00:00
ryan 7e25e3b363 Add like_escape() to some queries. fixes #15764
git-svn-id: http://svn.automattic.com/wordpress/trunk@16999 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-12-16 14:22:41 +00:00
markjaquith 15ebb1f893 Add WP Rewrite root to front of add_permastruct() call when adding a taxonomy. fixes #15813
git-svn-id: http://svn.automattic.com/wordpress/trunk@16918 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-12-14 16:28:16 +00:00
ryan 3949ce12d0 Pink trailing whites.
git-svn-id: http://svn.automattic.com/wordpress/trunk@16900 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-12-13 21:21:50 +00:00
scribu cc34c8aef4 Inline docs for WP_Tax_Query. See #15752
git-svn-id: http://svn.automattic.com/wordpress/trunk@16854 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-12-10 08:20:46 +00:00
scribu 6f9d098c9b Correct relation var and PHP4 constructor. See #15752
git-svn-id: http://svn.automattic.com/wordpress/trunk@16850 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-12-09 19:36:33 +00:00
scribu e5690e7ebe Introduce WP_Tax_Query. Fix canonical redirects in the process. See #15752
git-svn-id: http://svn.automattic.com/wordpress/trunk@16849 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-12-09 19:29:21 +00:00
scribu 5fd4580daa False advertising is bad. See #15752
git-svn-id: http://svn.automattic.com/wordpress/trunk@16845 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-12-09 17:19:23 +00:00
scribu e11b831338 Set tax query defaults earlier, for notice prevention and convenience. See #15752
git-svn-id: http://svn.automattic.com/wordpress/trunk@16843 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-12-09 17:05:40 +00:00
nacin 5aafa64e34 Use correct query var. see #15378.
git-svn-id: http://svn.automattic.com/wordpress/trunk@16837 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-12-09 14:23:54 +00:00
scribu 8ba8d20f16 Make get_term_by() use sanitize_title_for_query() too. See #9591
git-svn-id: http://svn.automattic.com/wordpress/trunk@16832 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-12-09 10:05:19 +00:00
ryan 83d1c0bf29 Use santize_key() in more places. Props WraithKenny. fixes #14910
git-svn-id: http://svn.automattic.com/wordpress/trunk@16822 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-12-08 21:32:19 +00:00
nacin 47cfe8dd05 Post format indexes. First pass. see #15378.
git-svn-id: http://svn.automattic.com/wordpress/trunk@16705 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-12-03 10:13:17 +00:00
westi 57fca2acf3 Clean the cache when deleting a term. Fixes #15651
git-svn-id: http://svn.automattic.com/wordpress/trunk@16691 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-12-02 17:10:02 +00:00
scribu 0c8a8c3655 Get rid of misplaced 'taxonomy_template' filter. Fixes #14740
git-svn-id: http://svn.automattic.com/wordpress/trunk@16665 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-12-01 20:16:24 +00:00
scribu 719b8d8f4a Introduce 'relation' operator between tax queries. Props Otto42 for initial patch. See #12891
git-svn-id: http://svn.automattic.com/wordpress/trunk@16555 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-11-23 20:22:27 +00:00
nacin 69b3167678 Revert [15688], [15689], [15691]. Try again in 3.2. see #14966.
git-svn-id: http://svn.automattic.com/wordpress/trunk@16535 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-11-22 17:17:26 +00:00
scribu 24f00c889f Update get_tax_sql() docblock. See #14579
git-svn-id: http://svn.automattic.com/wordpress/trunk@16523 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-11-21 14:09:01 +00:00
scribu 36658f37ca Fix logic for when excluding a non-existant term. See #12891
git-svn-id: http://svn.automattic.com/wordpress/trunk@16512 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-11-20 21:28:50 +00:00
ryan 44733f9635 If the queried term does not exist make sure no posts are returned in the query rather than falling through to querying all posts. Fixes 404s when querying cats that do not exist. see #12891
git-svn-id: http://svn.automattic.com/wordpress/trunk@16511 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-11-20 21:10:20 +00:00
markjaquith e2879c73fa Exclude term exclusions even if they are also inclusions. props foofy, scribu. see #12891
git-svn-id: http://svn.automattic.com/wordpress/trunk@16467 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-11-18 19:04:47 +00:00
scribu d23ca4da48 Clarify doc-block for wp_delete_object_term_relationships(). Props simonwheatley. Fixes #15472
git-svn-id: http://svn.automattic.com/wordpress/trunk@16466 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-11-18 18:46:41 +00:00
ryan 847499e531 Pinking shears
git-svn-id: http://svn.automattic.com/wordpress/trunk@16438 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-11-17 18:47:34 +00:00
scribu a0e5b38765 Fix ambiguous column error. See #12891
git-svn-id: http://svn.automattic.com/wordpress/trunk@16423 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-11-17 12:33:32 +00:00
scribu f58b21e69d Optimize get_tax_sql(). See #12891
git-svn-id: http://svn.automattic.com/wordpress/trunk@16413 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-11-17 01:56:01 +00:00
scribu af6dbfde54 Revert taxonomy.php part of [16402]. Not fully backed yet. See #12891
git-svn-id: http://svn.automattic.com/wordpress/trunk@16403 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-11-16 16:24:14 +00:00
scribu 690cd434d1 Don't pollute the 'tax_query' query var. See #12891
git-svn-id: http://svn.automattic.com/wordpress/trunk@16402 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-11-16 16:22:09 +00:00
scribu 9e939da4f3 Fix get_tax_sql() docs. Props Viper007Bond. Fixes #15431
git-svn-id: http://svn.automattic.com/wordpress/trunk@16382 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-11-15 11:24:55 +00:00
scribu 2b58e241d0 Better error handling in get_meta_sql(). Props Viper007Bond. See #12891
git-svn-id: http://svn.automattic.com/wordpress/trunk@16379 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-11-15 10:02:39 +00:00
scribu 03dd41a0d2 Improve hook readability via curly brackets. Props jjj for initial patch. Fixes #15422
git-svn-id: http://svn.automattic.com/wordpress/trunk@16365 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-11-14 15:50:02 +00:00
nacin fd4b0965f8 Only register post_format taxonomy to posts. see #15396, #14746.
git-svn-id: http://svn.automattic.com/wordpress/trunk@16322 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-11-12 10:58:58 +00:00
scribu 3cbc8ef308 Make get_tax_sql() a standalone function. See #15032
git-svn-id: http://svn.automattic.com/wordpress/trunk@16267 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-11-09 23:30:35 +00:00
nacin 91d3b6bea9 Introduce menu_name label for taxonomies and post types. Defaults to name. fixes #14832.
git-svn-id: http://svn.automattic.com/wordpress/trunk@16251 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-11-09 02:09:00 +00:00
scribu 568620021d Introduce get_terms_args filter. Fixes #15020
git-svn-id: http://svn.automattic.com/wordpress/trunk@16059 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-28 19:09:18 +00:00
scribu bc5d96f856 Add terms_clauses filter. Props sc0ttkclark for initial patch. See #15020
git-svn-id: http://svn.automattic.com/wordpress/trunk@16056 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-28 17:55:30 +00:00
scribu c613576e77 Introduce sanitize_title_for_query(). See #9591
git-svn-id: http://svn.automattic.com/wordpress/trunk@15929 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-23 12:55:55 +00:00
scribu 99f5c0f184 Remove debugging code in wp_check_term_hierarchy_for_loops(). See #14662
git-svn-id: http://svn.automattic.com/wordpress/trunk@15922 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-22 21:31:57 +00:00
nacin 14ccdbec33 Pruning shears.
git-svn-id: http://svn.automattic.com/wordpress/trunk@15904 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-21 19:55:28 +00:00
nacin 5e1184aa57 Pinking shears.
git-svn-id: http://svn.automattic.com/wordpress/trunk@15843 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-19 07:48:22 +00:00
nacin 76e493c281 Full @since's for 3.1.0.
git-svn-id: http://svn.automattic.com/wordpress/trunk@15842 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-19 07:38:42 +00:00
dd32 81924ad20b Merge Category/Tag URL creation/rewriting into general Taxonomy system. Removes the legacy handling for these url's. See #12659
git-svn-id: http://svn.automattic.com/wordpress/trunk@15825 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-17 05:41:22 +00:00
dd32 baa0935d9a Move hierarchical_url to $args['rewrite']['hierarchical']
git-svn-id: http://svn.automattic.com/wordpress/trunk@15824 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-17 04:36:26 +00:00
ryan 3df9f849ce nav_menu and post_format taxonomies should not be public. fixes #15107
git-svn-id: http://svn.automattic.com/wordpress/trunk@15818 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-15 14:53:55 +00:00
ryan 0a01e66745 Prevent post and term hierarchy loops. Props mdawaffe. fixes #14662
git-svn-id: http://svn.automattic.com/wordpress/trunk@15806 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-14 15:09:04 +00:00
ryan 6ffa9e31d3 Don't hide empty terms when determing exclude trees. Props layotte. fixes #14446
git-svn-id: http://svn.automattic.com/wordpress/trunk@15797 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-13 20:12:20 +00:00
ryan 0982c3c0f9 Post formats, take one. see #14746
git-svn-id: http://svn.automattic.com/wordpress/trunk@15777 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-12 18:33:14 +00:00
nacin b7bacd1bf2 s/Wether/Whether/
git-svn-id: http://svn.automattic.com/wordpress/trunk@15756 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-08 02:35:06 +00:00
scribu 54304cc2d4 Prevent db error when dealing with unexistant parent term. See #12891
git-svn-id: http://svn.automattic.com/wordpress/trunk@15734 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-06 12:06:23 +00:00
scribu 38888b588d Make hierarchical URLs work for any hierarchical taxonomy. See #12659
git-svn-id: http://svn.automattic.com/wordpress/trunk@15732 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-06 11:04:03 +00:00
scribu a8367fa6f2 Generalize taxonomy queries:
* transform wp_tax_query() into WP_Object_Query::get_tax_sql()
	* create parse_tax_query() method in WP_Query
	* add doc-block for $tax_query and $meta_query
See #15032. See #12891.


git-svn-id: http://svn.automattic.com/wordpress/trunk@15731 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-06 10:40:30 +00:00
nacin 7119d7429e Restore wp_delete_category. props blepoxp, fixes #15008.
git-svn-id: http://svn.automattic.com/wordpress/trunk@15712 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-04 16:28:01 +00:00
dd32 d9e1a542ee Introduce hierarchical taxonomy URL's, Can be enabled by setting 'hierarchical_url' to true upon taxonomy registration. See #12659
git-svn-id: http://svn.automattic.com/wordpress/trunk@15705 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-04 10:37:25 +00:00
nacin c6ff4fbaa9 Have wp_delete_category wrap wp_delete_term. Move wp_delete_category into wp-includes scope for consistency. fixes #15008, props blepoxp.
git-svn-id: http://svn.automattic.com/wordpress/trunk@15690 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-03 07:29:44 +00:00
nacin 4e666d5d44 Move some post and taxonomy functions from admin/includes to wp-includes in preparation for QuickPress template tag. Moves get_tags_to_edit, get_terms_to_edit, get_default_post_to_edit, media_buttons, _media_button, get_upload_iframe_src. Also introduce get_media_buttons as a wrapper for media_buttons. props jorbin, see #14966.
git-svn-id: http://svn.automattic.com/wordpress/trunk@15688 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-03 02:58:59 +00:00
scribu d4ded42a1b get_objects_in_term(): include term children when querying by slug. See #12891
git-svn-id: http://svn.automattic.com/wordpress/trunk@15654 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-09-24 14:08:07 +00:00
scribu dea3a23691 Introduce get_ancestors(). Props filosofo. Fixes #12443
git-svn-id: http://svn.automattic.com/wordpress/trunk@15631 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-09-18 19:20:16 +00:00
scribu 2030231f66 Clean up taxonomy queries in WP_Query. See #12891
git-svn-id: http://svn.automattic.com/wordpress/trunk@15613 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-09-13 16:44:14 +00:00
nacin 5a20c05d27 Phpdoc argument/@param cleanups. props duck_, see #14783.
git-svn-id: http://svn.automattic.com/wordpress/trunk@15590 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-09-07 11:21:11 +00:00
markjaquith 48ca617449 Make the second (taxonomy) parameter for get_term_link() optional if you pass in a term object as the first argument (which has the taxonomy in it). fixes #13081. props scribu
git-svn-id: http://svn.automattic.com/wordpress/trunk@15586 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-09-07 04:29:00 +00:00
markjaquith 437a0f5cbb Do not cache terms indefinitely... use TTL of one day. fixes #11431. props Denis-de-Bernardy
git-svn-id: http://svn.automattic.com/wordpress/trunk@15583 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-09-07 04:13:01 +00:00
scribu 020ce73746 Ajaxify list-type screens in the admin. See #14579
git-svn-id: http://svn.automattic.com/wordpress/trunk@15491 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-08-11 21:54:51 +00:00
ryan 900c2e22d4 If category already exists, return its ID. Restores previous behavior. fixes #14067 for 3.1
git-svn-id: http://svn.automattic.com/wordpress/trunk@15425 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-07-14 14:12:23 +00:00
dd32 a14d289755 Alot more tabs. Props jacobsantos & Viper007bond. See #14147
git-svn-id: http://svn.automattic.com/wordpress/trunk@15355 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-06-30 00:05:18 +00:00
ryan c614b6d0a2 Deprecate is_term, is_taxonomy, is_post_type for *_exists(). Props nacin. fixes #13747
git-svn-id: http://svn.automattic.com/wordpress/trunk@15220 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-06-11 15:53:41 +00:00
nacin af612805e8 Move 'helps' argument to the taxonomy labels object. Also move over help_nojs and help_cloud, both introduced in 3.0. This adds three new core labels for non-hierarchical taxonomies, for tweaking the meta box strings. fixes #13805.
git-svn-id: http://svn.automattic.com/wordpress/trunk@15190 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-06-10 16:07:33 +00:00
nacin bdd183d1eb Remove 'popular_items' label for hierarchical taxonomies. see [15140], [15141]
git-svn-id: http://svn.automattic.com/wordpress/trunk@15142 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-06-04 19:21:06 +00:00
ryan 17129fb62e Cut 'em out, move 'em on, trailing whitespace
git-svn-id: http://svn.automattic.com/wordpress/trunk@15116 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-06-02 20:04:07 +00:00
ryan 23ad4b4ef0 Remove debug. fixes #13670
git-svn-id: http://svn.automattic.com/wordpress/trunk@15110 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-06-02 15:00:09 +00:00
ryan dd66d99477 Make _pad_term_counts custom post type aware. Props reko. fixes #13670
git-svn-id: http://svn.automattic.com/wordpress/trunk@15108 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-06-02 14:55:33 +00:00