Commit Graph
151 Commits
Author SHA1 Message Date
Drew Jaynes f77e353b66 Docs: Slightly simplify the DocBlock summaries for home_url(), get_home_url(), site_url(), and get_site_url().
See #35238. See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@36494 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-07 02:06:01 +00:00
Eric Andrew Lewis 74f26214e7 General: Document the difference between site_url() and home_url().
`site_url()` returns a url where WordPress application files are accessible (e.g. where the `wp-admin/` folder resides). `home_url()` returns a url where the front-end of the WordPress site can be visited.

See #35238.


git-svn-id: https://develop.svn.wordpress.org/trunk@36408 602fd350-edb4-49c9-b593-d223f7449a82
2016-01-27 02:54:33 +00:00
Eric Andrew Lewis 41406e3c6e Networks and sites: Replace "blog" usage with "site" in docs.
This effort focuses on `src/wp-includes/link-template.php`.

Multisite functions use the term "blog" to refer to what we now call a "site," e.g. `get_current_blog_id()`. These functions are here to stay because of our commitment to backwards compatibility. What we can do is set the documentation straight.

Props mrahmadawais.
Fixes #35589.


git-svn-id: https://develop.svn.wordpress.org/trunk@36386 602fd350-edb4-49c9-b593-d223f7449a82
2016-01-23 16:46:31 +00:00
Pascal Birchler 2241519865 Taxonomy: Introduce wp-admin/term.php for editing single terms.
This is similar to `edit.php` -> `post.php` and `users.php` -> `user-edit.php` and fixes a bug where screen options for the list table were shown while editing a term.

Fixes #34988.

git-svn-id: https://develop.svn.wordpress.org/trunk@36308 602fd350-edb4-49c9-b593-d223f7449a82
2016-01-15 08:26:06 +00:00
Drew Jaynes 4e9f90caa1 Docs: Add a changelog entry to the DocBlock for get_post_type_archive_link() denoting that posts support was added in 4.5.
See [36225]. See #19902.


git-svn-id: https://develop.svn.wordpress.org/trunk@36300 602fd350-edb4-49c9-b593-d223f7449a82
2016-01-14 17:55:46 +00:00
Eric Andrew Lewis 5304745be0 Permalinks: Make get_post_type_archive_link() work for the 'post' post type.
Props jjj.
See #19902. 


git-svn-id: https://develop.svn.wordpress.org/trunk@36225 602fd350-edb4-49c9-b593-d223f7449a82
2016-01-08 22:00:48 +00:00
Dion Hulse bb0d1af58f Canonical: Output correct canonical links for paged posts when not using pretty permalinks.
Props peterwilsoncc.
Fixes #34890


git-svn-id: https://develop.svn.wordpress.org/trunk@36096 602fd350-edb4-49c9-b593-d223f7449a82
2015-12-26 04:27:43 +00:00
Boone Gorges 9c2d3a7a4d Improve post-filter sanitization of excluded terms in get_adjacent_post().
See [36078], #35211.

git-svn-id: https://develop.svn.wordpress.org/trunk@36079 602fd350-edb4-49c9-b593-d223f7449a82
2015-12-23 20:14:12 +00:00
Boone Gorges fff6412f91 Move excluded_terms filter in get_adjacent_post().
The filter was added in 4.4 [34528] #9571, but in a place where it could not
affect the adjacent post query.

Fixes #35211.

git-svn-id: https://develop.svn.wordpress.org/trunk@36078 602fd350-edb4-49c9-b593-d223f7449a82
2015-12-23 19:56:32 +00:00
Drew Jaynes f8fc65acb3 Docs: Fix the syntax for the get_previous_post_link() DocBlock to ensure it's read and parsed as such instead of as a multi-line comment.
See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@36011 602fd350-edb4-49c9-b593-d223f7449a82
2015-12-18 23:13:03 +00:00
John Blackbourn 8c6d4d5d83 Correct a parameter name in the @param docs for get_home_url().
See #32246


