158 Commits

Author SHA1 Message Date
Dominik Schilling (ocean90)
9d8768f442 Comments: IDs are integers.
git-svn-id: https://develop.svn.wordpress.org/trunk@33555 602fd350-edb4-49c9-b593-d223f7449a82
2015-08-03 21:37:26 +00:00
Drew Jaynes
eb7070c7f8 Docs: Correct the possible return types and corresponding descriptions for wp_get_post_terms().
Props adamkheckler for the initial patch.
Fixes #32950.


git-svn-id: https://develop.svn.wordpress.org/trunk@33393 602fd350-edb4-49c9-b593-d223f7449a82
2015-07-23 07:44:49 +00:00
Boone Gorges
cddbfd2727 Improve function description for wp_transition_post_status().
The documentation should make it clear that the function does not modify the
post object in the database, but only fires hooks related to the transition.

Props AramZS.
Fixes #33014.

git-svn-id: https://develop.svn.wordpress.org/trunk@33296 602fd350-edb4-49c9-b593-d223f7449a82
2015-07-16 14:34:42 +00:00
Boone Gorges
ce4b40d794 In wp_unique_post_slug(), only prevent date archive conflicts when the slug is being changed.
This prevents existing posts with numeric slugs from having their permalinks
changed on update.

Fixes #5305.

git-svn-id: https://develop.svn.wordpress.org/trunk@33262 602fd350-edb4-49c9-b593-d223f7449a82
2015-07-14 12:27:11 +00:00
Boone Gorges
c718849baa When creating a new post with an empty post_name and post_title, don't generate a post_name that conflicts with a date archive permalink.
See #5305.

git-svn-id: https://develop.svn.wordpress.org/trunk@33261 602fd350-edb4-49c9-b593-d223f7449a82
2015-07-14 12:27:03 +00:00
Drew Jaynes
4274e7fe7e Wrap a long changelog entry description in the DocBlock for get_post_type_labels().
See [32673]. See #32891.


git-svn-id: https://develop.svn.wordpress.org/trunk@33234 602fd350-edb4-49c9-b593-d223f7449a82
2015-07-13 21:48:44 +00:00
Helen Hou-Sandi
3762069f89 Move get_default_comment_status() to wp-includes/comment.php to sit alongside get_comment_statuses().
props nacin.
see #31168.


git-svn-id: https://develop.svn.wordpress.org/trunk@33122 602fd350-edb4-49c9-b593-d223f7449a82
2015-07-08 15:43:24 +00:00
Konstantin Obenland
bfbdb6f0b2 Use get_default_comment_status() globally.
Also makes the filter name static and passes the post type for context.

Props valendesigns.
Fixes #31168.



git-svn-id: https://develop.svn.wordpress.org/trunk@33054 602fd350-edb4-49c9-b593-d223f7449a82
2015-07-02 22:31:58 +00:00
Konstantin Obenland
efdce1da51 Turn of comments for pages by default.
Pages are static content, for which comments are not expected out of the box.

Props valendesigns, rachelbaker.
Fixes #31168.



git-svn-id: https://develop.svn.wordpress.org/trunk@33041 602fd350-edb4-49c9-b593-d223f7449a82
2015-07-02 00:21:28 +00:00
Scott Taylor
2231b5d1dc Correct inline doc for $public in register_post_status().
Props ericlewis.
Fixes #32061.


git-svn-id: https://develop.svn.wordpress.org/trunk@32881 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-19 22:34:09 +00:00
John Blackbourn
b8180d3d14 Correct the docs for the post_type_labels_{$post_type} filter.
Fixes #32707
Props dlh


git-svn-id: https://develop.svn.wordpress.org/trunk@32849 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-18 21:32:53 +00:00
Scott Taylor
296c559baf if is a statment, not a function.
See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32800 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-16 20:00:15 +00:00
Dominik Schilling (ocean90)
0f9c75f614 Nav Menus: Update wp_setup_nav_menu_item() to stop overriding empty properties from supplied $menu_item.
Update docs for `WP_Post` constructor to indicate that `WP_Post|object` can be the supplied param, as opposed to just `WP_Post`.

props westonruter.
fixes #32632.

git-svn-id: https://develop.svn.wordpress.org/trunk@32762 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-14 10:52:35 +00:00
Scott Taylor
40c54bc238 page_template should be annotated as @property, not @property-read in WP_Post. The property is set on an instance in wp_insert_post()
Props morganestes.
Fixes #32515.


git-svn-id: https://develop.svn.wordpress.org/trunk@32729 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-12 17:00:59 +00:00
John Blackbourn
87d5aefe74 Introduce featured_image, set_featured_image, remove_featured_image, and use_featured_image post type labels when registering a post type in order to override the 'Featured Image' text and its related phrases.
Props johnbillion, mordauk, valendesigns.
Fixes #19257.


