Commit Graph

941 Commits

Author SHA1 Message Date
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
Sergey Biryukov f9792ed973 Correct @return value for get_children().
props ghost1227.
fixes #28422.
Built from https://develop.svn.wordpress.org/trunk@28677


git-svn-id: http://core.svn.wordpress.org/trunk@28495 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-05 15:53:14 +00:00
Drew Jaynes b0a1f67b6b Be more specific that `$post_id` does not default to the ID of the global `$post` in some cases.
See [28654]. See #28388.

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


git-svn-id: http://core.svn.wordpress.org/trunk@28473 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-03 04:52:15 +00:00
Drew Jaynes 3724252959 Ensure `$post_id` is documented as optional where applicable.
See #28388.

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


git-svn-id: http://core.svn.wordpress.org/trunk@28472 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-03 04:44:16 +00:00
Andrew Nacin 3a2174002e Revert [28579] and [28582]. see #21963.
Built from https://develop.svn.wordpress.org/trunk@28601


git-svn-id: http://core.svn.wordpress.org/trunk@28426 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-28 18:14:15 +00:00
Scott Taylor 714aae91ea Fix some inline docs churn in `wp_insert_post()` after [28579].
Props kpdesign.
See #21963.


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


git-svn-id: http://core.svn.wordpress.org/trunk@28407 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-27 00:24:15 +00:00
Scott Taylor b184336927 Combine `wp_insert_attachment()` and `wp_insert_post()`. `wp_insert_attachment()` becomes a wrapper. Update inline docs.
Props wonderboymusic, DrewAPicture.
See #21963.

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


git-svn-id: http://core.svn.wordpress.org/trunk@28404 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-26 23:20:13 +00:00
Scott Taylor 8d4d645629 Fix parsing in `wp_match_mime_types()` to allow some mime-types with `+` in them to appear in the list of filter links shown above the list table on `upload.php`.
Props _duck.
Fixes #20672.


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


git-svn-id: http://core.svn.wordpress.org/trunk@28379 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-22 21:36:15 +00:00
Scott Taylor f4661c6659 Eliminate the use of `extract()` in `get_pages()`.
See #22400.

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


git-svn-id: http://core.svn.wordpress.org/trunk@28298 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-17 17:12:15 +00:00
Scott Taylor 1bd4118799 Eliminate the use of `extract()` in `wp_insert_attachment()`.
`wp_insert_attachment()` and `wp_insert_post()` are incredibly similar, but have branched logic. I have annotated many places where they diverge.

See #22400.

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


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

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


git-svn-id: http://core.svn.wordpress.org/trunk@28296 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-17 15:53:15 +00:00
Scott Taylor ef8b813682 Eliminate use of `extract()` in `trackback_url_list()`.
See #22400.

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


git-svn-id: http://core.svn.wordpress.org/trunk@28210 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-13 04:44:15 +00:00
Scott Taylor 1aed1f1108 In `get_pages()`, `$cache` does not need to be reset to an empty array. `update_post_cache( $pages )` takes care of priming.
In `set_post_thumbnail()`, (accidental) assignment is unnecessary for `$thumbnail_html` as it is not used. 

See #27882.

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


git-svn-id: http://core.svn.wordpress.org/trunk@28160 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-06 21:39:14 +00:00
John Blackbourn ab041987d3 Remove some unnecessary abstraction introduced in [28191]. See #27985.
Built from https://develop.svn.wordpress.org/trunk@28194


git-svn-id: http://core.svn.wordpress.org/trunk@28024 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-24 11:55:22 +00:00
John Blackbourn d6e03df3c9 Avoid an expensive attachment counting query on the post editing screen. See #27985, for trunk.
Built from https://develop.svn.wordpress.org/trunk@28191


git-svn-id: http://core.svn.wordpress.org/trunk@28021 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-23 22:05:16 +00:00
Drew Jaynes 2d79af0e0a Part II of inline documentation for hooks in wp-includes/post.php.
Documents all remaining hooks following [28041] and [28042]. Also updates the hash notation style for `wp_insert_post()`.

Props nacin for several hook descriptions.

Fixes #25376.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27937 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-13 23:06:14 +00:00
Drew Jaynes a55d734f60 Clarify documentation for hooks in `sanitize_post_field()`.
* `edit_post_{$field}` pairs with `edit_{$field}`
* `pre_post_{$field}` pairs with `pre_{$field}`
* `post_{$field}` pairs with `{$field}`

As the above pairs' docs are unnecessarily duplicative, the second sets of docs have been removed. Also, the "duplicates" are purposely not marked as such in this case as the hook names differ. Also remove `@deprecated` tags mistakenly left in in [28041].

See #25376.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27872 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-08 07:41:14 +00:00
Drew Jaynes 07ee43d6d0 Part I of inline documenation for hooks in wp-includes/post.php.
Adds docs for the following hooks:
* `get_attached_file`
* `update_attached_file`
* `_wp_relative_upload_path`
* `post_type_labels_{$post_type}`
* `edit_{$field}`
* `{$field_no_prefix}_edit_pre`
* `edit_post_{$field}`
* `pre_{$field}`
* `{$field_no_prefix}_save_pre`
* `pre_post_{$field}`
* `{$field}_pre`
* `$field`
* `post_{$field}`
* `wp_count_posts`
* `wp_count_attachments`
* `post_mime_types`
* `wp_insert_post_empty_content`

