WP_Embed::find_oembed_post_id() – Find the oEmbed cache post ID for a given cache key.

You appear to be a bot. Output may be restricted

Description

Finds the oEmbed cache post ID for a given cache key.

Usage

$int|null = WP_Embed::find_oembed_post_id( $cache_key );

Parameters

$cache_key
( string ) required – oEmbed cache key.

Returns

int|null Post ID on success, null on failure.

Source

File name: wordpress/wp-includes/class-wp-embed.php
Lines:

1 to 32 of 32
  public function find_oembed_post_id( $cache_key ) {
    $cache_group    = 'oembed_cache_post';
    $oembed_post_id = wp_cache_get( $cache_key, $cache_group );

    if ( $oembed_post_id && 'oembed_cache' === get_post_type( $oembed_post_id ) ) {
      return $oembed_post_id;
    }

    $oembed_post_query = new WP_Query(
      array(
        'post_type'              => 'oembed_cache',
        'post_status'            => 'publish',
        'name'                   => $cache_key,
        'posts_per_page'         => 1,
        'no_found_rows'          => true,
        'cache_results'          => true,
        'update_post_meta_cache' => false,
        'update_post_term_cache' => false,
        'lazy_load_term_meta'    => false,
      )
    );

    if ( ! empty( $oembed_post_query->posts ) ) {
      // Note: 'fields' => 'ids' is not being used in order to cache the post object as it will be needed.
      $oembed_post_id = $oembed_post_query->posts[0]->ID;
      wp_cache_set( $cache_key, $oembed_post_id, $cache_group );

      return $oembed_post_id;
    }

    return null;
  }
 

 View on GitHub View on Trac