Joe McGill
170d22a22c
Post Thumbnails: Add helper functions for attachment captions.
...
This adds three new functions for getting/displaying attachment captions:
* `wp_get_attachment_caption` - Retrieves a caption for a specific attachment.
* `get_the_post_thumbnail_caption()` - Returns the post thumbnail caption.
* `the_post_thumbnail_caption()` - Displays the post thumbnail caption.
These are helpful for displaying a caption associated with an image directly
in a template, rather than using the caption shortcode.
This also introduces two new filters:
* `wp_get_attachment_caption` - Filters the value of `wp_get_attachment_caption()`.
* `the_post_thumbnail_caption` - Filters the display of the post thumbnail caption.
`the_post_thumbnail_caption()` is automatically filtered by `wptexturize()`,
`convert_smilies()`, and `convert_chars()` in `wp-includes/default-filters.php`.
Props flixos90, joemcgill.
Fixes #12235 .
Built from https://develop.svn.wordpress.org/trunk@37915
git-svn-id: http://core.svn.wordpress.org/trunk@37856 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-06-29 17:28:28 +00:00
Dominik Schilling
60dc856d64
Posts: Introduce WP_Post_Type
and use it in register_post_type()
and unregister_post_type()
.
...
This changes the global `$wp_post_types` to an array of `WP_Post_Type` objects. `WP_Post_Type` includes methods to handle post type supports, rewrite rules, meta boxes, hooks, and taxonomies.
Each post type argument becomes a property of `WP_Post_Type`.
Props swissspidy, flixos90.
Fixes #36217 .
Built from https://develop.svn.wordpress.org/trunk@37890
git-svn-id: http://core.svn.wordpress.org/trunk@37831 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-06-28 16:41:35 +00:00
Drew Jaynes
0ef938e9da
Docs: Improve formatting and syntax of the defaullt label docs in the DocBlock for get_post_type_labels()
.
...
See #32246 .
Built from https://develop.svn.wordpress.org/trunk@37886
git-svn-id: http://core.svn.wordpress.org/trunk@37827 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-06-28 07:18:27 +00:00
Drew Jaynes
538eb01e6f
Docs: Add a more complete $labels
parameter description to the DocBlock for register_post_type()
.
...
Directly references `get_post_type_labels()` for the full list of supported labels.
See #32246 .
Built from https://develop.svn.wordpress.org/trunk@37885
git-svn-id: http://core.svn.wordpress.org/trunk@37826 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-06-28 06:42:28 +00:00
Drew Jaynes
112992ba80
Docs: Improve the $post_type
parameter description in the DocBlock for register_post_type()
.
...
See #32246 .
Built from https://develop.svn.wordpress.org/trunk@37884
git-svn-id: http://core.svn.wordpress.org/trunk@37825 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-06-28 06:37:28 +00:00
Drew Jaynes
d4ae5b76ee
Docs: Add more complete documentation for the $supports
argument in register_post_type()
.
...
See #32246 .
Built from https://develop.svn.wordpress.org/trunk@37883
git-svn-id: http://core.svn.wordpress.org/trunk@37824 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-06-28 06:32:27 +00:00
Drew Jaynes
9ef5fb0a17
Docs: Improve the usefulness, accuracy, and syntax of the register_post_type()
DocBlock summary and description.
...
See #32246 .
Built from https://develop.svn.wordpress.org/trunk@37882
git-svn-id: http://core.svn.wordpress.org/trunk@37823 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-06-28 06:27:32 +00:00
Jeremy Felt
6f3f00ea97
Multisite: Change WP_Network
id
property to an integer.
...
For consistency and developer sanity.
Props flixos90.
Fixes #37050 .
Built from https://develop.svn.wordpress.org/trunk@37870
git-svn-id: http://core.svn.wordpress.org/trunk@37811 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-06-26 14:26:29 +00:00
Drew Jaynes
1e48cc8a05
Docs: Improve the return description for wp_get_post_categories()
to include more information about possible return values.
...
Props jeherve for the initial patch.
Fixes #37002 .
Built from https://develop.svn.wordpress.org/trunk@37686
git-svn-id: http://core.svn.wordpress.org/trunk@37652 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-06-11 17:08:28 +00:00
Drew Jaynes
9193013158
Docs: Apply inline @see
tags to hooks referenced in DocBlocks in a variety of wp-includes/* files.
...
Applying these specially-crafted `@see` tags allows the Code Reference parser to recognize and link these elements as actions and filters.
Fixes #36921 .
Built from https://develop.svn.wordpress.org/trunk@37544
git-svn-id: http://core.svn.wordpress.org/trunk@37512 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-23 19:02:28 +00:00
Drew Jaynes
dcadd35728
Docs: Standardize filter docs in wp-includes/post.php to use third-person singular verbs per the inline documentation standards for PHP.
...
See #36913 .
Built from https://develop.svn.wordpress.org/trunk@37504
git-svn-id: http://core.svn.wordpress.org/trunk@37472 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:31:28 +00:00
Drew Jaynes
f52a8cb1fa
Docs: Remove/replace invalid inline @link
tags in DocBlocks in wp-includes/*.
...
Fixes #36910 .
Built from https://develop.svn.wordpress.org/trunk@37487
git-svn-id: http://core.svn.wordpress.org/trunk@37455 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 17:39:28 +00:00
Boone Gorges
4428a031a3
In get_page_by_path()
, values fetched from cache should obey $output
param.
...
Introduced in [37479].
Props spacedmonkey.
Fixes #36711 .
Built from https://develop.svn.wordpress.org/trunk@37481
git-svn-id: http://core.svn.wordpress.org/trunk@37449 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 16:19:29 +00:00
Boone Gorges
98050e404d
Cache queries in get_page_by_path()
.
...
Props spacedmonkey.
Fixes #36711 .
Built from https://develop.svn.wordpress.org/trunk@37479
git-svn-id: http://core.svn.wordpress.org/trunk@37447 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-21 17:27:29 +00:00
Sergey Biryukov
ff37a3b730
Docs: Fix typo in a comment in check_and_publish_future_post()
.
...
See #32246 .
Built from https://develop.svn.wordpress.org/trunk@37403
git-svn-id: http://core.svn.wordpress.org/trunk@37369 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-08 12:46:29 +00:00
Eric Lewis
aba14233d9
Posts: Allow get_page_uri()
to be called without a $page argument.
...
`get_page_uri()` can now be called without an argument, which will return the page URI for the current post in the loop.
Props pollett.
Fixes #26284 .
Built from https://develop.svn.wordpress.org/trunk@37345
git-svn-id: http://core.svn.wordpress.org/trunk@37311 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-02 18:29:29 +00:00
Drew Jaynes
fe3b007fdd
Docs: Remove inline @see
tags from function, class, and method references in inline docs.
...
Known functions, classes, and methods are now auto-linked in Code Reference pages following #meta1483.
Note: Hook references are still linked via inline `@see` tags due to the unlikelihood of reliably matching for known hooks based on a RegEx pattern.
See #32246 .
Built from https://develop.svn.wordpress.org/trunk@37342
git-svn-id: http://core.svn.wordpress.org/trunk@37308 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-02 04:00:28 +00:00
Sergey Biryukov
49a47bb255
Docs: Document the @return
value of wp_add_trashed_suffix_to_post_name_for_post()
.
...
Props Shelob9.
Fixes #36728 .
Built from https://develop.svn.wordpress.org/trunk@37334
git-svn-id: http://core.svn.wordpress.org/trunk@37300 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-01 10:16:29 +00:00
Boone Gorges
742e0005c6
Add parameter documentation for 'post_category' to wp_insert_post()
.
...
Props Latz.
Fixes #36601 .
Built from https://develop.svn.wordpress.org/trunk@37255
git-svn-id: http://core.svn.wordpress.org/trunk@37221 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-04-20 13:54:30 +00:00
Boone Gorges
374a489166
In sanitize_post_field()
, only run 'attribute' or 'js' escaping when necessary.
...
Props tfrommen.
Fixes #34900 .
Built from https://develop.svn.wordpress.org/trunk@37220
git-svn-id: http://core.svn.wordpress.org/trunk@37186 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-04-16 14:51:28 +00:00
Boone Gorges
cfab9716e3
Use __trashed
suffix rather than -%trashed%
for trashed post slugs.
...
Percent signs are reserved characters in URIs. As such, it was impossible for
plugins to route requests to trashed posts, as happens in bbPress. The new
`__trashed` suffix should be sufficiently unique.
Also adds a test that demonstrates that the `__trashed` suffix can be
appended to slugs that contain the suffix somewhere other than the end of
the string.
Props netweb, ericlewis.
Fixes #11863 .
Built from https://develop.svn.wordpress.org/trunk@37165
git-svn-id: http://core.svn.wordpress.org/trunk@37132 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-04-07 19:22:28 +00:00
Drew Jaynes
f9919442e2
Docs: Improve the DocBlock summary for wp_queue_posts_for_term_meta_lazyload()
, introduced in [36566].
...
See #35816 . See #35986 .
Built from https://develop.svn.wordpress.org/trunk@36945
git-svn-id: http://core.svn.wordpress.org/trunk@36913 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-10 18:29:26 +00:00
Drew Jaynes
49803ffabe
Docs: Improve the accuracy of the return description for unregister_post_type()
, introduced in [36316].
...
See #14761 . See #35986 .
Built from https://develop.svn.wordpress.org/trunk@36944
git-svn-id: http://core.svn.wordpress.org/trunk@36912 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-10 18:25:25 +00:00
Boone Gorges
e032560e6b
Correct @return
annotation for wp_set_object_terms()
and related functions.
...
The return value is an array of term taxonomy IDs, not term IDs.
Fixes #36182 .
Built from https://develop.svn.wordpress.org/trunk@36896
git-svn-id: http://core.svn.wordpress.org/trunk@36864 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-09 16:17:28 +00:00
Drew Jaynes
2846e3aaef
Docs: Use the correct variable name for the $post_ID
parameter in the DocBlock for wp_add_trashed_suffix_to_post_name_for_trashed_posts()
.
...
See #11863 . See #32246 .
Built from https://develop.svn.wordpress.org/trunk@36727
git-svn-id: http://core.svn.wordpress.org/trunk@36694 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-02-26 09:25:26 +00:00
Drew Jaynes
1b9a705394
Docs: Standardize summaries for two new internal functions used to handle suffixing trashed posts.
...
Also adds a notation of private access to each.
See #11863 . See #32246 .
Built from https://develop.svn.wordpress.org/trunk@36726
git-svn-id: http://core.svn.wordpress.org/trunk@36693 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-02-26 09:23:25 +00:00
Dominik Schilling
e5ea82d81a
Spelling: Standardize on "front end"/"back end" (noun) and "front-end"/"back-end" (adjective).
...
Props obrienlabs, thewanderingbrit.
Fixes #34887 .
Built from https://develop.svn.wordpress.org/trunk@36709
git-svn-id: http://core.svn.wordpress.org/trunk@36676 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-02-25 12:53:27 +00:00
Drew Jaynes
4c3c2b315f
Posts: Rename the $args
parameter in get_post_types_by_support()
to $feature
for better self-documentation.
...
See #34010 . See #32246 .
Built from https://develop.svn.wordpress.org/trunk@36704
git-svn-id: http://core.svn.wordpress.org/trunk@36671 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-02-25 04:55:25 +00:00
Pascal Birchler
8725644d40
Posts: Introduce get_post_types_by_support()
.
...
Similar to `get_post_types()`, this new function returns a list of post type names that support a specific feature.
Props wpsmith, barryceelen, swissspidy.
Fixes #34010 .
Built from https://develop.svn.wordpress.org/trunk@36652
git-svn-id: http://core.svn.wordpress.org/trunk@36619 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-02-23 22:50:26 +00:00
Eric Lewis
04da8bb63a
Posts: Non-trashed posts should take slug priority over trashed posts.
...
When determining a unique post slug, trashed posts are taken into account. Previously, new posts would add suffixes to their slugs (e.g. `about-2`) when a post in the trash had the desired slug (e.g. `about`).
To avoid this behavior, when a post is trashed its slug (i.e. `post_name`) is now suffixed with `-%trashed%`. The post's pre-trash slug is stored as post meta, and if the post is restored from trash, its desired slug is reapplied.
For existing trashed posts which don't have the `-%trashed%` suffix, the suffix is added when a post with its desired slug is created.
Props ocean90, boonebgorges, ryan, SergeyBiryukov, coffee2code, helen, williamsba1.
See #11863 .
Built from https://develop.svn.wordpress.org/trunk@36607
git-svn-id: http://core.svn.wordpress.org/trunk@36574 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-02-21 21:45:28 +00:00
Andrew Ozz
2d94e025a2
Replace wp_upload_dir()
with the new wp_get_upload_dir()
in all cases where a file is not being uploaded. Deprecate _wp_upload_dir_baseurl()
, and replace it with wp_get_upload_dir()
.
...
See #34359 .
Built from https://develop.svn.wordpress.org/trunk@36569
git-svn-id: http://core.svn.wordpress.org/trunk@36536 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-02-18 00:24:27 +00:00
Boone Gorges
571e14f897
More performance improvements to metadata lazyloading.
...
Comment and term meta lazyloading for `WP_Query` loops, introduced in 4.4,
depended on filter callback methods belonging to `WP_Query` objects. This meant
storing `WP_Query` objects in the `$wp_filter` global (via `add_filter()`),
requiring that PHP retain the objects in memory, even when the local variables
would typically be expunged during normal garbage collection. In cases where a
large number of `WP_Query` objects were instantiated on a single pageload,
and/or where the contents of the `WP_Query` objects were quite large, serious
performance issues could result.
We skirt this problem by moving metadata lazyloading out of `WP_Query`. The
new `WP_Metadata_Lazyloader` class acts as a lazyload queue. Query instances
register items whose metadata should be lazyloaded - such as post terms, or
comments - and a `WP_Metadata_Lazyloader` method will intercept comment and
term meta requests to perform the cache priming. Since `WP_Metadata_Lazyloader`
instances are far smaller than `WP_Query` (containing only object IDs), and
clean up after themselves far better than the previous `WP_Query` methods (bp
only running their callbacks a single time for a given set of queued objects),
the resource use is decreased dramatically.
See [36525] for an earlier step in this direction.
Props lpawlik, stevegrunwell, boonebgorges.
Fixes #35816 .
Built from https://develop.svn.wordpress.org/trunk@36566
git-svn-id: http://core.svn.wordpress.org/trunk@36533 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-02-17 22:58:26 +00:00
Drew Jaynes
c55f447ad4
Docs: Revert unintended changes in wp-includes/post.php, mistakenly included in [36497].
...
See #34988 . See #33701 .
Built from https://develop.svn.wordpress.org/trunk@36498
git-svn-id: http://core.svn.wordpress.org/trunk@36465 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-02-07 02:46:25 +00:00
Drew Jaynes
3785385ea2
Docs: Add a missing version to the file header for wp-admin/term.php, introduced in [36308].
...
See #34988 . See #33701 .
Built from https://develop.svn.wordpress.org/trunk@36497
git-svn-id: http://core.svn.wordpress.org/trunk@36464 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-02-07 02:43:26 +00:00
Boone Gorges
8db393ada6
Make the $post
param optional in get_post_field()
.
...
When `$post` is `null`, the current post object will be returned.
Props sebastian.pisula.
Fixes #35683 .
Built from https://develop.svn.wordpress.org/trunk@36481
git-svn-id: http://core.svn.wordpress.org/trunk@36448 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-02-05 18:58:25 +00:00
Boone Gorges
de9d742b9a
Allow is_post_type_viewable()
to accept a post type name.
...
Previously, it accepted only a post type object.
Props spacedmonkey.
Fixes #35609 .
Built from https://develop.svn.wordpress.org/trunk@36402
git-svn-id: http://core.svn.wordpress.org/trunk@36369 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-01-26 02:37:26 +00:00
Pascal Birchler
68f12521c8
Post Types: Introduce unregister_post_type()
.
...
This new function can be used to completely unregister non built-in post types.
Fixes #14761 .
Built from https://develop.svn.wordpress.org/trunk@36316
git-svn-id: http://core.svn.wordpress.org/trunk@36283 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-01-15 12:20:27 +00:00
Pascal Birchler
b0b13aff2f
Embeds: Allow embedding static front pages and pages having a child page with an embed
slug.
...
This makes `embed` a special slug that can't be used for new pages/posts. When `https://example.com/foo/embed/ ` is an existing page, embeds fall back to `https://example.com/foo/?embed=true `.
Adds unit tests.
Fixes #34971 .
Built from https://develop.svn.wordpress.org/trunk@36307
git-svn-id: http://core.svn.wordpress.org/trunk@36274 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-01-15 07:56:26 +00:00
Pascal Birchler
d0c1f44d21
Docs: Revert [36268] as the global is indeed used, just via the superglobal.
...
Fixes #35413 .
Built from https://develop.svn.wordpress.org/trunk@36269
git-svn-id: http://core.svn.wordpress.org/trunk@36236 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-01-12 12:26:27 +00:00
Pascal Birchler
14f073a154
Docs: Fix incorrect DocBlock for wp_get_attachment_url()
.
...
The documented `$pagenow` global isn't used in the function.
Props sebastian.pisula.
Fixes #35413 .
Built from https://develop.svn.wordpress.org/trunk@36268
git-svn-id: http://core.svn.wordpress.org/trunk@36235 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-01-12 12:08:26 +00:00
Pascal Birchler
73317a33b6
Permalinks: Ensure the page hierarchy is correct for sample permalinks.
...
Fixes #35368 .
Built from https://develop.svn.wordpress.org/trunk@36253
git-svn-id: http://core.svn.wordpress.org/trunk@36220 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-01-10 18:28:28 +00:00
Sergey Biryukov
267c524a07
Docs: Correct get_page_uri()
description.
...
Props ericlewis.
Fixes #35165 .
Built from https://develop.svn.wordpress.org/trunk@36143
git-svn-id: http://core.svn.wordpress.org/trunk@36109 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-01-01 18:29:27 +00:00
Andrew Ozz
597bbf0318
Responsive images: add compatibility for versions < 2.7 when the full image path was stored in the metadata. Introduces _wp_get_attachment_relative_path()
and uses it in wp_get_attachment_url()
.
...
Props dd32, SergeyBiryukov.
Fixes #35106 for trunk.
Built from https://develop.svn.wordpress.org/trunk@36120
git-svn-id: http://core.svn.wordpress.org/trunk@36086 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-12-30 00:06:28 +00:00
Dion Hulse
d5d401ad10
Pages: get_page_uri()
should return the URI at which the resource being accessed is available at, this may include non-'publish' status posts.
...
Reverts [34001] and fixes the original issue in #15963 - avoiding a PHP Notice for when the post doesn't exist.
Props tharsheblows.
See #15963 .
Fixes #35084 .
Built from https://develop.svn.wordpress.org/trunk@36094
git-svn-id: http://core.svn.wordpress.org/trunk@36059 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-12-26 03:46:28 +00:00
Sergey Biryukov
7d9d7f2df4
Docs: Clarify that get_post_types()
accepts 'not'
as its $operator
parameter.
...
Props barryceelen.
Fixes #35225 .
Built from https://develop.svn.wordpress.org/trunk@36091
git-svn-id: http://core.svn.wordpress.org/trunk@36056 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-12-26 00:38:25 +00:00
John Blackbourn
1402c3d8b4
Docs: Miscellaneous docblock corrections.
...
See #32246
Built from https://develop.svn.wordpress.org/trunk@36069
git-svn-id: http://core.svn.wordpress.org/trunk@36034 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-12-23 06:31:27 +00:00
Sergey Biryukov
d5d5d64e3d
I18N: Use better context for post statuses.
...
See #35054 .
Built from https://develop.svn.wordpress.org/trunk@35903
git-svn-id: http://core.svn.wordpress.org/trunk@35867 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-12-13 19:18:26 +00:00
Drew Jaynes
2cad8ec9e3
Docs: Remove indentation from a wrapped line in the DocBlock description for get_post_type_labels()
to prevent incorrect formatting when parsed.
...
With the false indentation in place, the parser for the Code Reference incorrectly interprets it as a block quote.
Fixes #35019 .
Built from https://develop.svn.wordpress.org/trunk@35868
git-svn-id: http://core.svn.wordpress.org/trunk@35832 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-12-11 18:42:27 +00:00
Eric Lewis
6be07725fb
Add inline documentation for get_page_by_path()
.
...
Fixes #34964 .
Built from https://develop.svn.wordpress.org/trunk@35861
git-svn-id: http://core.svn.wordpress.org/trunk@35825 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-12-11 03:50:26 +00:00
Joe Hoyle
5031ca5c23
Prevent unnecessary $wpdb->update() when hierarchical post doesn't have children.
...
Props danielbachhuber.
Fixes #34896 .
Built from https://develop.svn.wordpress.org/trunk@35817
git-svn-id: http://core.svn.wordpress.org/trunk@35781 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-12-07 17:47:25 +00:00