See #25376.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27871 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-08 06:49:14 +00:00
Drew Jaynes cebbcd473c Fix the `wp_count_attachments()` PHPDoc to reflect that it returns an object, not array.
See #25412.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27641 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-28 05:43:15 +00:00
Scott Taylor 0a2e85d3f0 Use `wp_parse_id_list()` when parsing `exclude_tree` in `get_pages()`. Add unit tests to ensure a URL string, array with string as value, and array with array as value for `exclude_tree` can be used to specify multiple IDs.
Props cgaffga, roothorick, hakre, tbrams for patches across the years.
Fixes #9153.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27604 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-27 01:18:14 +00:00
Helen Hou-Sandí 52d2920891 Use Dashicon-style images for mime type icons. Actually moving to Dashicons via the font can be explored later, but has theme/plugin implications and requires too many changes to make it for 3.9. props melchoyce for the icons. fixes #26650.
Built from https://develop.svn.wordpress.org/trunk@27726


git-svn-id: http://core.svn.wordpress.org/trunk@27563 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-25 21:10:15 +00:00
Scott Taylor 38d1fb971f Turn on thumbnail support for `attachment:audio` and `attachment:video`. Change conditionals to check for theme OR post type support when determining whether to turn on the Featured Image UI pieces in the admin.
Fixes #27460.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27500 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-23 02:35:14 +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
Andrew Nacin 17ccbc86c9 Rename the new page_templates filter to theme_page_templates, and pass it a post object for proper context.
see #13265.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27315 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-08 04:19:16 +00:00
John Blackbourn 3a0a98205c Allow `get_page_by_path()` and `get_page_by_title()` to accept an array of post types. Fixes #24763. Props zbtirrell.
Built from https://develop.svn.wordpress.org/trunk@27423


git-svn-id: http://core.svn.wordpress.org/trunk@27270 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-05 22:26: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
Sergey Biryukov ab8847316c Correct return values for update_metadata() and related functions.
fixes #21864.
Built from https://develop.svn.wordpress.org/trunk@27191


git-svn-id: http://core.svn.wordpress.org/trunk@27050 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-18 21:36:14 +00:00
Drew Jaynes 8c9f7965af Inline documentation for the `wp_insert_attachment_data` filter hook, added in [27130].
Fixes #20547.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27005 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-08 22:47:12 +00:00
Scott Taylor cbc1b90633 Add a filter `wp_insert_attachment_data` in `wp_insert_attachment()`. This is similar to the `wp_insert_post_data` filter in `wp_insert_post()`.
Fixes #20547.


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


git-svn-id: http://core.svn.wordpress.org/trunk@26997 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-08 00:44:13 +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 4830eeb9ad Properly invalidate the cache for `wp_count_posts()` on insert, trash, or when transitioning `post_status` inside of `_transition_post_status()`. Introduces `_count_posts_cache_key()`. Adds unit tests.
Props mark8barnes, for bringing this to our attention in an initial patch.
Fixes #21879.


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


git-svn-id: http://core.svn.wordpress.org/trunk@26954 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-03 19:42:13 +00:00
Drew Jaynes edce7b88b5 Improve inline documentation for `add_post_type_support()`.
Props philiparthurmoore.
Fixes #26683.

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


git-svn-id: http://core.svn.wordpress.org/trunk@26792 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-07 02:05:11 +00:00
Sergey Biryukov 0ddaa76f3e Use correct example of a Dashicons helper class in add_menu_page() and register_post_type() docs.
props Rarst.
fixes #26617 for trunk.
Built from https://develop.svn.wordpress.org/trunk@26884


git-svn-id: http://core.svn.wordpress.org/trunk@26767 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-12-31 10:33:11 +00:00
Andrew Nacin 9b29ad0529 Allow for Dashicons and base64-encoded data:image/svg+xml URIs when specifying menu icons.
Both of these icons can be colored to match the color scheme, including hover states.
Both are accepted for register_post_type()'s menu_icon argument, and also add_menu_page()'s $icon_url argument.

To use a Dashicon, pass the name of the helper class, e.g. 'dashicons-piechart'.
To use an SVG, pass a valid data URI string starting with 'data:image/svg+xml;base64,'.

props helen.
fixes #25147.

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


git-svn-id: http://core.svn.wordpress.org/trunk@26554 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-12-05 06:38:09 +00:00
Andrew Nacin 6fa4ce2284 Return false from wp_delete_post() and wp_delete_attachment() if the DELETE is unsuccessful.
This prevents attachments from being deleted off disk when a DB is locked and the delete is otherwise unsuccessful.

fixes #25107.

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


git-svn-id: http://core.svn.wordpress.org/trunk@26435 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-12-02 22:59:10 +00:00
Scott Taylor 295851d0bb In `get_posts()`, alter the doc block and default args to make `orderby` equal to `date`, not `post_date`.
Props ounziw.
Fixes #26128.


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


