So the documentation on the Codex is pretty clear that showposts is deprecated. But that same documentation mentions nothing of numberposts. Instead, posts_per_page is listed.
But if we turn to the Codex docs for get_posts we see no mention of posts_per_page, instead citing numberposts.
In post.php we see what’s happening: numberposts is set up as a default (5), but then copied to posts_per_page (unless posts_per_page is set in the args).
So my question is really quite pedantic, but I’m looking to update Codex so I wanted to ask you guys – is there a reason why we wouldn’t want to just encourage posts_per_page across the board, eventually deprecating numberposts? Or am I missing some critical insight here?
In my opinion, deprecating
numberposts
would not make sense, asnumberposts
is used to query x amount of posts, whilstposts_per_page
is used to denote how many posts per page are being shown during pagination. If you were to deprecatenumberposts
in favor of simplyposts_per_page
, then pagination would not exist.ie:
"numberposts" => 50, "posts_per_page" => 10
a total of 50 posts to query, 10 posts per page, giving 5 pages of 10 posts each.
removal of
numberposts
:"posts_per_page" => 50
a total of 50 posts to query, 50 posts per page (since it copies the value of
numberposts
toposts_per_page
), giving 1 page of 50 posts and no pagination.Let me know if I’m just reiterating what you’re already aware of, and I’m just slightly confused by the question.
WP_Query
class hasposts_per_page
param, meanwhileget_posts
function has thenumberposts
param. In theget_posts
function docs page it states:In the get_posts() code reference page in the source code you can see, it uses
numberposts
value, whenposts_per_page
is empty, so that’s how it’s an ‘alias’ (or fallback) for it.At least, that’s how i read it.