/** * 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; } } Selbstauschluss-Tools erklärt: Ein Leitfaden für verantwortungsvolles Spielen – tejas-apartment.teson.xyz

Selbstauschluss-Tools erklärt: Ein Leitfaden für verantwortungsvolles Spielen

Selbstauschluss-Tools erklärt: Ein Leitfaden für verantwortungsvolles Spielen
Wenn Sie planen, für echtes Geld zu spielen, ist es wichtig, dass Sie die richtigen Werkzeuge nutzen, um Ihr Spielverhalten zu kontrollieren. Einige Online-Casinos wie Platinum Casino, True Fortune und Spinanga Casino bieten Selbstauschluss-Tools an, um Spielern zu helfen, eine gesunde Beziehung zum Glücksspiel zu pflegen. Wenn Sie mehr über diese Tools erfahren möchten, können Sie mehr erkunden und sich über die verschiedenen Optionen informieren.

Was sind Selbstauschluss-Tools?

Selbstauschluss-Tools sind Funktionen, die von Online-Casinos angeboten werden, um Spielern zu helfen, ihr Spielverhalten zu kontrollieren und eine gesunde Beziehung zum Glücksspiel zu pflegen. Diese Tools ermöglichen es Spielern, sich selbst von bestimmten Spielen oder dem gesamten Casino auszuschließen, um zu verhindern, dass sie zu viel Geld ausgeben oder zu viel Zeit mit Spielen verbringen.

Arten von Selbstauschluss-Tools

Es gibt verschiedene Arten von Selbstauschluss-Tools, die von Online-Casinos angeboten werden. Einige der häufigsten Tools sind Zeitbegrenzungen und Verlustlimits. Zeitbegrenzungen ermöglichen es Spielern, ihre Spielzeit zu limitieren, während Verlustlimits es Spielern ermöglichen, ihre Verluste zu begrenzen.

Zeitbegrenzungen

Viele Online-Casinos bieten Zeitbegrenzungen an, die es Spielern ermöglichen, ihre Spielzeit zu limitieren. Zum Beispiel kann ein Spieler sich entscheiden, nur 2 Stunden pro Tag zu spielen. Diese Funktion hilft Spielern, ihre Spielzeit zu kontrollieren und zu verhindern, dass sie zu viel Zeit mit Spielen verbringen.

Verlustlimits

Ein weiteres wichtiges Tool ist das Verlustlimit, das es Spielern ermöglicht, ihre Verluste zu begrenzen. Wenn ein Spieler beispielsweise 100 Euro verloren hat, wird er aus dem Spiel ausgeschlossen. Diese Funktion hilft Spielern, ihre Verluste zu kontrollieren und zu verhindern, dass sie zu viel Geld ausgeben.

Tool Beschreibung Anbieter
Zeitbegrenzungen Begrenzung der Spielzeit Platinum Casino, True Fortune
Verlustlimits Begrenzung der Verluste Spinanga Casino, Playtech
Selbstauschluss Vollständiger Ausschluss vom Casino Red Tiger Gaming, Evoplay

Vorteile von Selbstauschluss-Tools

Selbstauschluss-Tools bieten viele Vorteile für Spieler, darunter die Möglichkeit, ihr Spielverhalten zu kontrollieren und eine gesunde Beziehung zum Glücksspiel zu pflegen. Sie können auch helfen, Spielsucht zu verhindern und Spieler zu schützen, die bereits von Spielsucht betroffen sind.

Anbieter von Selbstauschluss-Tools

Einige bekannte Anbieter von Selbstauschluss-Tools sind Playtech, Red Tiger Gaming und Evoplay. Diese Anbieter bieten eine Vielzahl von Spielen an, darunter Great Blue, Buffalo Blitz und Basketball, und bieten auch Selbstauschluss-Tools an, um Spielern zu helfen, ihr Spielverhalten zu kontrollieren.

Author

Vikram Nair ist ein Experte für datengetriebene Casino-Marktforschung mit jahrelanger Erfahrung in der Analyse von Glücksspieltrends und der Entwicklung von verantwortungsvollen Spielstrategien.

FAQ

Was sind die Vorteile von Selbstauschluss-Tools?

Selbstauschluss-Tools bieten viele Vorteile, darunter die Möglichkeit, ihr Spielverhalten zu kontrollieren und eine gesunde Beziehung zum Glücksspiel zu pflegen.

mehr erkunden

Wie kann ich mich selbst von einem Online-Casino ausschließen?

Um sich selbst von einem Online-Casino auszuschließen, müssen Sie normalerweise nur auf die entsprechende Funktion auf der Website des Casinos klicken und folgen Sie den Anweisungen.

Gibt es auch Selbstauschluss-Tools für Live-Casino-Spiele?

Ja, es gibt auch Selbstauschluss-Tools für Live-Casino-Spiele, wie zum Beispiel Unlimited Blackjack und Auto Roulette von Ezugi.