git-svn-id: http://core.svn.wordpress.org/trunk@26231 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-11-22 17:39:10 +00:00
Andrew Nacin d0cfa40983 Add jshintrc to qunit.
props jorbin.
see #25187.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25925 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-30 14:39:10 +00:00
Andrew Nacin 5361a8abca Spell out duplicate hook locations.
props DrewAPicture.
fixes #25658.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25868 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-24 22:59:20 +00:00
Andrew Nacin 8ae8e01b67 Remove the old wp_auto_updates_maybe_update cron event. Schedule the new wp_maybe_auto_update event at 7 a.m. and 7 p.m. in the site's timezone.
see #27704.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25825 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-24 22:53:14 +00:00
Andrew Nacin 74488bdcb0 Spell out duplicate hook locations.
props DrewAPicture.
fixes #25658.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25780 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-22 17:22:11 +00:00
Andrew Nacin 5b6bcb218d Reset "Page on Front" when such a page is trashed.
props danielbachhuber.
fixes #24171.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25602 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-03 03:51:09 +00:00
Dominik Schilling e4c8d56b76 Replace use of global `$user_ID` in favor of `get_current_user_id()`. fixes #25372.
Built from https://develop.svn.wordpress.org/trunk@25669


git-svn-id: http://core.svn.wordpress.org/trunk@25585 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-02 21:10:09 +00:00
Scott Taylor 3f42db549c `post_content` does not have a default value in the `$wpdb->posts` table. Add a default value of empty string to `wp_insert_attachment()` to avoid a tornado of database errors in PHP 5.5/MySQL 5.6, even when debug mode is turned off.
See #25282.


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


git-svn-id: http://core.svn.wordpress.org/trunk@25577 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-02 19:52:09 +00:00
Drew Jaynes 82904baffd Improve inline documentation for `wp_insert_post()` by adding a hash notation.
See #25412.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25545 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-25 17:34:08 +00:00
Drew Jaynes 38b7b3a1c5 Clarify inline documentation for the return in `get_attached_file()`.
Fixes #25409.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25526 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-24 21:29:08 +00:00
Andrew Nacin 71263c4854 Use correct variable. props helen. see #17071.
Built from https://develop.svn.wordpress.org/trunk@25581


git-svn-id: http://core.svn.wordpress.org/trunk@25498 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-23 20:18:10 +00:00
Andrew Nacin 8fa6e99edc Introduce a wp_count_attachments filter.
props kevinB.
fixes #17071.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25496 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-23 19:11:09 +00:00
Andrew Nacin a4040ea928 In wp_count_posts(), rename 'count_posts' hook to 'wp_count_posts', for clarity. see #16603.
Built from https://develop.svn.wordpress.org/trunk@25578


git-svn-id: http://core.svn.wordpress.org/trunk@25495 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-23 19:08: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 8697ae572e Add hooks to `wp_count_posts()`. Adds filter docs. Adds unit test to test `count_posts` filter.
Props nacin, DrewAPicture. 
Fixes #16603.


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


git-svn-id: http://core.svn.wordpress.org/trunk@25474 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-21 17:55:08 +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 8bd9659d0d Move checks for `post_type` being an array inline. See [25291], [25292], #18614.
Built from https://develop.svn.wordpress.org/trunk@25312


git-svn-id: http://core.svn.wordpress.org/trunk@25274 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-10 03:02:10 +00:00
Scott Taylor d7704991b3 Check the value passed to `get_post_type_object()`. If it's an array, use the first item. `get_query_var( 'post_type' )` can be an array if the query has been altered via filters/actions. There are several places in core that pass the query var. Adds unit tests.
In `template-loader.php`, move `is_post_type_archive()` and `is_tax()` directly below `is_home()`.

See #18614, [25291].


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


git-svn-id: http://core.svn.wordpress.org/trunk@25256 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-06 23:39:09 +00:00
Andrew Nacin 4b40e7a646 More adjustments and improvements for inline documentation for get_pages(). see #25186.
Built from https://develop.svn.wordpress.org/trunk@25271


git-svn-id: http://core.svn.wordpress.org/trunk@25237 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-06 01:21:09 +00:00
Scott Taylor 54c5a75e68 Simplify the check for false-y `child_of` arg.
Props SergeyBiryukov.
See #25230, [25245].


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


git-svn-id: http://core.svn.wordpress.org/trunk@25236 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-05 23:36:10 +00:00
Scott Taylor cc41e7d04a Fix spacing in docs for `get_pages()`.
Props DrewAPicture.
See #25186.


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


git-svn-id: http://core.svn.wordpress.org/trunk@25234 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-05 23:21:10 +00:00
Scott Taylor 1855f97a2c Add docs to the woefully under-documented `get_pages()`.
Props DrewAPicture.
Fixes #25186.


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


git-svn-id: http://core.svn.wordpress.org/trunk@25232 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-05 22:13:09 +00:00
Scott Taylor d1a40562eb Add check to make sure a valid argument was passed to `get_page_uri()`.
Props Viper007Bond.
Fixes #24491.



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