git-svn-id: https://develop.svn.wordpress.org/trunk@32673 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-31 16:53:12 +00:00
Boone Gorges
683ae35c33 Disallow post slugs that will result in permalinks that conflict with date archive URLs.
On certain permalink structures, a numeric post slug will result in a post
permalink that conflicts with a date archive URL. For example, with permastruct
`/%year%/%monthnum%/%postname%/`, a post published in May 2015 with slug
`'15'` will result in a URL (`/2015/05/15/`) that conflicts with the archive
for May 15, 2015.

To avoid this problem, `wp_unique_post_slug()` rejects a requested slug when it
would generate a conflict of this type. Thus, in our example, `'15'` would
become `'15-2'`.

Props valendesigns, boonebgorges, Denis-de-Bernardy, loushou.
See #5305.

git-svn-id: https://develop.svn.wordpress.org/trunk@32647 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-29 12:52:17 +00:00
Scott Taylor
496b36db35 Add missing doc blocks to revision.php.
Clarify `@return` values where necessary.
In `wp_delete_post_revision()`, `wp_delete_post()` doesn't return `WP_Error`, so that check can be removed.
`wp_revisions_to_keep()` always returns an `int`, so `wp_revisions_enabled()` can use strict comparison.
 
See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32621 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-27 18:37:29 +00:00
Scott Taylor
e4480ea91e Add missing doc blocks to post.php.
Clarify some existing values for `@param` and `@return`.
Some functions do not need to set a variable before immediately returning it.

See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32619 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-27 17:04:45 +00:00
Scott Taylor
46752a491e When calling unset(), it is unnecessary to immediately precede it with a call to isset().
See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32545 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-22 05:46:47 +00:00
Boone Gorges
f0d6031d9b Streamline support for multiple post types in get_posts_by_author_sql().
* Don't accept a comma-separated list, only a single post type or an array of post types. This is easier to document.
* Add changelog entries to all calling functions.

Props DrewAPicture.
Fixes #32243.

git-svn-id: https://develop.svn.wordpress.org/trunk@32524 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-21 19:48:19 +00:00
Boone Gorges
e656053bce Support multiple post types in count_user_posts() and other functions that use get_posts_by_author_sql().
Props nikonratm.
Fixes #32243.

git-svn-id: https://develop.svn.wordpress.org/trunk@32523 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-21 18:42:49 +00:00
Boone Gorges
bb29a878c6 Improve performance of get_page_children().
The new algorithm uses a hash table rather than function recursion, reducing
complexity to O(N). On large numbers of pages, the performance improvement is
several orders of magnitude.

Props santagada, hailin, mihai.
Fixes #10852.

git-svn-id: https://develop.svn.wordpress.org/trunk@32355 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-05 19:36:58 +00:00
Drew Jaynes
7138b7e1bd Add two changelog entries for functional changes introduced in 4.2.0.
Props dimadin.
See #31925.


git-svn-id: https://develop.svn.wordpress.org/trunk@32350 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-05 02:15:27 +00:00
Boone Gorges
93a4bf15e4 Attachment URLs should only be forced to SSL on the front end.
Detecting SSL status on the Dashboard introduces problems when writing content
that is saved to the database and then displayed on the front end, where SSL
may be optional (or impossible, due to self-signed certificates). The new
approach parallels the logic in `get_home_url()` for forcing HTTPS.

See [31614] #15928 for background.

Fixes #32112 for trunk.

git-svn-id: https://develop.svn.wordpress.org/trunk@32342 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-04 13:09:14 +00:00
Dominik Schilling (ocean90)
b0d6757918 Use HTTPS URLs for codex.wordpress.org.
see #27115.

git-svn-id: https://develop.svn.wordpress.org/trunk@32116 602fd350-edb4-49c9-b593-d223f7449a82
2015-04-12 21:28:58 +00:00
Scott Taylor
2f20da29b5 Replace array_shift() with reset() where appropriate for performance.
Props SergeyBiryukov.
Fixes #31259.


git-svn-id: https://develop.svn.wordpress.org/trunk@31829 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-19 03:55:39 +00:00
Drew Jaynes
7bbdceb336 Clean up some inline documentation for emoji functionality, including a missing @since for mail_emoji(), and a changelog entry for wp_insert_post().
See #31242.


git-svn-id: https://develop.svn.wordpress.org/trunk@31789 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-16 01:42:26 +00:00
Gary Pendergast
ae391ec226 Add emoji support, with Twemoji fallback.
Replace exisiting smilies with equivalent emoji, or with shiny new smiley images where no emoji existed.

Props batmoo, joen and mkaz for the original plugin upon which this is based.

Props pento, iseulde, kraftbj and peterwilsoncc for making the internet's dreams come true.