git-svn-id: https://develop.svn.wordpress.org/trunk@35915 602fd350-edb4-49c9-b593-d223f7449a82
2015-12-14 02:44:03 +00:00
Pascal Birchler 4e58589669 Docs: Fix some minor DocBlock alignment issues.
See #32246.

git-svn-id: https://develop.svn.wordpress.org/trunk@35885 602fd350-edb4-49c9-b593-d223f7449a82
2015-12-12 15:36:36 +00:00
John Blackbourn 55d04cb50f Move the show_ui logic into the get_edit_post_link() and get_edit_term_link() functions to facilitate post types and terms which specify show_ui as false but provide a custom editing UI via the get_edit_post_link and get_edit_term_link filters.
Fixes #33763
Fixes #33938


git-svn-id: https://develop.svn.wordpress.org/trunk@35704 602fd350-edb4-49c9-b593-d223f7449a82
2015-11-19 16:24:35 +00:00
Drew Jaynes 85af87a19b Docs: Update the default scheme for get_rest_url() from 'json' to 'rest'.
Also adds 'rest' to the documented list of schemes for `home_url()`, `get_home_url()`, `set_url_scheme()`, and the `home_url` and `set_url_scheme` hooks.

Props rachelbaker.
Fixes #34300.


git-svn-id: https://develop.svn.wordpress.org/trunk@35274 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-19 22:38:03 +00:00
Aaron Jorbin 7db19dcda2 Improve get_post_permalink compatibility with non standard post status
This adds a new filter named `get_post_status` to the function named `get_post_status` which can be used to make additional post types behave like unpublished post status in `get_post_permalink`.

Props misterbisson, antpb, iamfriendly
Fixes #23458



git-svn-id: https://develop.svn.wordpress.org/trunk@35233 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-17 00:43:54 +00:00
Drew Jaynes 0cb7c0bd9f Docs: Add missing descriptions for the $wpdb global in DocBlocks all the places.
See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@35170 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-14 23:43:10 +00:00
Drew Jaynes 48ceecafc7 Template: Pass the $post parameter to the the_permalink filter.
Props chriscct7.
Fixes #34234. See #23882.


git-svn-id: https://develop.svn.wordpress.org/trunk@35002 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-10 05:45:27 +00:00
Drew Jaynes ed4b0aee3f Template: Rename the $id parameters in the_permalink(), get_the_permalink(), and get_permalink() to $post.
In all three cases, the functions can accept a post ID, a `WP_Post` object, or a falsey value, which defaults to the value of the global `$post`. Switching to `$post` in this context allows the parameters to better self-document and removes ambiguity in the code they are subsequently used in.

Props chriscct7 for the initial patch.
See #34234.


git-svn-id: https://develop.svn.wordpress.org/trunk@35001 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-10 05:40:14 +00:00
Sergey Biryukov eeea5d753a Fix typo in get_avatar() and get_avatar_data() docs.
Props johnjamesjacoby.
Fixes #34232.

git-svn-id: https://develop.svn.wordpress.org/trunk@34988 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-09 15:51:37 +00:00
Sergey Biryukov 90f3849d62 Add $id parameter to the_permalink(), for consistency with get_permalink().
Props johnjamesjacoby, chriscct7.
Fixes #23882.

git-svn-id: https://develop.svn.wordpress.org/trunk@34982 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-09 04:33:16 +00:00
Drew Jaynes 69db043e3c Docs: There are quite alot of typos in core inline comments.
See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@34717 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-30 04:12:16 +00:00
Drew Jaynes bd01019c21 Themes: Introduce three new arguments for get_the_post_navigation(), in_same_term, excluded_terms, and taxonomy.
The addition of these new arguments brings `get_the_post_navigation()` into argument parity with `get_previous_post_link()` and `get_next_post_link()`, both of which it wraps, and will allow for more flexibility in configuring the next and previous post links for simultaneous display in themes.

Props ChaseWiseman.
Fixes #32618.