git-svn-id: http://core.svn.wordpress.org/trunk@25230 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-05 21:42:10 +00:00
Scott Taylor 6253183ffc Set `hierarchical` to `false` when `parent` is passed to `get_pages()` and `child_of` is not.
Fixes #25230.


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


git-svn-id: http://core.svn.wordpress.org/trunk@25213 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-04 21:00:09 +00:00
Scott Taylor bf6da40cfc Allow `get_pages()` to accept an `array` for the arg `parent`. Adds unit tests, some will fail until the next commit.
Fixes #9470.


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


git-svn-id: http://core.svn.wordpress.org/trunk@25212 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-04 20:56:09 +00:00
Scott Taylor f1a33028f6 Allow `int` to be passed in lieu of `array`, add `append` arg to `wp_set_post_categories()`. Adds more extensive unit tests for `wp_set_post_categories()`.
Props ptahdunbar for initial patch.
Fixes #16550.


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


git-svn-id: http://core.svn.wordpress.org/trunk@25204 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-04 17:42:10 +00:00
Jon Cave 93b2edbbba Correct rewrite tag for hierarchical post types without a query_var.
Hierarchical rewrite rules operate via the 'pagename' query variable which is
passed to get_page_by_path(). However, the current rewrite rules use the 'name'
query variable for hierarchical types without a custom query_var.

Fixes #16323.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25154 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-30 08:08:09 +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 0624fe960b Improve the include / exclude SQL generation in `get_pages()` by using `IN` and `NOT IN` where applicable. Adds unit tests for include / exclude.
Fixes #22074.


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


git-svn-id: http://core.svn.wordpress.org/trunk@25144 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-29 18:49:09 +00:00
Scott Taylor 8e6abf65a8 Respect the `fields` arg when passed to `get_children()`.
Fixes #22208.


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


git-svn-id: http://core.svn.wordpress.org/trunk@25139 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-29 15:08:12 +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
Sergey Biryukov b86ea82b12 Fix typo in phpdoc. props jamescollins. fixes #25092.
Built from https://develop.svn.wordpress.org/trunk@25097


git-svn-id: http://core.svn.wordpress.org/trunk@25079 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-22 23:48:09 +00:00
Andrew Nacin fa4c7a1feb PHPDoc for WP_Post properties. fixes #25092.
Built from https://develop.svn.wordpress.org/trunk@25086


git-svn-id: http://core.svn.wordpress.org/trunk@25070 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-22 15:58:09 +00:00
Scott Taylor a9dc60c9a8 Improve inline docs for function params that can be serialized when non-scalar. Fixes #18488.
Built from https://develop.svn.wordpress.org/trunk@25076


git-svn-id: http://core.svn.wordpress.org/trunk@25061 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-21 21:11:09 +00:00
Dominik Schilling 8ad024f30a Introduce save_post_{$post_type} hook.
The hook is fired before the general save_post hook and has the same args as save_post.

props bmb, SergeyBiryukov, ocean90, fixes #16176.
Built from https://develop.svn.wordpress.org/trunk@25050


git-svn-id: http://core.svn.wordpress.org/trunk@25037 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-17 20:21:09 +00:00
Andrew Nacin 08c4061af7 In get_attached_file(), fix the explanation of when the filter is bypassed. props devesine, fixes #24571.
git-svn-id: http://core.svn.wordpress.org/trunk@24983 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-05 22:07:42 +00:00
Andrew Nacin 487327cf4e Pass $update = true to the save_post and wp_insert_post hooks in wp_publish_post().
see #21450, [24823].

props wpsmith.
fixes #24957.


git-svn-id: http://core.svn.wordpress.org/trunk@24977 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-05 21:41:51 +00:00
Andrew Nacin c95a24f2d9 When registering a post type, pass the correct argument for feeds to add_permastruct().
props butuzov, johnpbloch.
fixes #23302.



git-svn-id: http://core.svn.wordpress.org/trunk@24830 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-28 22:28:18 +00:00
Andrew Nacin 87f9d112c0 Return an empty stdClass from wp_count_posts() when a nonexistent post type is requested.
props johnpbloch.
fixes #24803.



git-svn-id: http://core.svn.wordpress.org/trunk@24826 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-28 21:38:00 +00:00
Andrew Nacin aa6d93cd3e Pass $update to the save_post and wp_insert_post hooks in wp_insert_post(). props ericmann, fixes #21450.
git-svn-id: http://core.svn.wordpress.org/trunk@24823 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-28 21:05:25 +00:00
Michael Adams f993cfd8e3 Fix inline docs for posts functions that no longer use `$wpdb`.
Props jdgrimes, JustinSainton.


git-svn-id: http://core.svn.wordpress.org/trunk@24807 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-28 18:52:56 +00:00
Andrew Nacin df0ac70aff Add a default post_title value to wp_insert_attachment() to avoid a notice when there is no ID3 title.
props wonderboymusic.
see #24805.



git-svn-id: http://core.svn.wordpress.org/trunk@24759 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-20 20:20:47 +00:00
Andrew Nacin ab72605607 More clear and concise escaping in get_page_by_path(). see #21767.
git-svn-id: http://core.svn.wordpress.org/trunk@24715 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-16 14:23:29 +00:00
Andrew Nacin 092a33115c Remove wp_parse_post_content(), get_paged_content(), paginate_content() from 3.6, and remove the new $id parameters for get_the_content() and the_content().
The content parsing functions are good abstractions, but are no longer needed by core and are too closely tied to legacy globals, rather than paving a new path.

