Scott Taylor
8dad11bfe2
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 .
git-svn-id: https://develop.svn.wordpress.org/trunk@27108 602fd350-edb4-49c9-b593-d223f7449a82
2014-02-06 17:44:50 +00:00
Scott Taylor
50a96f165e
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 .
git-svn-id: https://develop.svn.wordpress.org/trunk@27102 602fd350-edb4-49c9-b593-d223f7449a82
2014-02-06 01:58:01 +00:00
Scott Taylor
e33ef0c6ac
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 .
git-svn-id: https://develop.svn.wordpress.org/trunk@27101 602fd350-edb4-49c9-b593-d223f7449a82
2014-02-06 01:40:05 +00:00
Scott Taylor
13c1dd0004
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 $nulls have been removed.
...
Props toszcze.
Fixes #24768 .
git-svn-id: https://develop.svn.wordpress.org/trunk@27057 602fd350-edb4-49c9-b593-d223f7449a82
2014-01-29 06:45:54 +00:00
Drew Jaynes
707e91c1e8
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 .
git-svn-id: https://develop.svn.wordpress.org/trunk@26912 602fd350-edb4-49c9-b593-d223f7449a82
2014-01-07 02:12:03 +00:00
Drew Jaynes
bd39e26032
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 .
git-svn-id: https://develop.svn.wordpress.org/trunk@26868 602fd350-edb4-49c9-b593-d223f7449a82
2013-12-24 18:56:05 +00:00
Andrew Nacin
922125f1cc
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 .
git-svn-id: https://develop.svn.wordpress.org/trunk@26544 602fd350-edb4-49c9-b593-d223f7449a82
2013-12-02 23:05:49 +00:00
Scott Taylor
b595282dff
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 .
git-svn-id: https://develop.svn.wordpress.org/trunk@26510 602fd350-edb4-49c9-b593-d223f7449a82
2013-12-01 23:59:13 +00:00
Sergey Biryukov
fc8d09e2a6
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 .
git-svn-id: https://develop.svn.wordpress.org/trunk@26028 602fd350-edb4-49c9-b593-d223f7449a82
2013-11-06 23:40:46 +00:00
Scott Taylor
ed22220a0f
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.
git-svn-id: https://develop.svn.wordpress.org/trunk@26010 602fd350-edb4-49c9-b593-d223f7449a82
2013-11-05 01:18:02 +00:00
Helen Hou-Sandi
b2e15261ba
Allow passing false for the meta_box_cb arg in register_taxonomy() to turn off the meta box display entirely. fixes #21543 .
...
git-svn-id: https://develop.svn.wordpress.org/trunk@25948 602fd350-edb4-49c9-b593-d223f7449a82
2013-10-27 16:28:19 +00:00
Andrew Nacin
90b55d0279
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.
git-svn-id: https://develop.svn.wordpress.org/trunk@25933 602fd350-edb4-49c9-b593-d223f7449a82
2013-10-26 15:03:10 +00:00
Andrew Nacin
b0717588b7
Introduce register_taxonomy_for_object_type().
...
props leewillis77.
fixes #11058 .
git-svn-id: https://develop.svn.wordpress.org/trunk@25596 602fd350-edb4-49c9-b593-d223f7449a82
2013-09-24 02:54:00 +00:00
Andrew Nacin
9a45c4a414
Pass $taxonomies to two more filters in get_terms().
...
props johnbillion.
fixes #18754 .
git-svn-id: https://develop.svn.wordpress.org/trunk@25576 602fd350-edb4-49c9-b593-d223f7449a82
2013-09-23 18:38:50 +00:00
Andrew Nacin
46fef6ef24
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 .
git-svn-id: https://develop.svn.wordpress.org/trunk@25572 602fd350-edb4-49c9-b593-d223f7449a82
2013-09-23 17:11:09 +00:00
Scott Taylor
0d6c7bbbc3
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 .
git-svn-id: https://develop.svn.wordpress.org/trunk@25553 602fd350-edb4-49c9-b593-d223f7449a82
2013-09-21 17:43:14 +00:00
Scott Taylor
325b1bf175
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 .
git-svn-id: https://develop.svn.wordpress.org/trunk@25551 602fd350-edb4-49c9-b593-d223f7449a82
2013-09-21 16:47:43 +00:00
Drew Jaynes
bb42ed6893
Clarify error handling and special cases in the wp_insert_term() phpdoc block.
...
props lgedeon, SergeyBiryukov. See #22801 .
git-svn-id: https://develop.svn.wordpress.org/trunk@25498 602fd350-edb4-49c9-b593-d223f7449a82
2013-09-19 16:08:30 +00:00
Sergey Biryukov
15265acec5
Update inline documentation for wp_insert_term().
...
props DrewAPicture.
fixes #22801 .
git-svn-id: https://develop.svn.wordpress.org/trunk@25489 602fd350-edb4-49c9-b593-d223f7449a82
2013-09-19 01:56:16 +00:00
Scott Taylor
88639cb9b4
Use wp_parse_args() again for $args['rewrite'] in register_taxonomy().
...
Props SergeyBiryukov.
Fixes #23668 .
git-svn-id: https://develop.svn.wordpress.org/trunk@25483 602fd350-edb4-49c9-b593-d223f7449a82
2013-09-18 20:38:53 +00:00
Scott Taylor
f9877147f6
Use reset() to access the first element of an array, don't assume there is an item at index 0.
...
See #25282 .
git-svn-id: https://develop.svn.wordpress.org/trunk@25384 602fd350-edb4-49c9-b593-d223f7449a82
2013-09-12 05:08:33 +00:00
Scott Taylor
d091e1d0b7
Avoid a notice by casting $args['rewrite'] to array() before adding a slug property and running array_merge().
...
Fixes #23668 .
git-svn-id: https://develop.svn.wordpress.org/trunk@25351 602fd350-edb4-49c9-b593-d223f7449a82
2013-09-11 17:17:00 +00:00
Scott Taylor
3ee8135baa
Don't call sanitize_title_with_dashes( $taxonomy ) in register_taxonomy() unless $args['rewrite']['slug'] is empty.
...
Props SergeyBiryukov.
Fixes #23668 .
git-svn-id: https://develop.svn.wordpress.org/trunk@25335 602fd350-edb4-49c9-b593-d223f7449a82
2013-09-11 00:08:04 +00:00
Scott Taylor
0c0c81d81c
Add term_taxonomy_id to available fields in get_term_by(). Adds unit test.
...
Props jchristopher.
Fixes #21651 .
git-svn-id: https://develop.svn.wordpress.org/trunk@25334 602fd350-edb4-49c9-b593-d223f7449a82
2013-09-11 00:01:19 +00:00
Scott Taylor
e8c7634e79
Avoid database error when include or exclude is not really a term_id. Adds more unit tests.
...
Props kovshenin.
Fixes #11823 .
git-svn-id: https://develop.svn.wordpress.org/trunk@25257 602fd350-edb4-49c9-b593-d223f7449a82
2013-09-05 17:14:54 +00:00
Scott Taylor
89997e4c80
Introduce description__like arg to get_terms(). Make description__like and name__like perform LIKEs 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 .
git-svn-id: https://develop.svn.wordpress.org/trunk@25241 602fd350-edb4-49c9-b593-d223f7449a82
2013-09-04 19:40:17 +00:00
Scott Taylor
59b9a3a6f8
No need to re-map the return values of wp_parse_id_list() to int.
...
See #22074 , #11823 .
git-svn-id: https://develop.svn.wordpress.org/trunk@25169 602fd350-edb4-49c9-b593-d223f7449a82
2013-08-29 18:53:03 +00:00
Scott Taylor
d34baebc1d
Search term name and slug when the search arg is passed to get_terms(). Adds unit test.
...
Props wojtek.szkutnik.
Fixes #13992 .
git-svn-id: https://develop.svn.wordpress.org/trunk@25164 602fd350-edb4-49c9-b593-d223f7449a82
2013-08-29 16:49:43 +00:00
Scott Taylor
a4a765c5fd
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 .
git-svn-id: https://develop.svn.wordpress.org/trunk@25162 602fd350-edb4-49c9-b593-d223f7449a82
2013-08-29 16:23:30 +00:00
Scott Taylor
69785902db
Support id=>name and id=>slug values for fields arg in get_terms(). Adds unit tests.
...
Props mikeschinkel.
Fixes #13661 .
git-svn-id: https://develop.svn.wordpress.org/trunk@25161 602fd350-edb4-49c9-b593-d223f7449a82
2013-08-29 15:18:08 +00:00
Andrew Nacin
713c6cfb88
Pass $taxonomies to the get_terms_orderby filter.
...
props johnbillion.
fixes #18754 .
git-svn-id: https://develop.svn.wordpress.org/trunk@25142 602fd350-edb4-49c9-b593-d223f7449a82
2013-08-27 21:05:03 +00:00
Dominik Schilling (ocean90)
ad422b8366
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 .
git-svn-id: https://develop.svn.wordpress.org/trunk@25133 602fd350-edb4-49c9-b593-d223f7449a82
2013-08-26 22:34:56 +00:00
Dominik Schilling (ocean90)
d0365d1383
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 .
git-svn-id: https://develop.svn.wordpress.org/trunk@25130 602fd350-edb4-49c9-b593-d223f7449a82
2013-08-26 20:23:34 +00:00
Scott Taylor
46c24c3cf2
Use reset() to grab the first taxonomy in an array, not by numerical index. Cleans up whitespace. Props webord, nbachiyski. Fixes #23506 .
...
git-svn-id: https://develop.svn.wordpress.org/trunk@25108 602fd350-edb4-49c9-b593-d223f7449a82
2013-08-23 21:28:34 +00:00
Scott Taylor
39171d7527
Check term_id against the $term object, not the non-existent var $args. Props rboren. Fixes #12729 .
...
git-svn-id: https://develop.svn.wordpress.org/trunk@25106 602fd350-edb4-49c9-b593-d223f7449a82
2013-08-23 21:04:22 +00:00
Andrew Nacin
b43712e0f7
New develop.svn.wordpress.org repository based on the old core.svn repository.
...
* All WordPress files move to a src/ directory.
* New task runner (Grunt), configured to copy a built WordPress to build/.
* svn:ignore and .gitignore for Gruntfile.js, wp-config.php, and node.js.
* Remove Akismet external from develop.svn. Still exists in core.svn.
* Drop minified files from src/. The build process will now generate these.
props koop.
see #24976 .
and see http://wp.me/p2AvED-1AI .
git-svn-id: https://develop.svn.wordpress.org/trunk@25001 602fd350-edb4-49c9-b593-d223f7449a82
2013-08-07 05:25:25 +00:00