git-svn-id: https://develop.svn.wordpress.org/trunk@34715 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-30 03:40:52 +00:00
Gary Pendergast ce14a63214 Permalinks: Add pretty permalinks for unattached attachments.
Previously, unattached attachments would have unsightly `/?attachment_id=1` URLs. As we've moved away from attachments being specifically attached to posts, instead being Media items, this has made the unattached URLs a more common occurrence.

We can breath easy once more, knowing that the world is a little bit safer from the horror of unnecessarily ugly URLs.

Props SergeyBiryukov, wonderboymusic, pento.

Fixes #1914.



git-svn-id: https://develop.svn.wordpress.org/trunk@34690 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-29 09:41:14 +00:00
Boone Gorges 0b7e8399b0 Force comment pagination on single posts.
Previously, the 'page_comments' toggle allowed users to disable comment
pagination. This toggle was only superficial, however. Even with
'page_comments' turned on, `comments_template()` loaded all of a post's
comments into memory, and passed them to `wp_list_comments()` and
`Walker_Comment`, the latter of which produced markup for only the
current page of comments. In other words, it was possible to enable
'page_comments', thereby showing only a subset of a post's comments on a given
page, but all comments continued to be loaded in the background. This technique
scaled poorly. Posts with hundreds or thousands of comments would load slowly,
or not at all, even when the 'comments_per_page' setting was set to a
reasonable number.

Recent changesets have addressed this problem through more efficient tree-
walking, better descendant caching, and more selective queries for top-level
post comments. The current changeset completes the project by addressing the
root issue: that loading a post causes all of its comments to be loaded too.

Here's the breakdown:

* Comment pagination is now forced. Setting 'page_comments' to false leads to evil things when you have many comments. If you want to avoid pagination, set 'comments_per_page' to something high.
* The 'page_comments' setting has been expunged from options-discussion.php, and from places in the codebase where it was referenced. For plugins relying on 'page_comments', we now force the value to `true` with a `pre_option` filter.
* `comments_template()` now queries for an appropriately small number of comments. Usually, this means the `comments_per_page` value.
* To preserve the current (odd) behavior for comment pagination links, some unholy hacks have been inserted into `comments_template()`. The ugliness is insulated in this function for backward compatibility and to minimize collateral damage. A side-effect is that, for certain settings of 'default_comments_page', up to 2x the value of `comments_per_page` might be fetched at a time.
* In support of these changes, a `$format` parameter has been added to `WP_Comment::get_children()`. This param allows you to request a flattened array of comment children, suitable for feeding into `Walker_Comment`.
* `WP_Query` loops are now informed about total available comment counts and comment pages by the `WP_Comment_Query` (`found_comments`, `max_num_pages`), instead of by `Walker_Comment`.

Aside from radical performance improvements in the case of a post with many
comments, this changeset fixes a bug that caused the first page of comments to
be partial (`found_comments` % `comments_per_page`), rather than the last, as
you'd expect.

Props boonebgorges, wonderboymusic.
Fixes #8071.

git-svn-id: https://develop.svn.wordpress.org/trunk@34561 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-25 20:39:18 +00:00
Scott Taylor a98ca8b314 Links: in get_adjacent_post(), add a "get_{$adjacent}_post_excluded_terms" filter.
Props rmccue, Japh, MikeHansenMe.
Fixes #9571.


git-svn-id: https://develop.svn.wordpress.org/trunk@34528 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-25 02:37:29 +00:00
Scott Taylor 04bb8a07d7 Canonical/Rewrite: After [34492], fix rel="canonical" URLs for paginated posts.
Props wonderboymusic, joostdevalk.
See #11694.


git-svn-id: https://develop.svn.wordpress.org/trunk@34496 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-24 14:30:00 +00:00
Scott Taylor fc3b7b20cd Links: the esc_html() additions in [34444] aren't very nice to screen reader <span>s. Revert those specific calls.
See #14900.


git-svn-id: https://develop.svn.wordpress.org/trunk@34452 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-23 04:25:18 +00:00
Scott Taylor e2ce2d90fd After [34444​], wp_get_shortlink() can call get_queried_object_id() instead of using the $wp_query global.
See #14900.


