WP_Widget_Media_Image::render_media( array $instance )
- Since
- 4.8.0
- Source
wp-includes/widgets/class-wp-widget-media-image.php:177
Compatibility
- WordPress
- since 4.8.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.
Parameters
$instancearray- Widget instance props.
Performance profile
How much work a call to WP_Widget_Media_Image::render_media() 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
- Scaling
- Scales with input
- Instructions
- 32–162
- Plugin surface
- None
- Called by
- 0
Reaches the database via get_post().
The body loops, so the work grows with what you pass in.
Executed per call on PHP 8.5, depending on the branch taken. The body compiles to 260.
Nothing here hands control to plugin code.
Nothing in core calls this; the cost is only what you spend yourself.
What it touches
- querycontent query
get_post()called directly - hookthird-party callbacks
apply_filters()one call below WP_Widget_Media_Image::render_media() - optionoption read or write
get_option()one call below WP_Widget_Media_Image::render_media()
Further down the call graph this can also reach cache, serialize and transient. Those are the worst case, several calls deep and usually down an error path, not what a normal call pays.
What one call costs · 97 distinct outcomes
One number would be a lie: the work depends on which branch runs. These are every distinct cost WP_Widget_Media_Image::render_media() can have, taken from its control-flow graph on PHP 8.5.
| When | Instructions | Calls it makes |
|---|---|---|
!->is_attachment_with_mime_type() && empty($instance) | 32 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type() |
!->is_attachment_with_mime_type() && !empty($instance) && !$instance | 85–97 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), wp_get_loading_optimization_attributes(), array_merge(), array_map() |
!->is_attachment_with_mime_type() && isset($instance) && !$instance && $size === "custom" | 90–101 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), sprintf(), wp_get_attachment_image() |
!->is_attachment_with_mime_type() && !empty($instance) && !$instance | 91–96 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), wp_get_loading_optimization_attributes(), array_merge(), array_map(), wp_get_attachment_url() |
!->is_attachment_with_mime_type() && !empty($instance) && $instance | 92–104 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), wp_get_loading_optimization_attributes(), array_merge(), array_map(), width() |
!->is_attachment_with_mime_type() && !empty($instance) && !$instance | 92–97 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), wp_get_loading_optimization_attributes(), array_merge(), array_map(), get_attachment_link() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && !$instance && $size === "custom" | 96–100 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), sprintf(), wp_get_attachment_image(), wp_get_attachment_url() |
!->is_attachment_with_mime_type() && isset($instance) && $size === "custom" && $instance | 97–108 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), sprintf(), wp_get_attachment_image(), width() |
!->is_attachment_with_mime_type() && isset($instance) && !$instance && $size === "custom" | 97–101 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), sprintf(), wp_get_attachment_image(), get_attachment_link() |
!->is_attachment_with_mime_type() && !empty($instance) && $instance | 98–103 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), wp_get_loading_optimization_attributes(), array_merge(), array_map(), wp_get_attachment_url(), width() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && !$instance && $size !== "custom" && !$size | 99–110 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), sprintf(), wp_get_attachment_image() |
!->is_attachment_with_mime_type() && !empty($instance) && $instance | 99–104 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), wp_get_loading_optimization_attributes(), array_merge(), array_map(), get_attachment_link(), width() |
85 further outcomes, up to 162 instructions
!->is_attachment_with_mime_type() && !$instance | 101–114 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), wp_get_loading_optimization_attributes(), array_merge(), array_map(), esc_url() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && $size === "custom" && $instance | 103–107 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), sprintf(), wp_get_attachment_image(), wp_get_attachment_url(), width() |
!->is_attachment_with_mime_type() && isset($instance) && $size === "custom" && $instance | 104–108 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), sprintf(), wp_get_attachment_image(), get_attachment_link(), width() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && !$instance && $size !== "custom" && !$size | 105–109 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), sprintf(), wp_get_attachment_image(), wp_get_attachment_url() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && !$instance && $size === "custom" | 106–118 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), sprintf(), wp_get_attachment_image(), esc_url() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && $size !== "custom" && !$size && $instance | 106–117 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), sprintf(), wp_get_attachment_image(), width() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && !$instance && $size !== "custom" && !$size | 106–110 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), sprintf(), wp_get_attachment_image(), get_attachment_link() |
!->is_attachment_with_mime_type() && !$instance | 107–113 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), wp_get_loading_optimization_attributes(), array_merge(), array_map(), wp_get_attachment_url(), esc_url() |
!->is_attachment_with_mime_type() && $instance | 108–121 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), wp_get_loading_optimization_attributes(), array_merge(), array_map(), esc_url(), width() |
!->is_attachment_with_mime_type() && !$instance | 108–114 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), wp_get_loading_optimization_attributes(), array_merge(), array_map(), get_attachment_link(), esc_url() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && !$instance && $size !== "custom" && $size | 108–120 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), wp_get_attachment_metadata(), _wp_get_image_size_from_meta(), sprintf(), wp_get_attachment_image() |
!->is_attachment_with_mime_type() && !$instance | 110–123 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), wp_get_loading_optimization_attributes(), array_merge(), array_map(), esc_url(), esc_attr() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && !$instance && $size === "custom" | 112–117 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), sprintf(), wp_get_attachment_image(), wp_get_attachment_url(), esc_url() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && $size !== "custom" && !$size && $instance | 112–116 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), sprintf(), wp_get_attachment_image(), wp_get_attachment_url(), width() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && $size === "custom" && $instance | 113–125 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), sprintf(), wp_get_attachment_image(), esc_url(), width() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && !$instance && $size === "custom" | 113–118 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), sprintf(), wp_get_attachment_image(), get_attachment_link(), esc_url() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && $size !== "custom" && !$size && $instance | 113–117 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), sprintf(), wp_get_attachment_image(), get_attachment_link(), width() |
!->is_attachment_with_mime_type() && $instance | 114–120 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), wp_get_loading_optimization_attributes(), array_merge(), array_map(), wp_get_attachment_url(), esc_url(), width() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && !$instance && $size !== "custom" && $size | 114–119 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), wp_get_attachment_metadata(), _wp_get_image_size_from_meta(), sprintf(), wp_get_attachment_image(), wp_get_attachment_url() |
!->is_attachment_with_mime_type() && isset($instance) && !$instance && $size === "custom" | 115–127 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), sprintf(), wp_get_attachment_image(), esc_url(), esc_attr() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && !$instance && $size !== "custom" && !$size | 115–127 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), sprintf(), wp_get_attachment_image(), esc_url() |
!->is_attachment_with_mime_type() && $instance | 115–121 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), wp_get_loading_optimization_attributes(), array_merge(), array_map(), get_attachment_link(), esc_url(), width() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && $size !== "custom" && $size && $instance | 115–127 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), wp_get_attachment_metadata(), _wp_get_image_size_from_meta(), sprintf(), wp_get_attachment_image(), width() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && !$instance && $size !== "custom" && $size | 115–120 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), wp_get_attachment_metadata(), _wp_get_image_size_from_meta(), sprintf(), wp_get_attachment_image(), get_attachment_link() |
!->is_attachment_with_mime_type() && !$instance | 116–122 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), wp_get_loading_optimization_attributes(), array_merge(), array_map(), wp_get_attachment_url(), esc_url(), esc_attr() |
!->is_attachment_with_mime_type() && $instance | 117–130 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), wp_get_loading_optimization_attributes(), array_merge(), array_map(), esc_url(), esc_attr(), width() |
!->is_attachment_with_mime_type() && !$instance | 117–123 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), wp_get_loading_optimization_attributes(), array_merge(), array_map(), get_attachment_link(), esc_url(), esc_attr() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && $size === "custom" && $instance | 119–124 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), sprintf(), wp_get_attachment_image(), wp_get_attachment_url(), esc_url(), width() |
!->is_attachment_with_mime_type() && !empty($instance) && !$instance | 119–132 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), wp_get_loading_optimization_attributes(), array_merge(), array_map(), esc_url(), esc_attr(), esc_attr() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && $size === "custom" && $instance | 120–125 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), sprintf(), wp_get_attachment_image(), get_attachment_link(), esc_url(), width() |
!->is_attachment_with_mime_type() && isset($instance) && !$instance && $size === "custom" | 121–126 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), sprintf(), wp_get_attachment_image(), wp_get_attachment_url(), esc_url(), esc_attr() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && !$instance && $size !== "custom" && !$size | 121–126 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), sprintf(), wp_get_attachment_image(), wp_get_attachment_url(), esc_url() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && $size !== "custom" && $size && $instance | 121–126 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), wp_get_attachment_metadata(), _wp_get_image_size_from_meta(), sprintf(), wp_get_attachment_image(), wp_get_attachment_url(), width() |
!->is_attachment_with_mime_type() && isset($instance) && $size === "custom" && $instance | 122–134 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), sprintf(), wp_get_attachment_image(), esc_url(), esc_attr(), width() |
!->is_attachment_with_mime_type() && isset($instance) && !$instance && $size === "custom" | 122–127 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), sprintf(), wp_get_attachment_image(), get_attachment_link(), esc_url(), esc_attr() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && $size !== "custom" && !$size && $instance | 122–134 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), sprintf(), wp_get_attachment_image(), esc_url(), width() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && !$instance && $size !== "custom" && !$size | 122–127 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), sprintf(), wp_get_attachment_image(), get_attachment_link(), esc_url() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && $size !== "custom" && $size && $instance | 122–127 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), wp_get_attachment_metadata(), _wp_get_image_size_from_meta(), sprintf(), wp_get_attachment_image(), get_attachment_link(), width() |
!->is_attachment_with_mime_type() && $instance | 123–129 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), wp_get_loading_optimization_attributes(), array_merge(), array_map(), wp_get_attachment_url(), esc_url(), esc_attr(), width() |
!->is_attachment_with_mime_type() && isset($instance) && !$instance && $size === "custom" && !empty($instance) | 124–136 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), sprintf(), wp_get_attachment_image(), esc_url(), esc_attr(), esc_attr() |
!->is_attachment_with_mime_type() && isset($instance) && !$instance && $size !== "custom" && !$size | 124–136 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), sprintf(), wp_get_attachment_image(), esc_url(), esc_attr() |
!->is_attachment_with_mime_type() && $instance | 124–130 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), wp_get_loading_optimization_attributes(), array_merge(), array_map(), get_attachment_link(), esc_url(), esc_attr(), width() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && !$instance && $size !== "custom" && $size | 124–137 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), wp_get_attachment_metadata(), _wp_get_image_size_from_meta(), sprintf(), wp_get_attachment_image(), esc_url() |
!->is_attachment_with_mime_type() && !empty($instance) && !$instance | 125–131 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), wp_get_loading_optimization_attributes(), array_merge(), array_map(), wp_get_attachment_url(), esc_url(), esc_attr(), esc_attr() |
!->is_attachment_with_mime_type() && !empty($instance) && $instance | 126–139 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), wp_get_loading_optimization_attributes(), array_merge(), array_map(), esc_url(), esc_attr(), esc_attr(), width() |
!->is_attachment_with_mime_type() && !empty($instance) && !$instance | 126–132 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), wp_get_loading_optimization_attributes(), array_merge(), array_map(), get_attachment_link(), esc_url(), esc_attr(), esc_attr() |
!->is_attachment_with_mime_type() && isset($instance) && $size === "custom" && $instance | 128–133 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), sprintf(), wp_get_attachment_image(), wp_get_attachment_url(), esc_url(), esc_attr(), width() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && $size !== "custom" && !$size && $instance | 128–133 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), sprintf(), wp_get_attachment_image(), wp_get_attachment_url(), esc_url(), width() |
!->is_attachment_with_mime_type() && isset($instance) && $size === "custom" && $instance | 129–134 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), sprintf(), wp_get_attachment_image(), get_attachment_link(), esc_url(), esc_attr(), width() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && $size !== "custom" && !$size && $instance | 129–134 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), sprintf(), wp_get_attachment_image(), get_attachment_link(), esc_url(), width() |
!->is_attachment_with_mime_type() && isset($instance) && !$instance && $size === "custom" | 130–135 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), sprintf(), wp_get_attachment_image(), wp_get_attachment_url(), esc_url(), esc_attr(), esc_attr() |
!->is_attachment_with_mime_type() && isset($instance) && !$instance && $size !== "custom" && !$size | 130–135 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), sprintf(), wp_get_attachment_image(), wp_get_attachment_url(), esc_url(), esc_attr() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && !$instance && $size !== "custom" && $size | 130–136 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), wp_get_attachment_metadata(), _wp_get_image_size_from_meta(), sprintf(), wp_get_attachment_image(), wp_get_attachment_url(), esc_url() |
!->is_attachment_with_mime_type() && isset($instance) && $size === "custom" && !empty($instance) && $instance | 131–143 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), sprintf(), wp_get_attachment_image(), esc_url(), esc_attr(), esc_attr(), width() |
!->is_attachment_with_mime_type() && isset($instance) && !$instance && $size === "custom" | 131–136 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), sprintf(), wp_get_attachment_image(), get_attachment_link(), esc_url(), esc_attr(), esc_attr() |
!->is_attachment_with_mime_type() && isset($instance) && $size !== "custom" && !$size && $instance | 131–143 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), sprintf(), wp_get_attachment_image(), esc_url(), esc_attr(), width() |
!->is_attachment_with_mime_type() && isset($instance) && !$instance && $size !== "custom" && !$size | 131–136 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), sprintf(), wp_get_attachment_image(), get_attachment_link(), esc_url(), esc_attr() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && $size !== "custom" && $size && $instance | 131–144 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), wp_get_attachment_metadata(), _wp_get_image_size_from_meta(), sprintf(), wp_get_attachment_image(), esc_url(), width() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && !$instance && $size !== "custom" && $size | 131–137 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), wp_get_attachment_metadata(), _wp_get_image_size_from_meta(), sprintf(), wp_get_attachment_image(), get_attachment_link(), esc_url() |
!->is_attachment_with_mime_type() && !empty($instance) && $instance | 132–138 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), wp_get_loading_optimization_attributes(), array_merge(), array_map(), wp_get_attachment_url(), esc_url(), esc_attr(), esc_attr(), width() |
!->is_attachment_with_mime_type() && isset($instance) && !$instance && $size !== "custom" && !$size | 133–145 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), sprintf(), wp_get_attachment_image(), esc_url(), esc_attr(), esc_attr() |
!->is_attachment_with_mime_type() && !empty($instance) && $instance | 133–139 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), wp_get_loading_optimization_attributes(), array_merge(), array_map(), get_attachment_link(), esc_url(), esc_attr(), esc_attr(), width() |
!->is_attachment_with_mime_type() && isset($instance) && !$instance && $size !== "custom" && $size | 133–146 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), wp_get_attachment_metadata(), _wp_get_image_size_from_meta(), sprintf(), wp_get_attachment_image(), esc_url(), esc_attr() |
!->is_attachment_with_mime_type() && isset($instance) && $size === "custom" && $instance | 137–142 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), sprintf(), wp_get_attachment_image(), wp_get_attachment_url(), esc_url(), esc_attr(), esc_attr(), width() |
!->is_attachment_with_mime_type() && isset($instance) && $size !== "custom" && !$size && $instance | 137–142 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), sprintf(), wp_get_attachment_image(), wp_get_attachment_url(), esc_url(), esc_attr(), width() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && $size !== "custom" && $size && $instance | 137–143 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), wp_get_attachment_metadata(), _wp_get_image_size_from_meta(), sprintf(), wp_get_attachment_image(), wp_get_attachment_url(), esc_url(), width() |
!->is_attachment_with_mime_type() && isset($instance) && $size === "custom" && $instance | 138–143 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), sprintf(), wp_get_attachment_image(), get_attachment_link(), esc_url(), esc_attr(), esc_attr(), width() |
!->is_attachment_with_mime_type() && isset($instance) && $size !== "custom" && !$size && $instance | 138–143 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), sprintf(), wp_get_attachment_image(), get_attachment_link(), esc_url(), esc_attr(), width() |
!->is_attachment_with_mime_type() && isset($instance) && empty($instance) && $size !== "custom" && $size && $instance | 138–144 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), wp_get_attachment_metadata(), _wp_get_image_size_from_meta(), sprintf(), wp_get_attachment_image(), get_attachment_link(), esc_url(), width() |
!->is_attachment_with_mime_type() && isset($instance) && !$instance && $size !== "custom" && !$size | 139–144 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), sprintf(), wp_get_attachment_image(), wp_get_attachment_url(), esc_url(), esc_attr(), esc_attr() |
!->is_attachment_with_mime_type() && isset($instance) && !$instance && $size !== "custom" && $size | 139–145 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), wp_get_attachment_metadata(), _wp_get_image_size_from_meta(), sprintf(), wp_get_attachment_image(), wp_get_attachment_url(), esc_url(), esc_attr() |
!->is_attachment_with_mime_type() && isset($instance) && $size !== "custom" && !$size && $instance | 140–152 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), sprintf(), wp_get_attachment_image(), esc_url(), esc_attr(), esc_attr(), width() |
!->is_attachment_with_mime_type() && isset($instance) && !$instance && $size !== "custom" && !$size | 140–145 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), sprintf(), wp_get_attachment_image(), get_attachment_link(), esc_url(), esc_attr(), esc_attr() |
!->is_attachment_with_mime_type() && isset($instance) && $size !== "custom" && $size && $instance | 140–153 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), wp_get_attachment_metadata(), _wp_get_image_size_from_meta(), sprintf(), wp_get_attachment_image(), esc_url(), esc_attr(), width() |
!->is_attachment_with_mime_type() && isset($instance) && !$instance && $size !== "custom" && $size | 140–146 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), wp_get_attachment_metadata(), _wp_get_image_size_from_meta(), sprintf(), wp_get_attachment_image(), get_attachment_link(), esc_url(), esc_attr() |
!->is_attachment_with_mime_type() && isset($instance) && !$instance && $size !== "custom" && $size | 142–155 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), wp_get_attachment_metadata(), _wp_get_image_size_from_meta(), sprintf(), wp_get_attachment_image(), esc_url(), esc_attr(), esc_attr() |
!->is_attachment_with_mime_type() && isset($instance) && $size !== "custom" && !$size && $instance | 146–151 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), sprintf(), wp_get_attachment_image(), wp_get_attachment_url(), esc_url(), esc_attr(), esc_attr(), width() |
!->is_attachment_with_mime_type() && isset($instance) && $size !== "custom" && $size && $instance | 146–152 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), wp_get_attachment_metadata(), _wp_get_image_size_from_meta(), sprintf(), wp_get_attachment_image(), wp_get_attachment_url(), esc_url(), esc_attr(), width() |
!->is_attachment_with_mime_type() && isset($instance) && $size !== "custom" && !$size && $instance | 147–152 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), sprintf(), wp_get_attachment_image(), get_attachment_link(), esc_url(), esc_attr(), esc_attr(), width() |
!->is_attachment_with_mime_type() && isset($instance) && $size !== "custom" && $size && $instance | 147–153 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), wp_get_attachment_metadata(), _wp_get_image_size_from_meta(), sprintf(), wp_get_attachment_image(), get_attachment_link(), esc_url(), esc_attr(), width() |
!->is_attachment_with_mime_type() && isset($instance) && !$instance && $size !== "custom" && $size | 148–154 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), wp_get_attachment_metadata(), _wp_get_image_size_from_meta(), sprintf(), wp_get_attachment_image(), wp_get_attachment_url(), esc_url(), esc_attr(), esc_attr() |
!->is_attachment_with_mime_type() && isset($instance) && $size !== "custom" && $size && $instance | 149–162 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), wp_get_attachment_metadata(), _wp_get_image_size_from_meta(), sprintf(), wp_get_attachment_image(), esc_url(), esc_attr(), esc_attr(), width() |
!->is_attachment_with_mime_type() && isset($instance) && !$instance && $size !== "custom" && $size | 149–155 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), wp_get_attachment_metadata(), _wp_get_image_size_from_meta(), sprintf(), wp_get_attachment_image(), get_attachment_link(), esc_url(), esc_attr(), esc_attr() |
!->is_attachment_with_mime_type() && isset($instance) && $size !== "custom" && $size && $instance | 155–161 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), wp_get_attachment_metadata(), _wp_get_image_size_from_meta(), sprintf(), wp_get_attachment_image(), wp_get_attachment_url(), esc_url(), esc_attr(), esc_attr(), width() |
!->is_attachment_with_mime_type() && isset($instance) && $size !== "custom" && $size && $instance | 156–162 | ->get_instance_schema(), wp_list_pluck(), array_merge(), wp_parse_args(), ->is_attachment_with_mime_type(), get_intermediate_image_sizes(), array_merge(), wp_get_attachment_metadata(), _wp_get_image_size_from_meta(), sprintf(), wp_get_attachment_image(), get_attachment_link(), esc_url(), esc_attr(), esc_attr(), width() |
This body has more branch combinations than are worth enumerating, so the table covers the outcomes found first rather than every one that exists.
Across PHP versions
| PHP | Compiled | Executed | Branches | Notes |
|---|---|---|---|---|
| 8.6-dev | 259 | 32–162 | 26 | 1 fewer instruction than PHP 8.5 |
| 8.5 | 260 | 32–162 | 26 | |
| 8.4 | 260 | 32–162 | 26 | 13 fewer instructions than PHP 8.3 |
| 8.3 | 273 | 32–175 | 26 | |
| 8.2 | 273 | 32–175 | 26 | |
| 8.1 | 273 | 32–175 | 26 | 2 fewer instructions than PHP 7.4 |
| 7.4 | 275 | 32–175 | 26 |
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 · 15
- wp_list_pluck()Plucks a certain field out of each object or array in an array.
- wp_parse_args()Merges user defined arguments into defaults array.
- get_post()Retrieves post data given a post ID or post object.
- get_intermediate_image_sizes()Gets the available intermediate image size names.
- _wp_get_image_size_from_meta()Gets the image size as array from its meta data.
- wp_get_attachment_metadata()Retrieves attachment metadata for attachment ID.
- wp_get_attachment_image()Gets an HTML img element representing an image attachment.
- wp_get_loading_optimization_attributes()Gets loading optimization attributes.
- wp_get_attachment_url()Retrieves the URL for an attachment.
- get_attachment_link()Retrieves the permalink for an attachment.
- esc_url()Checks and cleans a URL.
- esc_attr()Escaping for HTML attributes.
Show all 15
- img_caption_shortcode()Builds the Caption shortcode output.
- WP_Widget_Media_Image::get_instance_schema()Get schema for properties of a widget instance (item).
- WP_Widget_Media_Image::is_attachment_with_mime_type()
Source code
public function render_media( $instance ) { $instance = array_merge( wp_list_pluck( $this->get_instance_schema(), 'default' ), $instance ); $instance = wp_parse_args( $instance, array( 'size' => 'thumbnail', ) ); $attachment = null; if ( $this->is_attachment_with_mime_type( $instance['attachment_id'], $this->widget_options['mime_type'] ) ) { $attachment = get_post( $instance['attachment_id'] ); } if ( $attachment ) { $caption = ''; if ( ! isset( $instance['caption'] ) ) { $caption = $attachment->post_excerpt; } elseif ( trim( $instance['caption'] ) ) { $caption = $instance['caption']; } $image_attributes = array( 'class' => sprintf( 'image wp-image-%d %s', $attachment->ID, $instance['image_classes'] ), 'style' => 'max-width: 100%; height: auto;', ); if ( ! empty( $instance['image_title'] ) ) { $image_attributes['title'] = $instance['image_title']; } if ( $instance['alt'] ) { $image_attributes['alt'] = $instance['alt']; } $size = $instance['size']; if ( 'custom' === $size || ! in_array( $size, array_merge( get_intermediate_image_sizes(), array( 'full' ) ), true ) ) { $size = array( $instance['width'], $instance['height'] ); $width = $instance['width']; } else { $caption_size = _wp_get_image_size_from_meta( $instance['size'], wp_get_attachment_metadata( $attachment->ID ) ); $width = empty( $caption_size[0] ) ? 0 : $caption_size[0]; } $image_attributes['class'] .= sprintf( ' attachment-%1$s size-%1$s', is_array( $size ) ? implode( 'x', $size ) : $size ); $image = wp_get_attachment_image( $attachment->ID, $size, false, $image_attributes ); } else { if ( empty( $instance['url'] ) ) { return; } $instance['size'] = 'custom'; $caption = $instance['caption']; $width = $instance['width']; $classes = 'image ' . $instance['image_classes']; if ( 0 === $instance['width'] ) { $instance['width'] = ''; } if ( 0 === $instance['height'] ) { $instance['height'] = ''; } $attr = array( 'class' => $classes, 'src' => $instance['url'], 'alt' => $instance['alt'], 'width' => $instance['width'], 'height' => $instance['height'], ); $loading_optimization_attr = wp_get_loading_optimization_attributes( 'img', $attr, 'widget_media_image' ); $attr = array_merge( $attr, $loading_optimization_attr );Changelog
Introduced in 4.8.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.9.7 tag, from
src/wp-includes/widgets/class-wp-widget-media-image.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.