/** * 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; } } Kompletný Zoznam Kasín Objavte Svet Hrania Online! -

Kompletný Zoznam Kasín Objavte Svet Hrania Online!

Kompletný Zoznam Kasín: Objavte Svet Hrania Online!

V dnešnej dobe je online hranie veľmi populárne a ponúka široký výber možností pre hráčov. Ak hľadáte zoznam kasín zahranicne kasina, ste na správnom mieste. V tejto článku vám predstavíme rôzne typy kasín, ich výhody a ako si vybrať to správne pre vás.

Ako zvoliť správne online kasíno?

Výber správneho online kasína môže byť náročný, keďže existuje veľké množstvo možností, ktoré sú k dispozícii. Tu je niekoľko tipov, ako si vybrať to najvhodnejšie kasíno pre vaše potreby:

  • Licencie a regulácia: Uistite sa, že kasíno, ktoré vyberáte, má platné licencie. Licencované kasína sú podrobené prísnym kontrole a zaisťujú, že hráči sú chránení.
  • Zákaznícka podpora: Keďže online hranie môže priniesť rôzne otázky a problémy, dobrá zákaznícka podpora je nevyhnutná. Skontrolujte, či kasíno ponúka dostupné možnosti podpory, ako sú živé chaty alebo e-mail.
  • Variety hier: Rôzne hry ponúkajú rôzne zážitky, takže je dôležité vybrať si kasíno, ktoré ponúka rozmanité možnosti. Od automatov po stolové hry, výber by mal byť široký.
  • Bonusy a promo akcie: Mnohé online kasína ponúkajú atraktívne bonusy a p

    romo akcie pre nových hráčov. Je dôležité si prečítať podmienky týchto bonusov, aby ste vedeli, aké sú vaše šance na výhru.

Typy online kasín

Existuje niekoľko typov online kasín, ktoré si môžete vybrať. Tu sú najbežnejšie:

1. Tradičné online kasína

Tieto kasína fungujú podobne ako kamenné kasína, len sú dostupné online. Môžete sa prihlásiť a hrať rôzne hry od vývoja hier v reálnom čase.

2. Kasína s bonusmi bez vkladu

Tieto kasína ponúkajú hráčom možnosť získať bonusy bez toho, aby museli uskutočniť prvý vklad. To je skvelý spôsob, ako vyskúšať kasíno, bez toho, aby ste riskovali peniaze.

3. Mobilné kasína

V súčasnosti je veľmi populárne mobilné hranie. Mobilné kasína ponúkajú prístup k hrám prostredníctvom smartfónov a tabletov, čo umožňuje hráčom využívať zábavu kedykoľvek a kdekoľvek.

Bezpečnosť a zodpovedné hranie

Bezpečnosť online hrania je veľmi dôležitá. Je potrebné dbať na osobné údaje a finančné informácie. Používajte silné a unikátne heslá a zabezpečte si svoj účet. Zodpovedné hranie je dôležité pre ochranu vás ako hráča. Stanovte si limity a dodržiavajte ich, aby ste predišli problémom s nadmerným hraním.

Najlepšie zahraničné kasína

Na trhu sú aj zahraničné kasína, ktoré môžu ponúknuť skvelé zážitky a výhody. Tieto kasína sa často vyznačujú vysokými bonusmi a širokou škálou hier. Je dôležité si overiť ich licencie a reputáciu pred začatím hrania.

Hlavné výhody online kasín

Pohodlie: Môžete hrať z pohodlia vášho domova alebo na cestách, bez potreby cestovať do kamenného kasína.
Široký výber hier: Online kasína ponúkajú tisíce hier, od klasických automatov po moderné živé kasínové hry.
Vyššie bonusy: Online kasína zvyčajne ponúkajú lepšie bonusy a promo akcie v porovnaní s fyzickými kasínami.
Rôzne platobné možnosti: Mnohé online kasína umožňujú rôzne možnosti vkladov a výberov, čo zjednodušuje proces hrania.

Na záver

Online kasína ponúkajú skvelé možnosti pre všetkých hráčov. S naším zoznamom kasín a tipmi na výber správneho kasína sa môžete do sveta online hrania pustiť s dôverou. Nezabudnite hrať zodpovedne a užívať si zábavu, ktorú toto vzrušujúce odvetvie ponúka.