git-svn-id: https://develop.svn.wordpress.org/trunk@34445 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-22 20:08:49 +00:00
Scott Taylor e06ca91cd2 Links: use consistent late-escaping in some HTML link-generation functions:
* `post_comments_feed_link()`
* `edit_post_link()`
* `edit_comment_link()`
* `edit_bookmark_link()`
* `rel_canonical()`

Props niallkennedy, wonderboymusic.
Fixes #14900.


git-svn-id: https://develop.svn.wordpress.org/trunk@34444 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-22 20:05:17 +00:00
Konstantin Obenland 3cd12045d3 Introduce template functions for comment navigation:
* `get_the_comments_navigation()` and `the_comments_navigation()` for navigation to the next and previous page of comments.
* `get_the_comments_pagination()` and `the_comments_pagination()` for paginated navigation between pages of comments. Uses `paginate_comments_links()`.

This reduces the need for themes to define their own sets of comment navigation
functions, like Twenty Fifteen and others.
Completes the navigation template tag API started in #29808 for posts.

Fixes #30589.



git-svn-id: https://develop.svn.wordpress.org/trunk@34367 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-21 16:31:19 +00:00
Drew Jaynes 81e235444a Docs: The $post parameter has been passed to the preview_post_link since 4.0.0.
Fixes a version mixup introduced in [34170].

Props dimadin.
See #24345.


git-svn-id: https://develop.svn.wordpress.org/trunk@34363 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-21 13:16:36 +00:00
John Blackbourn 2894423f19 Revisions are an exception when it comes to the editing UI. The revision post type cannot have its show_ui argument set to true because this allows access to the post type listing, creation, and editing UI, but get_edit_post_link() needs to return a URL for the editing UI for revisions as that's how the revisions UI works.
Fixes #33763


git-svn-id: https://develop.svn.wordpress.org/trunk@34357 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-20 16:37:41 +00:00
Scott Taylor b55de4e5f8 Feeds/Links: fix feed links for unattached attachments.
Adds unit tests.

Props wonderboymusic, iworks.
Fixes #33693.


git-svn-id: https://develop.svn.wordpress.org/trunk@34336 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-19 20:09:05 +00:00
John Blackbourn a923d36085 Remove the ability to view the post listing screen and post editing screen for post types with show_ui set to false. It is unexpected and unintended behaviour that this is allowed.
If your plugin or site does rely on this behaviour, the arguments that are passed to `register_post_type()` should be altered so that `show_ui` is `true`, and arguments such as `show_in_menu`, `show_in_nav_menus`, and `show_in_admin_bar` are `false`.

Fixes #33763
Props swissspidy, johnbillion


git-svn-id: https://develop.svn.wordpress.org/trunk@34177 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 10:26:22 +00:00
John Blackbourn 9b836740c3 Improve the docblocks for the get_preview_post_link() function and the preview_post_link filter.
See #24345


git-svn-id: https://develop.svn.wordpress.org/trunk@34176 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 08:24:54 +00:00
John Blackbourn 47a66713ae Correct the value of the preview query variable added by get_preview_post_link().
See #24345
Props kitchin


git-svn-id: https://develop.svn.wordpress.org/trunk@34175 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 08:15:22 +00:00
Scott Taylor c0d850878a Create a function, get_preview_post_link(), to DRY the logic for applying the 'preview_post_link' filter to a URL.
Props TomHarrigan, wonderboymusic.
Fixes #24345.


git-svn-id: https://develop.svn.wordpress.org/trunk@34170 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 04:14:23 +00:00
Scott Taylor 2817bb6557 In get_avatar_data(), promote stdClass objects to WP_Comment if passed.
Props DrewAPicture, ocean90.
Fixes #32619.


git-svn-id: https://develop.svn.wordpress.org/trunk@34160 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 01:33:29 +00:00
Sergey Biryukov 13382740b9 Escape class attribute in edit_post_link() after [34098].
Props Offereins.
See #30563.

