/** * WP_oEmbed_Controller class, used to provide an oEmbed endpoint. * * @package WordPress * @subpackage Embeds * @since 4.4.0 */ /** * oEmbed API endpoint controller. * * Registers the REST API route and delivers the response data. * The output format (XML or JSON) is handled by the REST API. * * @since 4.4.0 */ #[AllowDynamicProperties] final class WP_oEmbed_Controller { /** * Register the oEmbed REST API route. * * @since 4.4.0 */ public function register_routes() { /** * Filters the maxwidth oEmbed parameter. * * @since 4.4.0 * * @param int $maxwidth Maximum allowed width. Default 600. */ $maxwidth = apply_filters( 'oembed_default_width', 600 ); register_rest_route( 'oembed/1.0', '/embed', array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_item' ), 'permission_callback' => '__return_true', 'args' => array( 'url' => array( 'description' => __( 'The URL of the resource for which to fetch oEmbed data.' ), 'required' => true, 'type' => 'string', 'format' => 'uri', ), 'format' => array( 'default' => 'json', 'sanitize_callback' => 'wp_oembed_ensure_format', ), 'maxwidth' => array( 'default' => $maxwidth, 'sanitize_callback' => 'absint', ), ), ), ) ); register_rest_route( 'oembed/1.0', '/proxy', array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_proxy_item' ), 'permission_callback' => array( $this, 'get_proxy_item_permissions_check' ), 'args' => array( 'url' => array( 'description' => __( 'The URL of the resource for which to fetch oEmbed data.' ), 'required' => true, 'type' => 'string', 'format' => 'uri', ), 'format' => array( 'description' => __( 'The oEmbed format to use.' ), 'type' => 'string', 'default' => 'json', 'enum' => array( 'json', 'xml', ), ), 'maxwidth' => array( 'description' => __( 'The maximum width of the embed frame in pixels.' ), 'type' => 'integer', 'default' => $maxwidth, 'sanitize_callback' => 'absint', ), 'maxheight' => array( 'description' => __( 'The maximum height of the embed frame in pixels.' ), 'type' => 'integer', 'sanitize_callback' => 'absint', ), 'discover' => array( 'description' => __( 'Whether to perform an oEmbed discovery request for unsanctioned providers.' ), 'type' => 'boolean', 'default' => true, ), ), ), ) ); } /** * Callback for the embed API endpoint. * * Returns the JSON object for the post. * * @since 4.4.0 * * @param WP_REST_Request $request Full data about the request. * @return array|WP_Error oEmbed response data or WP_Error on failure. */ public function get_item( $request ) { $post_id = url_to_postid( $request['url'] ); /** * Filters the determined post ID. * * @since 4.4.0 * * @param int $post_id The post ID. * @param string $url The requested URL. */ $post_id = apply_filters( 'oembed_request_post_id', $post_id, $request['url'] ); $data = get_oembed_response_data( $post_id, $request['maxwidth'] ); if ( ! $data ) { return new WP_Error( 'oembed_invalid_url', get_status_header_desc( 404 ), array( 'status' => 404 ) ); } return $data; } /** * Checks if current user can make a proxy oEmbed request. * * @since 4.8.0 * * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function get_proxy_item_permissions_check() { if ( ! current_user_can( 'edit_posts' ) ) { return new WP_Error( 'rest_forbidden', __( 'Sorry, you are not allowed to make proxied oEmbed requests.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Callback for the proxy API endpoint. * * Returns the JSON object for the proxied item. * * @since 4.8.0 * * @see WP_oEmbed::get_html() * @global WP_Embed $wp_embed WordPress Embed object. * @global WP_Scripts $wp_scripts * * @param WP_REST_Request $request Full data about the request. * @return object|WP_Error oEmbed response data or WP_Error on failure. */ public function get_proxy_item( $request ) { global $wp_embed, $wp_scripts; $args = $request->get_params(); // Serve oEmbed data from cache if set. unset( $args['_wpnonce'] ); $cache_key = 'oembed_' . md5( serialize( $args ) ); $data = get_transient( $cache_key ); if ( ! empty( $data ) ) { return $data; } $url = $request['url']; unset( $args['url'] ); // Copy maxwidth/maxheight to width/height since WP_oEmbed::fetch() uses these arg names. if ( isset( $args['maxwidth'] ) ) { $args['width'] = $args['maxwidth']; } if ( isset( $args['maxheight'] ) ) { $args['height'] = $args['maxheight']; } // Short-circuit process for URLs belonging to the current site. $data = get_oembed_response_data_for_url( $url, $args ); if ( $data ) { return $data; } $data = _wp_oembed_get_object()->get_data( $url, $args ); if ( false === $data ) { // Try using a classic embed, instead. /* @var WP_Embed $wp_embed */ $html = $wp_embed->get_embed_handler_html( $args, $url ); if ( $html ) { // Check if any scripts were enqueued by the shortcode, and include them in the response. $enqueued_scripts = array(); foreach ( $wp_scripts->queue as $script ) { $enqueued_scripts[] = $wp_scripts->registered[ $script ]->src; } return (object) array( 'provider_name' => __( 'Embed Handler' ), 'html' => $html, 'scripts' => $enqueued_scripts, ); } return new WP_Error( 'oembed_invalid_url', get_status_header_desc( 404 ), array( 'status' => 404 ) ); } /** This filter is documented in wp-includes/class-wp-oembed.php */ $data->html = apply_filters( 'oembed_result', _wp_oembed_get_object()->data2html( (object) $data, $url ), $url, $args ); /** * Filters the oEmbed TTL value (time to live). * * Similar to the {@see 'oembed_ttl'} filter, but for the REST API * oEmbed proxy endpoint. * * @since 4.8.0 * * @param int $time Time to live (in seconds). * @param string $url The attempted embed URL. * @param array $args An array of embed request arguments. */ $ttl = apply_filters( 'rest_oembed_ttl', DAY_IN_SECONDS, $url, $args ); set_transient( $cache_key, $data, $ttl ); return $data; } } Uncategorized – Page 14 – tejas-apartment.teson.xyz

