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

Public

Gyakorlati tanácsok a felelősségteljes szerencsejátékhoz

Gyakorlati tanácsok a felelősségteljes szerencsejátékhoz A felelősségteljes játék fogalma A felelősségteljes szerencsejáték azt jelenti, hogy a játékosok tudatosan és kontrollált módon közelítik meg a játékot. Ez magában foglalja a pénzügyi keretek kijelölését és a játékidő korlátozását, hogy elkerüljék a túlzásba vitt játékot. Az Allyspin online casinoban elérhető játékok élménye lehet szórakoztató, azonban fontos, hogy tisztában […]

Gyakorlati tanácsok a felelősségteljes szerencsejátékhoz Read More »

Mastering advanced strategies at Penalty Shoot Out Unlocking the secrets to casino success

Mastering advanced strategies at Penalty Shoot Out Unlocking the secrets to casino success Understanding the Basics of Penalty Shoot Out Before diving into advanced strategies, it’s essential to grasp the fundamentals of the Penalty Shoot Out game. This engaging online casino experience allows players to engage in a thrilling football penalty challenge where they can

Mastering advanced strategies at Penalty Shoot Out Unlocking the secrets to casino success Read More »

Управление финансами в азартных играх стратегии для успешной игры

Управление финансами в азартных играх стратегии для успешной игры Основы финансового управления в азартных играх Управление финансами в азартных играх — это важный аспект, который может значительно повлиять на успех игрока. Основная цель финансового управления заключается в том, чтобы минимизировать потери и максимизировать прибыль. Важно заранее установить бюджет, который вы готовы потратить на азартные игры,

Управление финансами в азартных играх стратегии для успешной игры Read More »

Paano pamahalaan ang iyong pananalapi sa pagsusugal nang epektibo

Paano pamahalaan ang iyong pananalapi sa pagsusugal nang epektibo Pag-unawa sa mga Batayang Prinsipyo ng Pagsusugal Bago pumasok sa mundo ng pagsusugal, mahalaga na maunawaan ang mga batayang prinsipyo nito. Ang pagsusugal ay hindi lamang isang laro, kundi isang responsibilidad na nangangailangan ng tamang pag-iisip at pamamahala. Dapat mong alamin ang mga uri ng pagsusugal,

Paano pamahalaan ang iyong pananalapi sa pagsusugal nang epektibo Read More »

Understanding casino etiquette Navigating culture with confidence

Understanding casino etiquette Navigating culture with confidence The Importance of Casino Etiquette Understanding casino etiquette is crucial for anyone looking to enjoy a seamless gaming experience. Each casino has its own set of unwritten rules and standards of behavior that can vary significantly depending on the region and cultural context. Being aware of these can

Understanding casino etiquette Navigating culture with confidence Read More »

Mastering popular casino games Your ultimate guide to winning strategies with Tower Rush

Mastering popular casino games Your ultimate guide to winning strategies with Tower Rush Understanding Tower Rush Mechanics Tower Rush introduces players to an engaging blend of strategy and timing, making it a standout choice among online casino games. The core mechanics revolve around stacking floors and timing your drops to achieve maximum multipliers. Players in

Mastering popular casino games Your ultimate guide to winning strategies with Tower Rush Read More »

История азартных игр от древних цивилизаций до современности mostbet

История азартных игр от древних цивилизаций до современности mostbet Азартные игры в древних цивилизациях Азартные игры имеют долгую и увлекательную историю, начиная с древних цивилизаций. Первые упоминания о играх на деньги встречаются в Месопотамии и Древнем Египте, где азартные игры были частью ритуалов и праздников. Игроки использовали кости, которые считались священными, и разные виды карточных

История азартных игр от древних цивилизаций до современности mostbet Read More »

Kumarhane Oyunlarına Adım Adım Başlangıç Rehberi

Kumarhane Oyunlarına Adım Adım Başlangıç Rehberi Kumarhane Oyunlarının Temelleri Kumarhane oyunları, birçok kişi için eğlenceli bir deneyim sunan popüler aktiviteler arasındadır. Bu oyunlar, strateji ve şansa dayalı olarak farklı türlerde sunulmaktadır. Her bir oyunun kendine özgü kuralları ve kazanma yöntemleri vardır. Bu bağlamda, kullanıcıların betpark gibi platformlarda daha fazla imkan keşfetmeleri önemlidir. Geleneksel kumarhaneler ile

Kumarhane Oyunlarına Adım Adım Başlangıç Rehberi Read More »

Gamblingdə etik anlayışlar Nəyi bilməlisiniz

Gamblingdə etik anlayışlar Nəyi bilməlisiniz Gamblingin etik aspektləri Gambling, əyləncə və risk faktoru ilə dolu bir fəaliyyət olduğundan, onun etik aspektləri də önəmlidir. Etik anlayışlar, insanların bu fəaliyyətə necə yanaşması və hansı dəyərləri rəhbər tutması ilə bağlıdır. Məsələn, ədalətli oyun prinsipləri, iştirakçıların pin up hər birinin bərabər şansa sahib olmasını təmin etməlidir. Gamblingdə etik davranışlar,

Gamblingdə etik anlayışlar Nəyi bilməlisiniz Read More »

Kumar yönetiminde finansal başarı için ipuçları BetGaranti ile yolculuğa çıkın

Kumar yönetiminde finansal başarı için ipuçları BetGaranti ile yolculuğa çıkın Kumar Yönetiminde Stratejik Planlama Kumar oynamaya başlamadan önce, etkili bir stratejik plan oluşturmak oldukça önemlidir. Hedeflerinizi belirlemek, ne kadar süreyle oynayacağınızı ve bütçenizi nasıl yönetmeniz gerektiğini netleştirmek, başarılı bir kumar deneyimi için kritik adımlardır. Planınızda, kazanma ve kaybetme ihtimallerini dikkate alarak, uygun bir bütçe belirlemelisiniz.

Kumar yönetiminde finansal başarı için ipuçları BetGaranti ile yolculuğa çıkın Read More »