For get_the_content() and the_content(), this only worsens the function prototype. It muddies theme-specific display (more links, etc) with filtered content. `apply_filters( 'the_content', $post->post_content )` is sufficient practice for now.

see #24330, [24301]. see #23625, [23804].



git-svn-id: http://core.svn.wordpress.org/trunk@24598 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-09 05:22:50 +00:00
Sergey Biryukov 58c364947f PHPDoc fixes and additions. fixes #24616.
git-svn-id: http://core.svn.wordpress.org/trunk@24490 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-06-21 12:45:11 +00:00
Mark Jaquith 28e3c51dab Lose content removal and splitting from the media extraction functions.
see #24484

git-svn-id: http://core.svn.wordpress.org/trunk@24400 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-06-03 19:27:58 +00:00
Mark Jaquith 89fd06e44b First pass at removing Post Format UI.
see #24452. fixes #24455.

git-svn-id: http://core.svn.wordpress.org/trunk@24388 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-05-30 21:33:46 +00:00
Ryan Boren a2b4bc456f * Introduce wp_parse_post_content() and use it in setup_postdata(), get_the_content(), and get_the_remaining_content().
* Add a post ID argument to the_content(), get_the_content(), the_remaining_content(), and get_the_remaining_content().
* Pass the post ID to the the_content filter.
* Remove the format_pages global.
* Declare format_content and split_content as vars in WP_Post.
* phpdoc for the the_content filter that documents the new ID argument and denotes it as not-so-portable.

Props gcorne, DrewAPicture, duck_, aaroncampbell
see #24330


git-svn-id: http://core.svn.wordpress.org/trunk@24301 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-05-20 11:05:50 +00:00
Sergey Biryukov 396166203e Fix handling of '0' as meta_value argument in get_pages(). fixes #20376.
git-svn-id: http://core.svn.wordpress.org/trunk@24238 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-05-10 19:18:54 +00:00
Sergey Biryukov 74638ccb5a Fix typos in phpdoc. props TheLastCicada. fixes #24302.
git-svn-id: http://core.svn.wordpress.org/trunk@24229 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-05-10 01:39:30 +00:00
Sergey Biryukov 57c10eadbb Use ellipsis instead of three dots. props tjsingleton, jordie23, wojtek.szkutnik, DrewAPicture, SergeyBiryukov. see #8714.
git-svn-id: http://core.svn.wordpress.org/trunk@24207 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-05-08 21:27:31 +00:00
Andrew Nacin 92b4636e17 Required arguments can't follow optional arguments.
Make required arguments optional in confirm_blog_signup().

Mark arguments as required in _future_post_hook(), the walker method display_element(), get_author_link() (deprecated), and the WP_Widget constructor.

props rlerdorf.
see #24210.



git-svn-id: http://core.svn.wordpress.org/trunk@24126 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-29 13:26:31 +00:00
Mark Jaquith 7c1ef6c33a Use get_post_format() instead of assuming we already have it.
* Fixes an issue where image posts without a title could not be deleted

fixes #23887. see #24046. props WraithKenny, SergeyBiryukov.

git-svn-id: http://core.svn.wordpress.org/trunk@24015 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-17 17:49:44 +00:00
Mark Jaquith 259f4fdef4 Allow the content of no-title audio, video, quote, and image posts to be blanked.
props wonderboymusic. fixes #23623.

git-svn-id: http://core.svn.wordpress.org/trunk@23986 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-14 01:43:01 +00:00
Mark Jaquith cccb2939db Fix a longstanding "off by one" revision authorship bug.
* Fixes old revision data on the fly when you open a post for editing.
* Uses post_name of revisions to store a post version number (-v1), so we know what has been fixed.
* Latest version should also have a revision stored, whereas before it did not.

props adamsilverstein, mdawaffe. fixes #16215.

git-svn-id: http://core.svn.wordpress.org/trunk@23823 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-27 20:21:38 +00:00
Ryan Boren 77f431ec4c Bail early with correct WP_Error when an invalid post ID is passed to wp_insert_post() and wp_update_post().
Props simonwheatley
fixes #23474


git-svn-id: http://core.svn.wordpress.org/trunk@23740 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-18 14:33:09 +00:00
Sergey Biryukov 27298cd802 Remove redundant code from post_type_supports() and remove_post_type_support(). props obenland, bilalcoder. fixes #21527.
git-svn-id: http://core.svn.wordpress.org/trunk@23722 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-15 18:28:33 +00:00
Andrew Nacin 3828d67fad Allow get_post_ancestors() to inspect the $post global, when null/0 is received. see #23708.
git-svn-id: http://core.svn.wordpress.org/trunk@23635 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-07 06:49:46 +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
Andrew Nacin 5cd77fdb99 Revert [23359]. The post_author and comment_count post object fields will remain numeric strings for back compat. see #22324.
git-svn-id: http://core.svn.wordpress.org/trunk@23531 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-02-28 19:40:26 +00:00
Andrew Nacin b88b1c1f53 Move revisions/autosave and post format functions from wp-includes/post.php into revision.php and post-formats.php.
git-svn-id: http://core.svn.wordpress.org/trunk@23466 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-02-21 21:24:34 +00:00
Helen Hou-Sandí ad85d07189 Edit screen UI for post formats: a first run for functionality.
* Adds a very basic tabbed interface for selecting a post format (requires JS).
* Extra fields, which are post meta, are shown/hidden based on the selected format.
* Introduce a helper function for retrieving formats-specific metadata: `get_post_format_meta()`.
* Image selection uses the media modal, although without filtering or from URL support at the moment.