Uncategorized

Lemon Casino – Online Casino Recenzje.1277

Lemon Casino – Online Casino Recenzje ▶️ GRAĆ Содержимое Wprowadzenie do Lemon Casino Jeśli szukasz najlepszego kasyna online, które oferuje szeroki wybór gier i atrakcyjne promocje, to Lemon Casino jest idealnym wyborem. W tym artykule przedstawimy recenzję tego kasyna, aby pomóc Ci w podejmowaniu decyzji. Lemon Casino to nowoczesne kasyno online, które oferuje szeroki wybór […]

Lemon Casino – Online Casino Recenzje.1277 Read More »

Официальный Сайт Играть в Онлайн Казино Pinco.4550

Пинко Казино Официальный Сайт – Играть в Онлайн Казино Pinco ▶️ ИГРАТЬ Содержимое Преимущества Игры в Онлайн Казино Pinco Большой выбор игр Как Зарегистрироваться и Начать Играть в Pinco Казино Бонусы и Акции для Новых Игроков в Pinco Казино Если вы ищете официальный сайт pinco casino , то вы на правом пути. В этом руководстве

Официальный Сайт Играть в Онлайн Казино Pinco.4550 Read More »

Understanding the Drostanolone Enanthate Cycle

Drostanolone Enanthate is an anabolic steroid that is commonly used by athletes and bodybuilders for its muscle-building properties. This compound is known for promoting lean muscle mass, increasing strength, and improving overall athletic performance. When considering a Drostanolone Enanthate cycle, it is essential to understand its effects, benefits, and potential side effects. https://numani.edu.al/understanding-the-drostanolone-enanthate-cycle/ What to

Understanding the Drostanolone Enanthate Cycle Read More »

NineWin Casino & Sportsbook Elevating Your Gaming Experience

Welcome to NineWin Casino & Sportsbook If you’re looking for an exhilarating online gaming experience, NineWin Casino & Sportsbook NineWin casino is the place to be. This platform blends an extensive selection of casino games with exciting sports betting options, making it a top choice for players worldwide. Whether you’re a seasoned gamer or a

NineWin Casino & Sportsbook Elevating Your Gaming Experience Read More »

7Slots Casino – En Gvenilir Casino Oyunlar.4008 (2)

7Slots Casino – En Güvenilir Casino Oyunları ▶️ OYNAMAK Содержимое 7slots Casino Hakkında Genel Bilgiler Oyunlar ve Bonuslar 7 Slots Casino Oyunları ve Bonuslar 7slot GÜVENLİK VE DESTEK HİZMETLERİ 7slots Casino, güvenilir ve güvenilir oyunlar sunan en iyi casino sitelerinden biridir. Başka bir 7 slot deneyimi arıyorsanız, 7slots giriş sayfasını ziyaret edin ve harika oyunlarla

7Slots Casino – En Gvenilir Casino Oyunlar.4008 (2) Read More »

Kasyno online Vulkan Vegas Jak si zarejestrowa i gra.2841

Kasyno online Vulkan Vegas – Jak się zarejestrować i grać ▶️ GRAĆ Содержимое Zarejestrowanie konta w Kasynie Vulkan Vegas Zakładki gry i bonusy Jeśli szukasz kasyna online, które oferuje emocje i szansę na wygraną, to Vulkan Vegas jest idealnym wyborem. Kasyno Vulkan Vegas jest popularne wśród graczy, którzy szukają nowych możliwości i emocji. W tym

Kasyno online Vulkan Vegas Jak si zarejestrowa i gra.2841 Read More »

Online casino overzicht Belgi.2741 (2)

Online casino overzicht België ▶️ SPELEN Содержимое Online Casino Overzicht België Welke Online Casinos zijn Legaal in België? Veilig en Betrouwbaar Spelen bij Online Casinos Wat zijn de belangrijkste factoren om een veilig online casino te kiezen? Voordelen en Nadelen van Online Casino’s in België België is een land met een rijke geschiedenis en een

Online casino overzicht Belgi.2741 (2) Read More »

Registrering p utlndska casinon frn Sverige.930

Registrering på utländska casinon från Sverige ▶️ SPELA Содержимое Regler och restriktioner för spelare från Sverige Alternativ till licensierade casinon för svenska spelare Om du är svensk spelare som vill testa bästa utländska casino, så rätt hittat! I denna artikel kommer vi att ge dig en detaljerad guide till hur du kan registrera dig på

Registrering p utlndska casinon frn Sverige.930 Read More »