See #31242



git-svn-id: https://develop.svn.wordpress.org/trunk@31733 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-11 22:48:16 +00:00
Drew Jaynes
9c1ab4eec0 Add a missing @since 4.2.0 tag to the DocBlock for wp_attachment_is().
See #25275.


git-svn-id: https://develop.svn.wordpress.org/trunk@31660 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-07 07:11:11 +00:00
Drew Jaynes
37ca5609c8 Better document parameters and the return for the newly-introduced wp_attachment_is().
Also adds a changelog entry to the DocBlock for `wp_attachment_is_image()` to denote that it serves as a wrapper for `wp_attachment_is()` as of 4.2.0.

See [31645]. See #25275.


git-svn-id: https://develop.svn.wordpress.org/trunk@31659 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-07 07:08:52 +00:00
Boone Gorges
b2332718a1 When passing $full to get_posts_by_author_sql(), make sure a 'post_type' clause is included in results.
This change makes the 'post_type' clause in `wp_list_authors()` redundant, so
we remove it. Third-party plugins using `get_posts_by_author_sql()` may have
similarly redundant clauses, but this won't change the results returned by the
SQL queries.

Also adds unit tests for `get_posts_by_author_sql()`.

Props pbearne.
Fixes #30354.

git-svn-id: https://develop.svn.wordpress.org/trunk@31653 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-07 01:14:31 +00:00
Scott Taylor
8a28e19808 Add unit tests for wp_attachment_is(), checks the whitelist and arbitrary extension.
See #25275.


git-svn-id: https://develop.svn.wordpress.org/trunk@31647 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-06 20:37:08 +00:00
Scott Taylor
6d5385be8d After [31645], for the default case, return the result of checking the extension against the passed type.
See #25275.


git-svn-id: https://develop.svn.wordpress.org/trunk@31646 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-06 20:27:49 +00:00
Scott Taylor
42bcec5061 Introduce a function, wp_attachment_is( $type, $post = 0 ), to collapse the logic for determining whether an attachment is an image, audio, or video.
This is admittedly a first pass. There needs to be a generic handler for when any other type is passed, but for now it accepts the whitelist.

See #25275.


git-svn-id: https://develop.svn.wordpress.org/trunk@31645 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-06 20:25:09 +00:00
Boone Gorges
1ee4d99972 In wp_get_attachment_url(), convert to HTTPS when possible.
`wp_get_attachment_url()`, via `wp_upload_dir()`, uses 'siteurl' to generate
attachment URLs. When a site is SSL-optional on the front end - ie, 'siteurl'
is non-HTTPS, but SSL is available - a number of situations can arise where
non-HTTPS attachment URLs cause browser mixed-content warnings:

a) SSL is forced in the admin and `wp_get_attachment_url()` is used to generate the `<img>` tag for an inserted image. In these cases, the post content will contain non-HTTPS. Viewing/editing this post in the Dashboard will result in non-HTTPS images being served in an SSL environment.
b) `wp_get_attachment_url()` is used in a theme to generate an `<img>` `src` attribute on a public page. When viewing that page over SSL, the images will have HTTP URLs.

This changeset switches attachment URLs to HTTPS when it's determined that the
host supports SSL. This happens when 'siteurl' is non-SSL, but the current page
request *is* over SSL, and the host of the current request matches the host of
the URL being generated.

Props joemcgill, boonebgorges.
Fixes #15928.

git-svn-id: https://develop.svn.wordpress.org/trunk@31614 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-05 02:38:59 +00:00
Scott Taylor
212d6d8046 Make a new function, wp_delete_file(). Use it.
Props scribu, wonderboymusic.
Fixes #17864.


git-svn-id: https://develop.svn.wordpress.org/trunk@31575 602fd350-edb4-49c9-b593-d223f7449a82
2015-02-27 16:50:14 +00:00
Sergey Biryukov
579c7cd3bf Remove a stray single quote in wp_insert_post() documentation.
see #31359.

git-svn-id: https://develop.svn.wordpress.org/trunk@31496 602fd350-edb4-49c9-b593-d223f7449a82
2015-02-22 09:49:38 +00:00
Drew Jaynes
c3cb2ab03b Clarify and complete default argument documentation for wp_insert_post().
Props atimmer, SergeyBiryukov.
Fixes #31359.


git-svn-id: https://develop.svn.wordpress.org/trunk@31486 602fd350-edb4-49c9-b593-d223f7449a82
2015-02-22 00:55:46 +00:00
Drew Jaynes
0653d029f2 Update the descriptions for transition_post_status() and the {$new_stats}_{$post->post_type} hook with more information about the expected behavior of transitioning post statuses.
In some cases, the values of `$old_status` and `$new_status` may be the same thing before and after a post status is "transitioned". An example of this would be the scenario where a published post is being updated: the status before and after the update both equal 'publish'.