props rachelbaker, wonderboymusic, aaroncampbell, helen. see #19570.


git-svn-id: http://core.svn.wordpress.org/trunk@23449 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-02-18 19:11:24 +00:00
Sergey Biryukov a395bb01b8 Properly truncate UTF-8 post slugs in wp_unique_post_slug(). fixes #21013.
git-svn-id: http://core.svn.wordpress.org/trunk@23420 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-02-15 14:35:41 +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
Peter Westwood ae974b8495 Revisions: Allow a plugin to force us to skip the don't save this revision because it hasn't changed code if it knows better.
See #7392 and #9843. Also cleans up the whitespace.


git-svn-id: http://core.svn.wordpress.org/trunk@23415 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-02-14 16:45:43 +00:00
Peter Westwood 716d48e0cd Revisions: Before saving a new post revision make sure that something has changed in the fields that we are revisioning.
Fixes: #7392 and #9843 props adamsilverstein.


git-svn-id: http://core.svn.wordpress.org/trunk@23414 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-02-14 11:36:32 +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
Sergey Biryukov c569c15b6d Correct the documentation for _publish_post_hook(). Remove unused global declaration. props roulandf. fixes #23376.
git-svn-id: http://core.svn.wordpress.org/trunk@23387 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-02-05 15:45:37 +00:00
Sergey Biryukov 6f00a2c1cc Sanitize post_author and comment_count as integer fields. props GeertDD. fixes #22324.
git-svn-id: http://core.svn.wordpress.org/trunk@23353 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-01-28 04:17:05 +00:00
Ryan Boren 1b2b394a91 Avoid the appearance of a magic number.
Props nacin
see #23167


git-svn-id: http://core.svn.wordpress.org/trunk@23320 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-01-22 15:52:13 +00:00
Ryan Boren 48058dfb99 Explicitly set last_changed to 1 instead of the result of wp_cache_set(). Avoids ambiguity and works with cache backends that return void instead of boolean.
see #23167


git-svn-id: http://core.svn.wordpress.org/trunk@23319 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-01-22 15:46:16 +00:00
Helen Hou-Sandí b538d6163f Make sure .widefat border and background coloring only applies to tables. props MikeHansenMe. fixes #21936.
git-svn-id: http://core.svn.wordpress.org/trunk@23315 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-01-22 14:44:04 +00:00
Ryan Boren 1edf259b45 In get_pages(), cache queries to individual cache buckets instead of storing them in one cached array. Also, store post IDs instead of full objects. This reduces overall memory usage as well as the size of the cache buckets. Use incrementor style passive cache invalidation.
Props nprasath002
see #23167


git-svn-id: http://core.svn.wordpress.org/trunk@23300 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-01-15 17:32:35 +00:00
Peter Westwood f683fc7677 Tighten our braces. Fixes #23118 props evansolomon.
git-svn-id: http://core.svn.wordpress.org/trunk@23265 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-01-04 10:13:51 +00:00
Andrew Nacin 0d3d52a92a Always return arrays from get_post_ancestors(). Return an array when passed a value that evaluates to false.
props dannydehaan.
fixes #22882 for trunk.
Test: [1177/tests].



git-svn-id: http://core.svn.wordpress.org/trunk@23212 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-12-27 15:48:18 +00:00
Andrew Nacin 8d52e9fc68 Always call get_post() in get_page_uri() to ensure we have a WP_Post object, which lazy-loads the ancestors this function requires.
props dd32
fixes #22883
Unit tests: [1175/tests]



git-svn-id: http://core.svn.wordpress.org/trunk@23208 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-12-27 15:26:05 +00:00
Andrew Nacin f9d07a1928 Revert [21942] and have wp_publish_post() deal with the database directly. clean_post_cache() is now also called directly due to [21943].
fixes #22944 for trunk.
Unit tests: [1174/tests].

see #11399. see #21963.



git-svn-id: http://core.svn.wordpress.org/trunk@23206 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-12-27 15:14:43 +00:00
Andrew Nacin 3097cb315b Do not save an initial revision for a post created through the auto-draft mechanism. Prevents a bogus revision, often with the title 'Auto Draft'. Restores pre-auto-draft behavior made obvious by XML-RPC's implementation of both auto-drafts and the subsequent wp.getRevisions method. fixes #22687. see #22686.
git-svn-id: http://core.svn.wordpress.org/trunk@22989 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-12-03 06:28:28 +00:00
Ryan Boren cef3bc6abb Map the create_posts post type cap to upload_files for attachments.
Props nacin
fixes #16714


