/** * 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; } } Bonus Uden Indbetaling Hvordan Fungerer Det i Online Casinoer -

Bonus Uden Indbetaling Hvordan Fungerer Det i Online Casinoer

Bonus Uden Indbetaling Hvordan Fungerer Det i Online Casinoer

Bonus Uden Indbetaling i Online Casinoer

Når man taler om online gaming, er der et emne, der altid vækker interesse blandt spillere: bonus uden indbetaling. Mange spillere ser frem til at få muligheden for at spille uden at skulle indsætte penge, og det er her, at bonus uden indbetaling casino online casino tilbyder nogle af deres mest attraktive tilbud. I denne artikel vil vi udforske, hvordan disse bonusser fungerer, hvorfor de er populære, og hvilke tips der kan hjælpe dig med at maksimere din oplevelse.

Hvad er en Bonus Uden Indbetaling?

En bonus uden indbetaling er et tilbud fra online casinoer, der giver nye spillere mulighed for at spille uden at skulle indsætte egne penge. Dette kan være i form af gratis spins på spilleautomater eller en lille kontant bonus, som kan bruges til at spille forskellige casinospil. Denne type bonus er særligt populær blandt nye spillere, der ønsker at teste casinoets tilbud uden at risikere deres egne penge.

Hvordan Fungerer Bonus Uden Indbetaling?

Når du registrerer dig hos et online casino, kan du finde tilbud om bonusser uden indbetaling. For at få denne bonus skal du normalt blot oprette en konto. Når din konto er bekræftet, vil bonuspengene eller gratis spins blive krediteret automatisk. Det er værd at bemærke, at der ofte er visse betingelser knyttet til disse bonusser, som du skal være opmærksom på.

Betingelser og Vilkår

Det er meget vigtigt at læse de betingelser og vilkår, der følger med bonusser uden indbetaling. Disse vilkår kan inkludere:

  • Omsætningskrav: Dette er det beløb, du skal spille for, før du kan tage gevinster ud. For eksempel, hvis du får en bonus på 100 kr. med et omsætningskrav på 30x, skal du satse 3.000 kr. før du kan hæve gevinster.
  • Gyldighedsperiode: De fleste bonusser har en udløbsdato, så du skal være hurtig for at bruge dem.
  • Spilbegrænsninger: Nogle spil bidrager ikke lige så meget til omsætningskravene, og dette kan begrænse hvilke spil du kan spille med din bonus.

Fordele ved Bonusser Uden Indbetaling

Bonus Uden Indbetaling Hvordan Fungerer Det i Online Casinoer

Der er flere fordele ved at tage imod bonusser uden indbetaling:

  • Ingen Risiko: Du kan spille uden at skulle satse dine egne penge, hvilket giver dig mulighed for at afprøve casinoet.
  • Mere Spilletid: Med bonusser får du gratis penge eller spins, hvilket giver dig mere tid til at spille og opleve forskellige spil.
  • Muligheden for at Tjene Rigtige Penge: Selvom du ikke har indbetalt penge, kan du stadig vinde rigtige penge, hvilket gør det til en spændende oplevelse.

Sådan Maksimaliserer Du Din Bonus Uden Indbetaling

Her er nogle tips til at få mest muligt ud af din bonus uden indbetaling:

  • Vælg det Rette Casino: Gør din research, inden du vælger, hvilket casino du vil spille på. Læs anmeldelser og se på de tilgængelige bonusser.
  • Forstå Betingelserne: Sørg for, at du forstår alle betingelserne for bonusen, så du ved, hvad du kan forvente.
  • Spil Strategisk: Vælg spil, der giver dig den bedste chance for at opfylde omsætningskravene. Slotspil har ofte højere volatilitet, mens bordspil som blackjack kan have lavere huskanter.

Populære Spil til Bonusser Uden Indbetaling

Når du har modtaget din bonus, kan du være nysgerrig på, hvilke spil du skal spille. Her er nogle af de mest populære spil, der ofte favoriseres i forbindelse med bonusser:

  • Spilleautomater: De fleste casinoer tilbyder gratis spins på udvalgte spilleautomater.
  • Blackjack: Dette kortspil giver dig en god chance for at vinde, især hvis du er bekendt med strategierne.
  • Roulette: At spille med bonusser kan også være sjovt på roulette, især hvis du spiller smart.

Konklusion

Bonusser uden indbetaling i online casinoer er en fantastisk mulighed for både nye og erfarne spillere, der ønsker at udforske spilverdenen uden at tage en økonomisk risiko. Ved at vælge det rigtige casino, forstå betingelserne og spille strategisk kan du maksimere fordelene ved disse bonusser. Glem ikke at spille ansvarligt og have det sjovt – det er trods alt det, der er vigtigst!

Leave a Reply

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