/** * 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; } } Explorando el Entretenimiento de MXFun Diversión Sin Límites -

Explorando el Entretenimiento de MXFun Diversión Sin Límites

Explorando el Entretenimiento de MXFun Diversión Sin Límites

En la era digital, el entretenimiento ha evolucionado de maneras sorprendentes. Una de las plataformas que ha captado la atención de los usuarios es https://mxfun.org.mx/, un sitio que promete llevar la diversión a un nuevo nivel. A lo largo de este artículo, exploraremos lo que MXFun tiene para ofrecer, sus características únicas y cómo se ha consolidado como una opción popular en el ámbito del entretenimiento en línea.

¿Qué es MXFun?

MXFun es más que solo una plataforma; es una comunidad vibrante donde las personas pueden unirse, compartir y disfrutar de diversas formas de entretenimiento. Desde videos divertidos hasta juegos interactivos, MXFun se ha posicionado como un sitio integral para quienes buscan una distracción efectiva de la rutina diaria.

Características de MXFun

Una de las principales razones del éxito de MXFun radica en sus características distintivas. A continuación, enumeramos algunas de ellas:

  • Contenido Variado: MXFun ofrece una amplia gama de contenido que atrae a diferentes tipos de usuarios. Ya sea que estés buscando videos cómicos, series emocionantes o juegos en línea, esta plataforma tiene algo para todos.
  • Interacción Social: Uno de los aspectos más destacados de MXFun es su enfoque en la interacción social. Los usuarios pueden comentar, compartir y participar en discusiones, creando así una comunidad unida que mejora la experiencia general.
  • Actualizaciones Frecuentes: La plataforma se actualiza regularmente con nuevo contenido, asegurando que los usuarios tengan acceso a las últimas tendencias y novedades en el mundo del entretenimiento.
  • Interfaz Amigable: MXFun ha sido diseñado con una interfaz intuitiva que facilita la navegación, permitiendo a los usuarios encontrar rápidamente lo que buscan sin complicaciones.

Beneficios de Usar MXFun

Usar MXFun no solo brinda entretenimiento, sino también una serie de beneficios que lo convierten en una opción atractiva:

Explorando el Entretenimiento de MXFun Diversión Sin Límites
  1. Escapismo: En tiempos de estrés y ansiedad, es essential encontrar formas de escapar de la rutina. MXFun proporciona ese alivio necesario al ofrecer contenido divertido y estimulante.
  2. Conexiones: La plataforma permite a los usuarios conectarse con personas que comparten intereses similares, fomentando amistades y comunidades en línea.
  3. Accesibilidad: A diferencia de otras formas de entretenimiento, MXFun es accesible desde cualquier dispositivo con conexión a Internet, lo que significa que puedes disfrutar de tu contenido favorito donde quiera que estés.
  4. Gratuito: Muchos de los servicios ofrecidos en MXFun son gratuitos, lo que le permite a un amplio público disfrutar de entretenimiento de calidad sin costo alguno.

Perspectivas de Futuro

Las plataformas de entretenimiento en línea están en constante evolución, y MXFun no es la excepción. Con planes para expandir su biblioteca de contenido y mejorar la experiencia del usuario, el futuro parece brillante para esta comunidad. A medida que más personas busquen entretenimiento de calidad y conexiones sociales en línea, MXFun está bien posicionado para ser un líder en este espacio.

Cómo Empezar en MXFun

Iniciar en MXFun es un proceso sencillo. Aquí te dejamos algunos pasos básicos:

  1. Registro: Visita https://mxfun.org.mx/ y regístrate para crear tu cuenta. El registro te permitirá acceder a contenido exclusivo y participar en la comunidad.
  2. Explora: Navega a través de las diferentes secciones de la plataforma. Tómate tu tiempo para encontrar lo que más te interese.
  3. Conéctate: Únete a discusiones, comenta en videos y comparte tu opinión. La interacción enriquecerá tu experiencia en la plataforma.
  4. Disfruta: Haz uso de toda la variedad de contenido disponible y sumérgete en un mundo de diversión.

Conclusión

MXFun ha logrado crear un espacio único que combina entretenimiento, interacción social y accesibilidad. Con su enfoque en la diversidad de contenido y la conexión entre usuarios, es una plataforma ideal para quienes buscan escapar del día a día y disfrutar de un buen rato. Ya sea que estés buscando un video divertido para entretenerte o un juego para jugar con amigos, MXFun tiene algo para ti. No esperes más, visítalo y forma parte de esta emocionante comunidad.

Leave a Reply

Your email address will not be published. Required fields are marked *