Further, the documentation clarifies that if the intent is to only execute code when initially transitioningto a post status from something else, the 'transition_post_status' hook should be used instead of one of the dynamic hooks to avoid confusion.

Props Idealien for the initial patch.
Fixes #31099.


git-svn-id: https://develop.svn.wordpress.org/trunk@31461 602fd350-edb4-49c9-b593-d223f7449a82
2015-02-14 09:10:29 +00:00
John Blackbourn
f4d6d4e66b Return a WP_Error if an empty name is provided when registering a post type.
Fixes #31134
Props tyxla, MikeHansenMe


git-svn-id: https://develop.svn.wordpress.org/trunk@31450 602fd350-edb4-49c9-b593-d223f7449a82
2015-02-13 16:42:36 +00:00
Scott Taylor
5acc6bdb58 In PHP 5.0.0, is_a() became deprecated in favour of the instanceof operator. Calling is_a() would result in an E_STRICT warning.
In PHP 5.3.0, `is_a()` is no longer deprecated, and will therefore no longer throw `E_STRICT` warnings.

To avoid warnings in PHP < 5.3.0, convert all `is_a()` calls to `$var instanceof WP_Class` calls.

`instanceof` does not throw any error if the variable being tested is not an object, it simply returns `false`.

Props markoheijnen, wonderboymusic.
Fixes #25672.


git-svn-id: https://develop.svn.wordpress.org/trunk@31188 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-16 01:05:52 +00:00
Drew Jaynes (DrewAPicture)
1f9ee350fc Remove an erroneous @internal tag from the DocBlock for get_children().
Use of the `@internal` tag caused the reference article for this function to be skipped during the parsing process.

Fixes #30987 for trunk.


git-svn-id: https://develop.svn.wordpress.org/trunk@31169 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-13 00:07:39 +00:00
Scott Taylor
865185903b There are some random add_action() and add_filter() calls littered around some files in wp-includes/. These should be moved to wp-includes/default-filters.php with the rest of the registered hooks. It seems like this was the best practice for awhile and then we randomly stopped. This file loads way before any of the includes, so the hooks will be registered for any request that loads WordPress, even SHORTINIT - a lot of the hooks registered won't run anyways (that's already the case).
See #30947.


git-svn-id: https://develop.svn.wordpress.org/trunk@31168 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-12 16:39:39 +00:00
Scott Taylor
a8cf928200 get_post() takes $output as its 2nd param. The @return annotation should reflect the function's ability to return an array.
See #30799.


git-svn-id: https://develop.svn.wordpress.org/trunk@31132 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-10 21:37:23 +00:00
Scott Taylor
979ba60a57 Fix some @param docs that have chars too close them.
Add `@property` annotations to `WP_User` and `WP_Post`.
Remove erroneous `@param`s from image editor class methods.
Officially add the property `$_column_headers` to `WP_List_Table`.	

See #30799.


git-svn-id: https://develop.svn.wordpress.org/trunk@31127 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-10 06:56:51 +00:00
Scott Taylor
6fd11624d1 The keyword elseif should be used instead of else if so that all control keywords look like single words.
This was a mess, is now standardized across the codebase, except for a few 3rd-party libs. 

See #30799.


git-svn-id: https://develop.svn.wordpress.org/trunk@31090 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-08 07:04:40 +00:00
Sergey Biryukov
3274f5fee6 Skip building the query in wp_count_posts() if cached results are used.
props MikeHansenMe.
fixes #30928.

git-svn-id: https://develop.svn.wordpress.org/trunk@31058 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-06 16:57:12 +00:00
Scott Taylor
621e909a9b Improve the handling of comma-separated mime-types in wp_match_mime_types(), particularly as pertains to the mime-type selector on the Media list table screen.
Props mdgl.
Fixes #30788.


git-svn-id: https://develop.svn.wordpress.org/trunk@31042 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-04 02:31:29 +00:00
Scott Taylor
f014d0cf35 If you set '_wp_page_template' for a post, and then switch to a theme that doesn't support the template, subsequent calls to wp_insert_post() will bail early without running a plethora of hooks. This shouldn't happen. We should set the template to 'default' and continue through the rest of the function. The function will still bail if $wp_error is true via wp_insert_post( $arr, true ).
Props nofearinc.
Fixes #25334.


git-svn-id: https://develop.svn.wordpress.org/trunk@31020 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-01 20:34:19 +00:00
Scott Taylor
218dd4fd6b For clarity, initialize some arrays that previously were only assigned via short circuit in loops.
See #30799.


git-svn-id: https://develop.svn.wordpress.org/trunk@30982 602fd350-edb4-49c9-b593-d223f7449a82
2014-12-20 22:46:53 +00:00