/** * 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; } } Public – Page 60 – tejas-apartment.teson.xyz

Public

Suosituimmat kasinopelit tänään

Suosituimmat kasinopelit tänään Yleiskatsaus kasinopelaamiseen Kasinopelaaminen on viime vuosina kasvanut hurjasti, ja erityisesti nettikasinot ovat tulleet yhä suositummiksi. Pelaajat nauttivat mahdollisuudesta pelata kotonaan tai liikkeellä ollessaan, ja tarjontaa on runsaasti eri tyyppisiä pelejä. Tänä päivänä kasinot tarjoavat laajan valikoiman pelejä, joista jokainen löytää varmasti mieleisensä vaihtoehdon, kuten maxxwin kokemuksia, jotka ovat inspiroivia ja tarjoavat tietoa. […]

Suosituimmat kasinopelit tänään Read More »

El fascinante mundo de los juegos de azar en línea y sus secretos revelados

El fascinante mundo de los juegos de azar en línea y sus secretos revelados La evolución de los juegos de azar en línea Desde sus inicios a finales de los años 90, los juegos de azar en línea han experimentado una transformación asombrosa. Inicialmente limitados a unos pocos sitios web, hoy en día se han

El fascinante mundo de los juegos de azar en línea y sus secretos revelados Read More »

Hasartmängude maailma saladused mängu nautimine ja riskide juhtimine

Hasartmängude maailma saladused mängu nautimine ja riskide juhtimine Hasartmängude ajalugu ja areng Hasartmängud on olnud inimkonna osa juba sajandeid, ulatudes kaugele minevikku. Algselt piirdusid need lihtsate viskamiste ja kaardimängudega, kuid aja jooksul on hasartmängud arenenud keerukamateks ning mitmekesisteks formaatideks. Ajalooliselt on hasartmängud olnud erinevate kultuuride osa, kus iga kultuur on loonud oma mängureeglid ja traditsioonid.

Hasartmängude maailma saladused mängu nautimine ja riskide juhtimine Read More »

Spänningsfylld underhållning Upptäck världen av kasinoäventyr

Spänningsfylld underhållning Upptäck världen av kasinoäventyr Vad är kasinoäventyr? Kasinoäventyr handlar om mer än bara spel; det är en upplevelse fylld av spänning och osäkerhet. När man kliver in i en kasinovärld, oavsett om det är fysiskt eller online, möts man av en atmosfär av möjligheter och utmaningar. Ljudet av snurrande hjul, ljudet av klirrandet

Spänningsfylld underhållning Upptäck världen av kasinoäventyr Read More »

Die Faszination der Spielautomaten Ein Blick hinter die Kulissen des Casinos

Die Faszination der Spielautomaten Ein Blick hinter die Kulissen des Casinos Die Geschichte der Spielautomaten Die Geschichte der Spielautomaten reicht bis ins späte 19. Jahrhundert zurück, als der erste mechanische Spielautomat, der „Liberty Bell“, erfunden wurde. Dieses einfache Gerät bestand aus einem mechanischen Mechanismus und drei Walzen. Spieler mussten lediglich den Hebel betätigen, um die

Die Faszination der Spielautomaten Ein Blick hinter die Kulissen des Casinos Read More »

The Allure and Risks of Online Gambling Adventures

The Allure and Risks of Online Gambling Adventures The Rise of Online Gambling In recent years, the world of online gambling has experienced an exponential growth in popularity. With the convenience of playing from home and the expansive variety of games available, more players are drawn to virtual casinos than ever before. The thrill of

The Allure and Risks of Online Gambling Adventures Read More »

Reviving the Thrill Discovering the Allure of Modern Casinos

Reviving the Thrill Discovering the Allure of Modern Casinos Experience the Glamour of Modern Design The allure of modern casinos lies not only in the games they offer but also in their stunning architectural designs. Many contemporary casinos are masterpieces of engineering and art, featuring expansive spaces, intricate lighting, and breathtaking views that evoke a

Reviving the Thrill Discovering the Allure of Modern Casinos Read More »

Unveiling the Allure of Online Gaming Experiences

Unveiling the Allure of Online Gaming Experiences The Rise of Online Gaming In recent years, the online gaming sector has experienced an unprecedented surge in popularity. With advancements in technology, players can now immerse themselves in richly designed virtual environments from the comfort of their homes. The thrill of engaging in interactive gameplay, combined with

Unveiling the Allure of Online Gaming Experiences Read More »

Einblicke in die faszinierende Welt der Kasino-Abenteuer

Einblicke in die faszinierende Welt der Kasino-Abenteuer Die Geschichte der Kasinos Die Welt der Kasinos hat eine faszinierende Geschichte, die bis in die Antike zurückreicht. Bereits im alten Rom und in China gab es Formen von Glücksspielen, die als Vorläufer moderner Kasinos gelten können. Diese frühen Formen des Spielens waren oft mit kulturellen und religiösen

Einblicke in die faszinierende Welt der Kasino-Abenteuer Read More »