/** * 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 54 – tejas-apartment.teson.xyz

Public

Understanding the complexities of gambling A complete overview

Understanding the complexities of gambling A complete overview The Historical Context of Gambling Gambling has been a part of human culture for thousands of years, tracing its roots back to ancient civilizations. From the roll of dice in Mesopotamia to the intricate betting systems of the Romans, gambling has evolved significantly over time. Different societies […]

Understanding the complexities of gambling A complete overview Read More »

Avancerede strategier til at optimere dine casinogevinster

Avancerede strategier til at optimere dine casinogevinster Forstå spillenes odds En af de mest afgørende faktorer, når man spiller casino, er forståelsen af spillenes odds. Hvert spil har sine egne matematiske chancer for gevinst, og at kende disse kan give dig en fordel. For eksempel har spil som blackjack og poker mere gunstige odds sammenlignet

Avancerede strategier til at optimere dine casinogevinster Read More »

Topp casinospel du inte vill missa

Topp casinospel du inte vill missa Populära spelautomater Spelautomater är utan tvekan några av de mest älskade casinospelen. Deras färgglada teman och spännande funktioner lockar både nya och erfarna spelare. Många spelare dras till dessa spel för möjligheten att vinna stora jackpottar och njuta av underhållande berättelser, speciellt när de utforskar casino utan svensk licens

Topp casinospel du inte vill missa Read More »

Unlocking the basics of gambling a beginner’s roadmap

Unlocking the basics of gambling a beginner’s roadmap Understanding the Fundamentals of Gambling Gambling is a popular activity that involves risking money or valuables in hopes of winning more. At its core, it can take many forms, including betting on sports, playing casino games, or participating in lotteries. Each of these activities requires a foundational

Unlocking the basics of gambling a beginner’s roadmap Read More »

Ulduzların sponsorluğu mostbet ilə bahislərdə yeni dövr

Ulduzların sponsorluğu mostbet ilə bahislərdə yeni dövr Ulduzların rolunun artırılması Son dövrlərdə idman dünyasında ulduzların sponsorluğu, bahislər sahəsində yeni bir mühit yaratmağa başlayıb. İdmançıların və məşhurların tanıtdığı platformalar, istifadəçilərə daha cazibədar və etibarlı bir mühit təqdim edir. Beləliklə, insanlar öz seçimlərini daha asan edə bilirlər; məsələn, mostbet yukle vasitəsilə bahislərinə yönəldikləri platformaları daha ehtiyatla seçirlər.

Ulduzların sponsorluğu mostbet ilə bahislərdə yeni dövr Read More »

Exploring the social dynamics of gambling in contemporary society

Exploring the social dynamics of gambling in contemporary society The Evolution of Gambling in Society Gambling has undergone significant transformations throughout history, evolving from a pastime primarily associated with illicit activities to a mainstream form of entertainment. In contemporary society, gambling encompasses various forms, including traditional casinos, online platforms, and mobile applications. This evolution reflects

Exploring the social dynamics of gambling in contemporary society Read More »

Jahon kazinolarining madaniyati O’yin va an’analar o’rtasidagi bog’lanish

Jahon kazinolarining madaniyati O’yin va an’analar o’rtasidagi bog’lanish Kazinolar va ularning tarixi Kazinolar insoniyat tarixida juda qadim zamonlardan beri mavjud. Ular dastlab ijtimoiy uchrashuv joylari sifatida paydo bo’lgan bo’lib, odamlar birgalikda vaqt o’tkazish, o’yinlar o’ynash va bir-birlari bilan munosabatlarni rivojlantirish uchun yig’ilishgan. Vaqt o’tishi bilan, bu joylar iqtisodiy ahamiyatga ega bo’lgan tadbirlar markaziga aylangan. Har

Jahon kazinolarining madaniyati O’yin va an’analar o’rtasidagi bog’lanish Read More »

Understanding the complexities of gambling A complete overview

Understanding the complexities of gambling A complete overview The Historical Context of Gambling Gambling has been a part of human culture for thousands of years, tracing its roots back to ancient civilizations. From the roll of dice in Mesopotamia to the intricate betting systems of the Romans, gambling has evolved significantly over time. Different societies

Understanding the complexities of gambling A complete overview Read More »