wppaste
WordPress

wp_ajax_media_create_image_subsizes()

Since
5.3.0
Source
wp-admin/includes/ajax-actions.php:2504
Handles creating missing image sub-sizes for just uploaded images via AJAX.

Compatibility

WordPress
since 5.3.0
PHP
7.4–8.6-dev
  • 6.7.7
  • 6.8.8
  • 6.9.7
  • 7.0.4
  • 7.1.0

Present in every tracked release (6.7.7 to 7.1.0), and compiles on PHP 7.4 through 8.6-dev.

Performance profile

How much work a call to wp_ajax_media_create_image_subsizes() does, and what it touches: the algorithmic scaling, the Zend instruction count per call across PHP versions, the hooks it hands control to, and the core code that calls it. Measured from the compiled opcodes, not a stopwatch, so every number is identical on any machine running the same PHP version, and every function in core is ranked by cost.

Cost class
Heavy

Reaches the database via get_post().

Scaling
Constant

No loop in the body: the same number of instructions runs whatever you pass in.

Instructions
31–88

Executed per call on PHP 8.5, depending on the branch taken. The body compiles to 90.

Plugin surface
None

Nothing here hands control to plugin code.

Called by
0

Nothing in core calls this; the cost is only what you spend yourself.

What it touches

  • querycontent queryget_post()called directly
  • hookthird-party callbacksdo_action()one call below wp_ajax_media_create_image_subsizes()

Further down the call graph this can also reach option, transient, serialize and cache. Those are the worst case, several calls deep and usually down an error path, not what a normal call pays.

What one call costs · 108 distinct outcomes

One number would be a lie: the work depends on which branch runs. These are every distinct cost wp_ajax_media_create_image_subsizes() can have, taken from its control-flow graph on PHP 8.5.