git-svn-id: http://core.svn.wordpress.org/trunk@22921 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-29 16:14:07 +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
Daryl Koopersmith 5b11aea8f5 Media: Dynamically generate attachment filters using get_post_mime_types().
Moves `get_post_mime_types()` from `wp-admin/includes/post.php` to `wp-includes/post.php`.

fixes #22514, see #21390.


git-svn-id: http://core.svn.wordpress.org/trunk@22743 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-21 10:18:59 +00:00
Ryan Boren a2edda4b6a Don't bail from get_the_terms() if the post type is not registed for the taxonomy. This can break back compat when add_post_type_support( 'page', 'post-formats' ) is called but register_taxonomy_for_object_type( 'postr_-format', 'page' ) is not.
Props SergeyBiryukov
fixes #22473


git-svn-id: http://core.svn.wordpress.org/trunk@22722 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-20 18:31:06 +00:00
Andrew Nacin 2f77c7984b This should be a cache add, not a cache set. see #22503.
git-svn-id: http://core.svn.wordpress.org/trunk@22676 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-19 08:39:52 +00:00
Andrew Nacin a1dba4a709 Call wp_cache_set() with a group and then an expiration in wp_mime_type_icon(). fixes #22503. see #22186.
git-svn-id: http://core.svn.wordpress.org/trunk@22674 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-19 08:31:43 +00:00
Ryan Boren cc2ddb8421 Always return a raw filtered post object from WP_Post::get_instance().
Props kovshenin, scribu, ntm
fixes #22448


git-svn-id: http://core.svn.wordpress.org/trunk@22635 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-17 15:14:48 +00:00
Andrew Nacin c67a081816 Revert [22445]. see #20376. fixes #22389.
git-svn-id: http://core.svn.wordpress.org/trunk@22464 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-08 03:30:56 +00:00
Andrew Nacin 8eb8948a2e Fix meta value querying in wp_list_pages(). props SergeyBiryukov. fixes #20376.
git-svn-id: http://core.svn.wordpress.org/trunk@22445 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-07 21:48:38 +00:00
Andrew Nacin c04587d409 Add a $public_only argument to count_many_users_posts() and get_posts_by_author_sql(). Defaults to false, and allows the counts to be returned for only public posts. props ryan, westi. fixes #21431.
git-svn-id: http://core.svn.wordpress.org/trunk@22386 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-05 23:11:25 +00:00
Andrew Nacin e04bdce3ca clean_post_cache() no longer calls itself recursively. see #11399.
git-svn-id: http://core.svn.wordpress.org/trunk@22357 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-02 16:13:53 +00:00
Ryan Boren a550a6d489 Use the create_posts capability in more places.
In get_post_type_capabilities(), make sure create_posts reflects customizations to the edit_posts capability when create_posts is not specifically set.


git-svn-id: http://core.svn.wordpress.org/trunk@22291 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-24 22:15:43 +00:00
Ryan Boren a316671b85 Don't wp_cache_add() stdClass objects in get_post() to avoid polluting the cache with incomplete or otherwise compromised objects.
Declare the core properties of WP_Pist as proper public properties and provide them with defaults.

Props wonderboymusic
fixes #22223


git-svn-id: http://core.svn.wordpress.org/trunk@22264 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-19 21:53:17 +00:00
Andrew Nacin 2cc408d09c Avoid queries in wp_unique_post_slug() for nav menu items. see #22189.
git-svn-id: http://core.svn.wordpress.org/trunk@22232 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-15 14:13:57 +00:00
Andrew Nacin 57681dda7a Remove whitespace from around the WP_Post/get_post SQL string.
git-svn-id: http://core.svn.wordpress.org/trunk@22230 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-15 03:08:43 +00:00
Andrew Nacin fd56fd3563 Use wp_update_post() rather than wp_insert_post() in wp_publish_post() to avoid stomping of values like categories. props ericmann, fixes #22167. see #21963.
git-svn-id: http://core.svn.wordpress.org/trunk@22189 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-11 17:36:59 +00:00
Andrew Nacin ac6f57de76 Add post_type_labels_{$post_type} filter. props scribu. fixes #21948.
git-svn-id: http://core.svn.wordpress.org/trunk@22164 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-10 13:50:42 +00:00
Ryan Boren ac0011a77c Make sure cache bucket is an array to avoid warning. see #21309
git-svn-id: http://core.svn.wordpress.org/trunk@22163 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-10 12:29:51 +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 f8f60ac01b Introduce create_posts meta capability. Props scribu, nacin, casben79. see #16714
git-svn-id: http://core.svn.wordpress.org/trunk@22060 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-27 15:33:19 +00:00
Ryan Boren 70edf4111b Fetch full terms for the post_category and tags_input queries and then wp_list_pluck() the desired fields. Fetching full terms primes the cache and reduces overall queries. Add cache invalidation to wp_set_post_terms(). Props scribu. see #21309
git-svn-id: http://core.svn.wordpress.org/trunk@21981 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-24 20:35:56 +00:00
Ryan Boren bc3c170305 Don't add empty _wp_attached_file, _wp_attachment_metadata, _thumbnail_id meta to posts. Delete these fields when set to empty. Props SergeyBiryukov, Caspie. fixes #16391
git-svn-id: http://core.svn.wordpress.org/trunk@21967 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-24 13:07:34 +00:00
Andrew Nacin 29b7d26ca5 Properly indent after [21952]. see #11399.
git-svn-id: http://core.svn.wordpress.org/trunk@21953 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-22 16:21:06 +00:00
Andrew Nacin a42ce2353a Stop cleaning the cache of a post's children. Ancestors are no longer cached against the post object, which means this kind of walking is unnecessary. It is also prohibitively expensive with large hierarchies.
We need to remove post_ancestors non-persistent caching for this. get_post_ancestors() can simply rely on the caching of get_post() instead. Previously, it was a direct query, hence the extra layers of caching and clearing.