git-svn-id: https://develop.svn.wordpress.org/trunk@34117 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 13:00:31 +00:00
Sergey Biryukov 217c84e613 Docs: Add a changelog entry for the $class argument added to edit_post_link() in [34098].
Fixes #30563.

git-svn-id: https://develop.svn.wordpress.org/trunk@34115 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 12:19:55 +00:00
Scott Taylor f20622f394 In edit_post_link(), add an argument for the class attribute that defaults to post-edit-link.
Props voldemortensen.
Fixes #30563.


git-svn-id: https://develop.svn.wordpress.org/trunk@34098 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-13 23:33:30 +00:00
Boone Gorges 4ebab4dc16 Remove extraneous table join in get_adjacent_post().
Since [29248], a table join has not been necessary to process the
`$excluded_terms` parameter of `get_adjacent_post()`. Aside from adding extra
overhead, this join meant that post records that don't have any corresponding
rows in `wp_term_relationships` were erroneously excluded from results.

Fixes #32833.

git-svn-id: https://develop.svn.wordpress.org/trunk@34088 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-12 20:33:07 +00:00
Scott Taylor 5cce4a3262 After [33961], pass $comment to get_comment_link() where possible to avoid extra cache/db lookups.
See #33638.


git-svn-id: https://develop.svn.wordpress.org/trunk@34042 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-11 06:20:56 +00:00
Scott Taylor 4016b77b1a Add a parameter, $post, to get_{$adjacent}_post_join, get_{$adjacent}_post_where, and get_{$adjacent}_post_sort
Props JustinSainton.
Fixes #24597.


git-svn-id: https://develop.svn.wordpress.org/trunk@33968 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-09 03:49:00 +00:00
Scott Taylor 38d374ab01 After [33891], get_comment() returns global $comment if no args are passed and the global is set (after setting the default to null here). This allows us to ditch global comment imports.
See #33638.


git-svn-id: https://develop.svn.wordpress.org/trunk@33963 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-09 02:50:43 +00:00
Scott Taylor 60ba8b05e4 Introduce WP_Comment class to model/strongly-type rows from the comments database table. Inclusion of this class is a pre-req for some more general comment cleanup and sanity.
* Takes inspiration from `WP_Post` and adds sanity to comment caching. 
* Clarifies when the current global value for `$comment` is returned. The current implementation in `get_comment()` introduces side effects and an occasion stale global value for `$comment` when comment caches are cleaned.
* Strongly-types `@param` docs
* This class is marked `final` for now

Props wonderboymusic, nacin.

See #32619.


git-svn-id: https://develop.svn.wordpress.org/trunk@33891 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-03 18:16:35 +00:00
Boone Gorges 0c7f2237f0 Pass taxonomy name to filters in get_adjacent_post().
Props sboisvert.
Fixes #33568.

git-svn-id: https://develop.svn.wordpress.org/trunk@33805 602fd350-edb4-49c9-b593-d223f7449a82
2015-08-29 19:58:13 +00:00
Scott Taylor 1fb94edb99 In get_home_url(), import the $pagenow global to avoid having to check if it exists before comparing against it.
Props KalenJohnson.
See #33545.


git-svn-id: https://develop.svn.wordpress.org/trunk@33736 602fd350-edb4-49c9-b593-d223f7449a82
2015-08-25 21:02:14 +00:00
Drew Jaynes 83476bb77f Docs: Add a description and example to the hook docs for the navigation_markup_template filter, introduced in [33714].
Since the value of the filter is passed through `sprintf()` it's important to note that any filtered output needs to contain the expected specifiers.

See #31315.


git-svn-id: https://develop.svn.wordpress.org/trunk@33717 602fd350-edb4-49c9-b593-d223f7449a82
2015-08-23 18:07:41 +00:00
Scott Taylor d8ba4fde1b Add a filter to _navigation_markup: 'navigation_markup_template'
Props joedolson, mordauk.
Fixes #31315.


git-svn-id: https://develop.svn.wordpress.org/trunk@33714 602fd350-edb4-49c9-b593-d223f7449a82
2015-08-23 16:33:25 +00:00