WhenInstructionsCalls it makes
current_user_can() && headers_sent()31check_ajax_referer(), current_user_can(), headers_sent(), wp_update_image_subsizes(), wp_send_json_success()
current_user_can() && headers_sent()34check_ajax_referer(), current_user_can(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
current_user_can() && !headers_sent()35check_ajax_referer(), current_user_can(), headers_sent(), header(), wp_update_image_subsizes(), wp_send_json_success()
current_user_can() && !empty($value) && !wp_attachment_is_image() && headers_sent()35check_ajax_referer(), current_user_can(), wp_attachment_is_image(), headers_sent(), wp_update_image_subsizes(), wp_send_json_success()
current_user_can() && !headers_sent()38check_ajax_referer(), current_user_can(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
current_user_can() && !wp_attachment_is_image() && headers_sent()38check_ajax_referer(), current_user_can(), wp_attachment_is_image(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
headers_sent()38check_ajax_referer(), current_user_can(), __(), message(), headers_sent(), wp_update_image_subsizes(), wp_send_json_success()
current_user_can() && !empty($value) && !wp_attachment_is_image() && !headers_sent()39check_ajax_referer(), current_user_can(), wp_attachment_is_image(), headers_sent(), header(), wp_update_image_subsizes(), wp_send_json_success()
!empty($value) && wp_attachment_is_image() && headers_sent()40check_ajax_referer(), current_user_can(), wp_attachment_is_image(), current_user_can(), headers_sent(), wp_update_image_subsizes(), wp_send_json_success()
current_user_can() && headers_sent()41check_ajax_referer(), current_user_can(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
empty($value) && headers_sent()41check_ajax_referer(), current_user_can(), __(), message(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
current_user_can() && !wp_attachment_is_image() && !headers_sent()42check_ajax_referer(), current_user_can(), wp_attachment_is_image(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
96 further outcomes, up to 88 instructions
!headers_sent()42check_ajax_referer(), current_user_can(), __(), message(), headers_sent(), header(), wp_update_image_subsizes(), wp_send_json_success()
!empty($value) && !wp_attachment_is_image() && headers_sent()42check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), headers_sent(), wp_update_image_subsizes(), wp_send_json_success()
wp_attachment_is_image() && headers_sent()43check_ajax_referer(), current_user_can(), wp_attachment_is_image(), current_user_can(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
!empty($value) && wp_attachment_is_image() && !headers_sent()44check_ajax_referer(), current_user_can(), wp_attachment_is_image(), current_user_can(), headers_sent(), header(), wp_update_image_subsizes(), wp_send_json_success()
current_user_can() && !empty($value) && wp_attachment_is_image() && headers_sent()45check_ajax_referer(), current_user_can(), wp_attachment_is_image(), current_user_can(), get_post(), headers_sent(), wp_update_image_subsizes(), wp_send_json_success()
current_user_can() && !headers_sent()45check_ajax_referer(), current_user_can(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
current_user_can() && !wp_attachment_is_image() && headers_sent()45check_ajax_referer(), current_user_can(), wp_attachment_is_image(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
empty($value) && !headers_sent()45check_ajax_referer(), current_user_can(), __(), message(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
!wp_attachment_is_image() && headers_sent()45check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
!current_user_can() && headers_sent()45check_ajax_referer(), current_user_can(), __(), message(), __(), message(), headers_sent(), wp_update_image_subsizes(), wp_send_json_success()
!empty($value) && !wp_attachment_is_image() && !headers_sent()46check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), headers_sent(), header(), wp_update_image_subsizes(), wp_send_json_success()
wp_attachment_is_image() && !headers_sent()47check_ajax_referer(), current_user_can(), wp_attachment_is_image(), current_user_can(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
!empty($value) && wp_attachment_is_image() && !current_user_can() && headers_sent()47check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), current_user_can(), headers_sent(), wp_update_image_subsizes(), wp_send_json_success()
current_user_can() && wp_attachment_is_image() && headers_sent()48check_ajax_referer(), current_user_can(), wp_attachment_is_image(), current_user_can(), get_post(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
empty($value) && headers_sent()48check_ajax_referer(), current_user_can(), __(), message(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
!current_user_can() && empty($value) && headers_sent()48check_ajax_referer(), current_user_can(), __(), message(), __(), message(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
current_user_can() && !empty($value) && wp_attachment_is_image() && !headers_sent()49check_ajax_referer(), current_user_can(), wp_attachment_is_image(), current_user_can(), get_post(), headers_sent(), header(), wp_update_image_subsizes(), wp_send_json_success()
current_user_can() && !wp_attachment_is_image() && !headers_sent()49check_ajax_referer(), current_user_can(), wp_attachment_is_image(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
!wp_attachment_is_image() && !headers_sent()49check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
!current_user_can() && !headers_sent()49check_ajax_referer(), current_user_can(), __(), message(), __(), message(), headers_sent(), header(), wp_update_image_subsizes(), wp_send_json_success()
!current_user_can() && !wp_attachment_is_image() && headers_sent()49check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), headers_sent(), wp_update_image_subsizes(), wp_send_json_success()
wp_attachment_is_image() && headers_sent()50check_ajax_referer(), current_user_can(), wp_attachment_is_image(), current_user_can(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
wp_attachment_is_image() && !current_user_can() && headers_sent()50check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), current_user_can(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
!empty($value) && wp_attachment_is_image() && !current_user_can() && !headers_sent()51check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), current_user_can(), headers_sent(), header(), wp_update_image_subsizes(), wp_send_json_success()
current_user_can() && wp_attachment_is_image() && !headers_sent()52check_ajax_referer(), current_user_can(), wp_attachment_is_image(), current_user_can(), get_post(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
current_user_can() && !empty($value) && wp_attachment_is_image() && headers_sent()52check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), headers_sent(), wp_update_image_subsizes(), wp_send_json_success()
empty($value) && !headers_sent()52check_ajax_referer(), current_user_can(), __(), message(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
!wp_attachment_is_image() && headers_sent()52check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
!current_user_can() && empty($value) && !headers_sent()52check_ajax_referer(), current_user_can(), __(), message(), __(), message(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
!current_user_can() && !wp_attachment_is_image() && headers_sent()52check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
!current_user_can() && !wp_attachment_is_image() && !headers_sent()53check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), headers_sent(), header(), wp_update_image_subsizes(), wp_send_json_success()
current_user_can() && !empty($value) && wp_attachment_is_image() && headers_sent()54check_ajax_referer(), current_user_can(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), headers_sent(), wp_update_image_subsizes(), wp_send_json_success()
wp_attachment_is_image() && !headers_sent()54check_ajax_referer(), current_user_can(), wp_attachment_is_image(), current_user_can(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
wp_attachment_is_image() && !current_user_can() && !headers_sent()54check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), current_user_can(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
!current_user_can() && wp_attachment_is_image() && headers_sent()54check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), current_user_can(), headers_sent(), wp_update_image_subsizes(), wp_send_json_success()
current_user_can() && wp_attachment_is_image() && headers_sent()55check_ajax_referer(), current_user_can(), wp_attachment_is_image(), current_user_can(), get_post(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
current_user_can() && wp_attachment_is_image() && headers_sent()55check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
!current_user_can() && empty($value) && headers_sent()55check_ajax_referer(), current_user_can(), __(), message(), __(), message(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
current_user_can() && !empty($value) && wp_attachment_is_image() && !headers_sent()56check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), headers_sent(), header(), wp_update_image_subsizes(), wp_send_json_success()
!wp_attachment_is_image() && !headers_sent()56check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
!current_user_can() && !wp_attachment_is_image() && !headers_sent()56check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
current_user_can() && wp_attachment_is_image() && headers_sent()57check_ajax_referer(), current_user_can(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
wp_attachment_is_image() && !current_user_can() && headers_sent()57check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), current_user_can(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
!current_user_can() && wp_attachment_is_image() && headers_sent()57check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), current_user_can(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
current_user_can() && !empty($value) && wp_attachment_is_image() && !headers_sent()58check_ajax_referer(), current_user_can(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), headers_sent(), header(), wp_update_image_subsizes(), wp_send_json_success()
!current_user_can() && wp_attachment_is_image() && !headers_sent()58check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), current_user_can(), headers_sent(), header(), wp_update_image_subsizes(), wp_send_json_success()
current_user_can() && wp_attachment_is_image() && !headers_sent()59check_ajax_referer(), current_user_can(), wp_attachment_is_image(), current_user_can(), get_post(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
current_user_can() && wp_attachment_is_image() && !headers_sent()59check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
wp_attachment_is_image() && headers_sent()59check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), headers_sent(), wp_update_image_subsizes(), wp_send_json_success()
!current_user_can() && empty($value) && !headers_sent()59check_ajax_referer(), current_user_can(), __(), message(), __(), message(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
!current_user_can() && !wp_attachment_is_image() && headers_sent()59check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
current_user_can() && !empty($value) && wp_attachment_is_image() && headers_sent()60check_ajax_referer(), current_user_can(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), wp_delete_attachment(), wp_send_json_success(), headers_sent(), wp_update_image_subsizes(), wp_send_json_success()
current_user_can() && wp_attachment_is_image() && !headers_sent()61check_ajax_referer(), current_user_can(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
current_user_can() && !empty($value) && wp_attachment_is_image() && headers_sent()61check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), headers_sent(), wp_update_image_subsizes(), wp_send_json_success()
wp_attachment_is_image() && !current_user_can() && !headers_sent()61check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), current_user_can(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
!current_user_can() && wp_attachment_is_image() && !headers_sent()61check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), current_user_can(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
current_user_can() && wp_attachment_is_image() && headers_sent()62check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
wp_attachment_is_image() && headers_sent()62check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
current_user_can() && wp_attachment_is_image() && headers_sent()63check_ajax_referer(), current_user_can(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), wp_delete_attachment(), wp_send_json_success(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
wp_attachment_is_image() && !headers_sent()63check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), headers_sent(), header(), wp_update_image_subsizes(), wp_send_json_success()
!current_user_can() && !wp_attachment_is_image() && !headers_sent()63check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
current_user_can() && wp_attachment_is_image() && headers_sent()64check_ajax_referer(), current_user_can(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
current_user_can() && !empty($value) && wp_attachment_is_image() && !headers_sent()64check_ajax_referer(), current_user_can(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), wp_delete_attachment(), wp_send_json_success(), headers_sent(), header(), wp_update_image_subsizes(), wp_send_json_success()
current_user_can() && wp_attachment_is_image() && headers_sent()64check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
!current_user_can() && wp_attachment_is_image() && headers_sent()64check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), current_user_can(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
current_user_can() && !empty($value) && wp_attachment_is_image() && !headers_sent()65check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), headers_sent(), header(), wp_update_image_subsizes(), wp_send_json_success()
current_user_can() && wp_attachment_is_image() && !headers_sent()66check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
wp_attachment_is_image() && !headers_sent()66check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
current_user_can() && wp_attachment_is_image() && !headers_sent()67check_ajax_referer(), current_user_can(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), wp_delete_attachment(), wp_send_json_success(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
current_user_can() && !empty($value) && wp_attachment_is_image() && headers_sent()67check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), wp_delete_attachment(), wp_send_json_success(), headers_sent(), wp_update_image_subsizes(), wp_send_json_success()
current_user_can() && wp_attachment_is_image() && !headers_sent()68check_ajax_referer(), current_user_can(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
current_user_can() && wp_attachment_is_image() && !headers_sent()68check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
wp_attachment_is_image() && headers_sent()68check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), headers_sent(), wp_update_image_subsizes(), wp_send_json_success()
!current_user_can() && wp_attachment_is_image() && !headers_sent()68check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), current_user_can(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
wp_attachment_is_image() && headers_sent()69check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
current_user_can() && wp_attachment_is_image() && headers_sent()70check_ajax_referer(), current_user_can(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), wp_delete_attachment(), wp_send_json_success(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
current_user_can() && wp_attachment_is_image() && headers_sent()70check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), wp_delete_attachment(), wp_send_json_success(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
current_user_can() && wp_attachment_is_image() && headers_sent()71check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
current_user_can() && !empty($value) && wp_attachment_is_image() && !headers_sent()71check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), wp_delete_attachment(), wp_send_json_success(), headers_sent(), header(), wp_update_image_subsizes(), wp_send_json_success()
wp_attachment_is_image() && headers_sent()71check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
wp_attachment_is_image() && !headers_sent()72check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), headers_sent(), header(), wp_update_image_subsizes(), wp_send_json_success()
wp_attachment_is_image() && !headers_sent()73check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
current_user_can() && wp_attachment_is_image() && !headers_sent()74check_ajax_referer(), current_user_can(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), wp_delete_attachment(), wp_send_json_success(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
current_user_can() && wp_attachment_is_image() && !headers_sent()74check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), wp_delete_attachment(), wp_send_json_success(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
wp_attachment_is_image() && headers_sent()74check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), wp_delete_attachment(), wp_send_json_success(), headers_sent(), wp_update_image_subsizes(), wp_send_json_success()
current_user_can() && wp_attachment_is_image() && !headers_sent()75check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
wp_attachment_is_image() && !headers_sent()75check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
current_user_can() && wp_attachment_is_image() && headers_sent()77check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), wp_delete_attachment(), wp_send_json_success(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
wp_attachment_is_image() && headers_sent()77check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), wp_delete_attachment(), wp_send_json_success(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
wp_attachment_is_image() && headers_sent()78check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
wp_attachment_is_image() && !headers_sent()78check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), wp_delete_attachment(), wp_send_json_success(), headers_sent(), header(), wp_update_image_subsizes(), wp_send_json_success()
current_user_can() && wp_attachment_is_image() && !headers_sent()81check_ajax_referer(), current_user_can(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), wp_delete_attachment(), wp_send_json_success(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
wp_attachment_is_image() && !headers_sent()81check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), wp_delete_attachment(), wp_send_json_success(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), wp_send_json_success()
wp_attachment_is_image() && !headers_sent()82check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
wp_attachment_is_image() && headers_sent()84check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), wp_delete_attachment(), wp_send_json_success(), headers_sent(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()
wp_attachment_is_image() && !headers_sent()88check_ajax_referer(), current_user_can(), __(), message(), __(), message(), wp_attachment_is_image(), current_user_can(), get_post(), time(), strtotime(), wp_delete_attachment(), wp_send_json_success(), headers_sent(), header(), wp_update_image_subsizes(), wp_prepare_attachment_for_js(), __(), message(), wp_send_json_success()

Across PHP versions

Compiles the same on PHP 7.4, 8.1, 8.2, 8.3, 8.4, 8.5 and 8.6-dev: 90 instructions, 31–88 executed per call, 10 branches. The work does not change between versions.

An instruction is not a fixed amount of time, so a matching count is not necessarily the same speed; what it rules out is a difference in the work itself.

Uses · 10

Source code

function wp_ajax_media_create_image_subsizes() {	check_ajax_referer( 'media-form' ); 	if ( ! current_user_can( 'upload_files' ) ) {		wp_send_json_error( array( 'message' => __( 'Sorry, you are not allowed to upload files.' ) ) );	} 	if ( empty( $_POST['attachment_id'] ) ) {		wp_send_json_error( array( 'message' => __( 'Upload failed. Please reload and try again.' ) ) );	} 	$attachment_id = (int) $_POST['attachment_id']; 	if ( ! empty( $_POST['_wp_upload_failed_cleanup'] ) ) {		// Upload failed. Cleanup.		if ( wp_attachment_is_image( $attachment_id ) && current_user_can( 'delete_post', $attachment_id ) ) {			$attachment = get_post( $attachment_id ); 			// Created at most 10 min ago.			if ( $attachment && ( time() - strtotime( $attachment->post_date_gmt ) < 600 ) ) {				wp_delete_attachment( $attachment_id, true );				wp_send_json_success();			}		}	} 	/*	 * Set a custom header with the attachment_id.	 * Used by the browser/client to resume creating image sub-sizes after a PHP fatal error.	 */	if ( ! headers_sent() ) {		header( 'X-WP-Upload-Attachment-ID: ' . $attachment_id );	} 	/*	 * This can still be pretty slow and cause timeout or out of memory errors.	 * The js that handles the response would need to also handle HTTP 500 errors.	 */	wp_update_image_subsizes( $attachment_id ); 	if ( ! empty( $_POST['_legacy_support'] ) ) {		// The old (inline) uploader. Only needs the attachment_id.		$response = array( 'id' => $attachment_id );	} else {		// Media modal and Media Library grid view.		$response = wp_prepare_attachment_for_js( $attachment_id ); 		if ( ! $response ) {			wp_send_json_error( array( 'message' => __( 'Upload failed.' ) ) );		}	} 	// At this point the image has been uploaded successfully.	wp_send_json_success( $response );}

Changelog

Introduced in 5.3.0. Unchanged from 6.7.7 through 7.1.0.

  1. 6.7.7
  2. 6.8.8
  3. 6.9.7
  4. 7.0.4
  5. 7.1.0

Signature, return type and hooks compared across 5 parsed releases.

About this page

Parsed data
Generated from the wordpress-develop 6.8.8 tag, from src/wp-admin/includes/ajax-actions.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.