WP_Sitemaps_Users::get_max_num_pages( string $object_subtype = '' ): int
- Since
- 5.5.0
- Source
wp-includes/sitemaps/providers/class-wp-sitemaps-users.php:100
Parameters
$object_subtypestringoptional- Not applicable for Users but required for compatibility with the parent provider class. Default empty.Default:
''
Return
int- Total page count.
Cost profile
Measured from the compiled opcodes, not from a stopwatch. Every number here is identical on any machine that runs the same PHP version, and every function in core is ranked by these figures.
- Cost class
- Trivial
- Scaling
- Constant
- Instructions
- 9–29
- Plugin surface
- 1 hook
- Called by
- 0
Touches nothing outside its own arguments.
No loop in the body: the same number of instructions runs whatever you pass in.
Executed per call on PHP 8.4, depending on the branch taken. The body compiles to 30.
Third-party callbacks on 'wp_sitemaps_users_pre_max_num_pages' run inside this call, and their cost is not bounded by anything here.
Nothing in core calls this; the cost is only what you spend yourself.
What it touches
- hookthird-party callbacks
apply_filters()called directly
What one call costs · 2 distinct outcomes
One number would be a lie: the work depends on which branch runs. These are every distinct cost WP_Sitemaps_Users::get_max_num_pages() can have, taken from its control-flow graph on PHP 8.4.
| When | Instructions | Calls it makes |
|---|---|---|
$max_num_pages !== null | 9 | apply_filters() |
$max_num_pages === null | 29 | apply_filters()->get_users_query_args()->get_total()wp_sitemaps_get_max_urls()ceil() |
Across PHP versions
| PHP | Compiled | Executed | Branches | Notes |
|---|---|---|---|---|
7.4 | 30 | 9–29 | 1 | Compiles to the same instructions |
8.1 | 30 | 9–29 | 1 | Compiles to the same instructions |
8.2 | 30 | 9–29 | 1 | Compiles to the same instructions |
8.3 | 30 | 9–29 | 1 | Compiles to the same instructions |
8.4 | 30 | 9–29 | 1 | Compiles to the same instructions |
Oldest PHP that compiles this body: 7.4. An instruction is not a fixed amount of time, so a version with the same count is not necessarily the same speed; what the count rules out is a difference in the work itself.
Hooks fired · 1
One hook fires while WP_Sitemaps_Users::get_max_num_pages() runs, in this order:
- apply_filters( wp_sitemaps_users_pre_max_num_pages )filterline 111 (+11 into the body)
Filters the max number of pages for a user sitemap before it is generated.
Uses · 4
- apply_filters()Calls the callback functions that have been added to a filter hook.
- wp_sitemaps_get_max_urls()Gets the maximum number of URLs for a sitemap.
- WP_Sitemaps_Users::get_users_query_args()Returns the query args for retrieving users to list in the sitemap.
- WP_User_Query::__construct()Constructor.
Source
public function get_max_num_pages( $object_subtype = '' ) { /** * Filters the max number of pages for a user sitemap before it is generated. * * Returning a non-null value will effectively short-circuit the generation, * returning that value instead. * * @since 5.5.0 * * @param int|null $max_num_pages The maximum number of pages. Default null. */ $max_num_pages = apply_filters( 'wp_sitemaps_users_pre_max_num_pages', null ); if ( null !== $max_num_pages ) { return $max_num_pages; } $args = $this->get_users_query_args(); $query = new WP_User_Query( $args ); $total_users = $query->get_total(); return (int) ceil( $total_users / wp_sitemaps_get_max_urls( $this->object_type ) ); }History
Introduced in 5.5.0. Unchanged from 6.7.7 through 7.1.0.
Signature, return type and hooks compared across 5 parsed releases.
About this page
- Parsed data
- Generated from the wordpress-develop 6.7.7 tag, from
src/wp-includes/sitemaps/providers/class-wp-sitemaps-users.php, and regenerated for each WordPress release so it tracks the code rather than a snapshot of it. - Corrections
- Something wrong on this page? Report it and it gets fixed in the next regeneration.