WP_Embed::shortcode( array $attr, string $url = '' ): string|false
- Source
wp-includes/class-wp-embed.php:196
Description
Attempts to convert a URL into embed HTML. Starts by checking the URL against the regex of the registered embed handlers. If none of the regex matches and it's enabled, then the URL will be given to the WP_oEmbed class.
Compatibility
- WordPress
- core
- 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
$attrarray- Shortcode attributes. Optional.
$widthintWidth of the embed in pixels.$heightintHeight of the embed in pixels.
$urlstringoptional- The URL attempting to be embedded.Default:
''
Return value
string|false- The embed HTML on success, otherwise the original URL.
->maybe_make_link()can return false on failure.
Performance profile
How much work a call to WP_Embed::shortcode() 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
- Constant
- Instructions
- 14–145
- Plugin surface
- 3 hooks
- Called by
- 1
Reaches the database via get_post().
No loop in the body: the same number of instructions runs whatever you pass in.
Executed per call on PHP 8.5, depending on the branch taken. The body compiles to 220.
Third-party callbacks on 'oembed_ttl', 'embed_oembed_html', 'embed_oembed_discover' run inside this call, and their cost is not bounded by anything here.
1 place in core call this, so the cost is paid more often than your own code shows.
What it touches
- querycontent query
get_post()called directly - hookthird-party callbacks
apply_filters()called directly - serializeserialisation
serialize()called directly - optionoption read or write
get_option()one call below WP_Embed::shortcode()
Further down the call graph this can also reach cache 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 · 122 distinct outcomes
One number would be a lie: the work depends on which branch runs. These are every distinct cost WP_Embed::shortcode() can have, taken from its control-flow graph on PHP 8.5.
| When | Instructions | Calls it makes |
|---|---|---|
empty($url) | 14–16 | get_post() |
!empty($url) && $embed_handler_html !== false | 33–35 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html() |
!empty($url) && $embed_handler_html === false && $cache === "{{unknown}}" | 77–83 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false && $cache !== "{{unknown}}" && !empty($cache) | 83–89 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters() |
!empty($url) && $embed_handler_html === false && $cache === "{{unknown}}" | 87–93 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false && $cache === "{{unknown}}" | 89–97 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 91–100 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false && $cache !== "{{unknown}}" && !empty($cache) | 93–99 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters() |
!empty($url) && $embed_handler_html === false | 95–104 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), apply_filters() |
!empty($url) && $embed_handler_html === false && $cache !== "{{unknown}}" && !empty($cache) | 95–103 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters() |
!empty($url) && $embed_handler_html === false | 97–106 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), update_post_meta(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 101–110 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), update_post_meta(), apply_filters() |
110 further outcomes, up to 145 instructions
!empty($url) && $embed_handler_html === false | 101–110 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 102–111 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 103–114 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 103–112 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), update_post_meta(), time(), update_post_meta(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 104–113 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_init_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 104–113 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 105–114 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), apply_filters() |
!empty($url) && $embed_handler_html === false | 106–115 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), apply_filters() |
!empty($url) && $embed_handler_html === false | 106–115 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), kses_init_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 107–118 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), apply_filters() |
!empty($url) && $embed_handler_html === false | 107–116 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), update_post_meta(), time(), update_post_meta(), apply_filters() |
!empty($url) && $embed_handler_html === false | 107–116 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), update_post_meta(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 108–117 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_init_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 108–117 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 109–120 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), update_post_meta(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 110–119 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), kses_init_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 111–120 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), ID(), wp_slash(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 111–120 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), update_post_meta(), apply_filters() |
!empty($url) && $embed_handler_html === false | 112–121 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 112–121 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), array_merge(), wp_slash(), wp_insert_post(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 113–124 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), update_post_meta(), apply_filters() |
!empty($url) && $embed_handler_html === false | 113–122 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), ID(), wp_slash(), kses_init_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 113–122 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), ID(), wp_slash(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 113–122 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), update_post_meta(), time(), update_post_meta(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 114–125 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 114–123 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), post_content(), array_merge(), wp_slash(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 114–123 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_init_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 114–123 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 114–123 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), array_merge(), wp_slash(), wp_insert_post(), kses_init_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 114–123 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), array_merge(), wp_slash(), wp_insert_post(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 115–124 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), ID(), wp_slash(), apply_filters() |
!empty($url) && $embed_handler_html === false | 115–124 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), ID(), wp_slash(), kses_init_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 115–126 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), update_post_meta(), time(), update_post_meta(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 116–125 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), apply_filters() |
!empty($url) && $embed_handler_html === false | 116–125 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), array_merge(), wp_slash(), wp_insert_post(), apply_filters() |
!empty($url) && $embed_handler_html === false | 116–127 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_init_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 116–127 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 116–125 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), post_content(), array_merge(), wp_slash(), kses_init_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 116–125 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), post_content(), array_merge(), wp_slash(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 116–125 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), kses_init_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 116–125 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), array_merge(), wp_slash(), wp_insert_post(), kses_init_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 117–126 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), ID(), wp_slash(), kses_init_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 117–126 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), ID(), wp_slash(), apply_filters() |
!empty($url) && $embed_handler_html === false | 117–126 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), update_post_meta(), time(), update_post_meta(), apply_filters() |
!empty($url) && $embed_handler_html === false | 118–129 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), apply_filters() |
!empty($url) && $embed_handler_html === false | 118–127 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), post_content(), array_merge(), wp_slash(), apply_filters() |
!empty($url) && $embed_handler_html === false | 118–127 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_init_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 118–127 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 118–127 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), array_merge(), wp_slash(), wp_insert_post(), kses_init_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 118–127 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), array_merge(), wp_slash(), wp_insert_post(), apply_filters() |
!empty($url) && $embed_handler_html === false | 118–129 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), kses_init_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 118–127 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), post_content(), array_merge(), wp_slash(), kses_init_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 119–128 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), ID(), wp_slash(), kses_init_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 119–130 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), update_post_meta(), time(), update_post_meta(), apply_filters() |
!empty($url) && $embed_handler_html === false | 120–131 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_init_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 120–131 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 120–129 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), post_content(), array_merge(), wp_slash(), kses_init_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 120–129 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), post_content(), array_merge(), wp_slash(), apply_filters() |
!empty($url) && $embed_handler_html === false | 120–129 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), kses_init_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 120–129 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), array_merge(), wp_slash(), wp_insert_post(), kses_init_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 121–130 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), ID(), wp_slash(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 122–133 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), kses_init_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 122–131 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), post_content(), array_merge(), wp_slash(), kses_init_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 122–131 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), array_merge(), wp_slash(), wp_insert_post(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 123–134 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), ID(), wp_slash(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 123–132 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), ID(), wp_slash(), kses_init_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 123–132 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), ID(), wp_slash(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 124–133 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), post_content(), array_merge(), wp_slash(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 124–135 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), array_merge(), wp_slash(), wp_insert_post(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 124–133 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), array_merge(), wp_slash(), wp_insert_post(), kses_init_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 124–133 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), array_merge(), wp_slash(), wp_insert_post(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 125–134 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), ID(), wp_slash(), apply_filters() |
!empty($url) && $embed_handler_html === false | 125–136 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), ID(), wp_slash(), kses_init_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 125–136 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), ID(), wp_slash(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 125–134 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), ID(), wp_slash(), kses_init_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 126–135 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), array_merge(), wp_slash(), wp_insert_post(), apply_filters() |
!empty($url) && $embed_handler_html === false | 126–137 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), post_content(), array_merge(), wp_slash(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 126–135 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), post_content(), array_merge(), wp_slash(), kses_init_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 126–135 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), post_content(), array_merge(), wp_slash(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 126–137 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), array_merge(), wp_slash(), wp_insert_post(), kses_init_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 126–137 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), array_merge(), wp_slash(), wp_insert_post(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 126–135 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), array_merge(), wp_slash(), wp_insert_post(), kses_init_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 127–138 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), ID(), wp_slash(), apply_filters() |
!empty($url) && $embed_handler_html === false | 127–136 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), ID(), wp_slash(), kses_init_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 127–136 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), ID(), wp_slash(), apply_filters() |
!empty($url) && $embed_handler_html === false | 127–138 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), ID(), wp_slash(), kses_init_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 128–137 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), post_content(), array_merge(), wp_slash(), apply_filters() |
!empty($url) && $embed_handler_html === false | 128–139 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), array_merge(), wp_slash(), wp_insert_post(), apply_filters() |
!empty($url) && $embed_handler_html === false | 128–137 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), array_merge(), wp_slash(), wp_insert_post(), kses_init_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 128–137 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), array_merge(), wp_slash(), wp_insert_post(), apply_filters() |
!empty($url) && $embed_handler_html === false | 128–139 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), post_content(), array_merge(), wp_slash(), kses_init_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 128–139 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), post_content(), array_merge(), wp_slash(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 128–137 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), post_content(), array_merge(), wp_slash(), kses_init_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 128–139 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), array_merge(), wp_slash(), wp_insert_post(), kses_init_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 129–140 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), ID(), wp_slash(), kses_init_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 129–140 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), ID(), wp_slash(), apply_filters() |
!empty($url) && $embed_handler_html === false | 129–138 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), ID(), wp_slash(), kses_init_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 130–141 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), post_content(), array_merge(), wp_slash(), apply_filters() |
!empty($url) && $embed_handler_html === false | 130–139 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), post_content(), array_merge(), wp_slash(), kses_init_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 130–139 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), post_content(), array_merge(), wp_slash(), apply_filters() |
!empty($url) && $embed_handler_html === false | 130–141 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), array_merge(), wp_slash(), wp_insert_post(), kses_init_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 130–141 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), array_merge(), wp_slash(), wp_insert_post(), apply_filters() |
!empty($url) && $embed_handler_html === false | 130–139 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), array_merge(), wp_slash(), wp_insert_post(), kses_init_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 130–141 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), post_content(), array_merge(), wp_slash(), kses_init_filters(), ->maybe_make_link() |
!empty($url) && $embed_handler_html === false | 131–142 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), ID(), wp_slash(), kses_init_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 132–143 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), post_content(), array_merge(), wp_slash(), kses_init_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 132–143 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), post_content(), array_merge(), wp_slash(), apply_filters() |
!empty($url) && $embed_handler_html === false | 132–141 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post(), strtotime(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), post_content(), array_merge(), wp_slash(), kses_init_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 132–143 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), array_merge(), wp_slash(), wp_insert_post(), kses_init_filters(), apply_filters() |
!empty($url) && $embed_handler_html === false | 134–145 | get_post(), wp_embed_defaults(), wp_parse_args(), ->get_embed_handler_html(), serialize(), md5(), apply_filters(), ->find_oembed_post_id(), get_post_meta(), get_post_meta(), time(), apply_filters(), wp_oembed_get(), has_filter(), kses_remove_filters(), post_content(), array_merge(), wp_slash(), kses_init_filters(), apply_filters() |
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 | 220 | 14–145 | 22 | |
| 8.5 | 220 | 14–145 | 22 | |
| 8.4 | 220 | 14–145 | 22 | 3 fewer instructions than PHP 8.3 |
| 8.3 | 223 | 14–148 | 22 | |
| 8.2 | 223 | 14–148 | 22 | |
| 8.1 | 223 | 14–148 | 22 | 1 fewer instruction than PHP 7.4 |
| 7.4 | 224 | 14–149 | 22 |
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.
Hooks and filters fired · 4
4 hooks fire while WP_Embed::shortcode() runs, in this order:
- apply_filters( oembed_ttl )filterline 249 (+53 into the body)
Filters the oEmbed TTL value (time to live).
- apply_filters( embed_oembed_discover )filterline 305 (+109 into the body)
Filters whether to inspect the given URL for discoverable link tags.
- apply_filters( embed_oembed_html )filterline 374 (+178 into the body)
Filters the cached oEmbed HTML.
Uses · 16
- get_post()Retrieves post data given a post ID or post object.
- wp_parse_args()Merges user defined arguments into defaults array.
- wp_embed_defaults()Creates default array of embed parameters.
- apply_filters()Calls the callback functions that have been added to a filter hook.
- get_post_meta()Retrieves a post meta field for the given post ID.
- wp_oembed_get()Attempts to fetch the embed HTML for a provided URL using oEmbed.
- update_post_meta()Updates a post meta field based on the given post ID.
- has_filter()Checks if any filter has been registered for a hook.
- kses_remove_filters()Removes all KSES input form content filters.
- wp_update_post()Updates a post with new post data.
- wp_slash()Adds slashes to a string or recursively adds slashes to strings within an array.
- wp_insert_post()Inserts or update a post.
Show all 16
- kses_init_filters()Adds all KSES input form content filters.
- WP_Embed::get_embed_handler_html()Returns embed HTML for a given URL from embed handlers.
- WP_Embed::find_oembed_post_id()Finds the oEmbed cache post ID for a given cache key.
- WP_Embed::maybe_make_link()Conditionally makes a hyperlink based on an internal class variable.
Used by · 1
- WP_Embed::autoembed_callback()Callback function for WP_Embed::autoembed().
Source code
public function shortcode( $attr, $url = '' ) { $post = get_post(); if ( empty( $url ) && ! empty( $attr['src'] ) ) { $url = $attr['src']; } $this->last_url = $url; if ( empty( $url ) ) { $this->last_attr = $attr; return ''; } $rawattr = $attr; $attr = wp_parse_args( $attr, wp_embed_defaults( $url ) ); $this->last_attr = $attr; /* * KSES converts & into & and we need to undo this. * See https://core.trac.wordpress.org/ticket/11311 */ $url = str_replace( '&', '&', $url ); // Look for known internal handlers. $embed_handler_html = $this->get_embed_handler_html( $rawattr, $url ); if ( false !== $embed_handler_html ) { return $embed_handler_html; } $post_id = ( ! empty( $post->ID ) ) ? $post->ID : null; // Potentially set by WP_Embed::cache_oembed(). if ( ! empty( $this->post_ID ) ) { $post_id = $this->post_ID; } // Check for a cached result (stored as custom post or in the post meta). $key_suffix = md5( $url . serialize( $attr ) ); $cachekey = '_oembed_' . $key_suffix; $cachekey_time = '_oembed_time_' . $key_suffix; /** * Filters the oEmbed TTL value (time to live). * * @since 4.0.0 * * @param int $time Time to live (in seconds). * @param string $url The attempted embed URL. * @param array $attr An array of shortcode attributes. * @param int $post_id Post ID. */ $ttl = apply_filters( 'oembed_ttl', DAY_IN_SECONDS, $url, $attr, $post_id ); $cache = ''; $cache_time = 0; $cached_post_id = $this->find_oembed_post_id( $key_suffix ); if ( $post_id ) { $cache = get_post_meta( $post_id, $cachekey, true ); $cache_time = get_post_meta( $post_id, $cachekey_time, true ); if ( ! $cache_time ) { $cache_time = 0; } } elseif ( $cached_post_id ) { $cached_post = get_post( $cached_post_id ); $cache = $cached_post->post_content; $cache_time = strtotime( $cached_post->post_modified_gmt ); } $cached_recently = ( time() - $cache_time ) < $ttl; if ( $this->usecache || $cached_recently ) { // Failures are cached. Serve one if we're using the cache. if ( '{{unknown}}' === $cache ) { return $this->maybe_make_link( $url );Changelog
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/class-wp-embed.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.