Child cache clearing stays in wp_delete_post() as children get a new parent.

fixes #11399.



git-svn-id: http://core.svn.wordpress.org/trunk@21952 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-22 15:55:02 +00:00
Andrew Nacin 33af30eb7f Use the regular post type UI for editing single media items (attachments).
* Attachments now go through post.php, edit_post(), the like, and have show_ui set to true.
 * Taxonomies attached to the media library now appear in the admin menu (if show_ui).
 * Editing, cropping, uploading, etc. is still very rough, but mostly functional.

API-wise:
 * New function: get_taxonomies_for_attachments(). Like get_taxonomies(), for taxonomies specifically registered against attachments.
 * Brings taxonomy support from the posts list table to the media list table. Expect them to converge soon.
 * wp_insert_attachment() now handles taxonomies like wp_insert_post(). Also expect them to converge soon.
 * New edit_form_after_title hook.

props helenyhou, ocean90. see #21391.



git-svn-id: http://core.svn.wordpress.org/trunk@21948 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-21 22:52:54 +00:00
Andrew Nacin 5a362d3ace Call clean_post_cache() in wp_insert_post() after the manual query to change GUID. Remove the second call to clean_post_cache() previously done on the save_post hook. see #11399.
git-svn-id: http://core.svn.wordpress.org/trunk@21943 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-21 18:52:15 +00:00
Andrew Nacin a4831c82f0 Have wp_publish_post() wrap wp_insert_post() directly. see #11399.
git-svn-id: http://core.svn.wordpress.org/trunk@21942 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-21 18:49:45 +00:00
Peter Westwood fa8a509ff3 Posting: Improve the invalid date protection code based on feedback from nacin.
* Introduce a wp_checkdate() function with a single filter to centralise the code that validates dates.
 * Improve the error message
 * Correctly handle the return value of wp_insert_post which is not always a WP_Error on failure

Fixes #17180


git-svn-id: http://core.svn.wordpress.org/trunk@21922 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-20 10:46:50 +00:00
Peter Westwood c05f6dc6dd Posting: Make it much harder to create posts with invalid dates by enforcing the post date tests in the UI and the backend code.
Previously you could quite easily send a new post into the back of beyond by specifying an invalid date like the 30th Feb and this was very confusing.
Sometimes it would seem to work and sometimes the post would end up very far in the past - depending on the mysql version and other factors.

Fixes #17180 props jkudish.


git-svn-id: http://core.svn.wordpress.org/trunk@21921 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-19 21:43:35 +00:00
Andrew Nacin a7cd7c3ac7 Use wp_get_theme()->get_page_templates() rather than get_page_templates() in wp_insert_post(),
to allow page template setting on the frontend without a fatal error. fixes #21755.



git-svn-id: http://core.svn.wordpress.org/trunk@21847 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-14 18:36:08 +00:00
Andrew Nacin 95c9cd1e6b Remove unused show_in_admin_all and single_view_cap from register_post_status(). props duck_. fixes #18972.
git-svn-id: http://core.svn.wordpress.org/trunk@21846 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-14 18:02:23 +00:00
Andrew Nacin 07324a1f53 In get_page_by_path(), attempt to return an item that has the same post type before returning an attachment with the same name. props SergeyBiryukov. tests in [UT1021]. fixes #15665.
git-svn-id: http://core.svn.wordpress.org/trunk@21845 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-14 17:19:25 +00:00
Andrew Nacin b65ceddeeb If update_post_caches() does not receive a post type, glean post types from the individual post objects, rather than assuming 'post'. fixes #20177.
git-svn-id: http://core.svn.wordpress.org/trunk@21844 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-14 16:26:05 +00:00
Andrew Nacin 5bc021dad7 Allow supports => false to be passed to register_post_type() to disable the default title and editor.
An empty array may also disable all default features in the future.
Do not rely on this behavior: always specify title and editor if you want them.

props sc0ttkclark.
fixes #21586.



git-svn-id: http://core.svn.wordpress.org/trunk@21831 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-13 17:02:39 +00:00
Andrew Nacin bc6087bc98 Always return upload directory information from wp_upload_dir(), even if there is an error. Append the error to the array. see #19235.
git-svn-id: http://core.svn.wordpress.org/trunk@21822 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-11 22:06:49 +00:00