/** * REST API: WP_REST_Post_Types_Controller class * * @package WordPress * @subpackage REST_API * @since 4.7.0 */ /** * Core class to access post types via the REST API. * * @since 4.7.0 * * @see WP_REST_Controller */ class WP_REST_Post_Types_Controller extends WP_REST_Controller { /** * Constructor. * * @since 4.7.0 */ public function __construct() { $this->namespace = 'wp/v2'; $this->rest_base = 'types'; } /** * Registers the routes for post types. * * @since 4.7.0 * * @see register_rest_route() */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base, array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), 'args' => $this->get_collection_params(), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, '/' . $this->rest_base . '/(?P[\w-]+)', array( 'args' => array( 'type' => array( 'description' => __( 'An alphanumeric identifier for the post type.' ), 'type' => 'string', ), ), array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_item' ), 'permission_callback' => '__return_true', 'args' => array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); } /** * Checks whether a given request has permission to read types. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function get_items_permissions_check( $request ) { if ( 'edit' === $request['context'] ) { $types = get_post_types( array( 'show_in_rest' => true ), 'objects' ); foreach ( $types as $type ) { if ( current_user_can( $type->cap->edit_posts ) ) { return true; } } return new WP_Error( 'rest_cannot_view', __( 'Sorry, you are not allowed to edit posts in this post type.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Retrieves all public post types. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_items( $request ) { if ( $request->is_method( 'HEAD' ) ) { // Return early as this handler doesn't add any response headers. return new WP_REST_Response( array() ); } $data = array(); $types = get_post_types( array( 'show_in_rest' => true ), 'objects' ); foreach ( $types as $type ) { if ( 'edit' === $request['context'] && ! current_user_can( $type->cap->edit_posts ) ) { continue; } $post_type = $this->prepare_item_for_response( $type, $request ); $data[ $type->name ] = $this->prepare_response_for_collection( $post_type ); } return rest_ensure_response( $data ); } /** * Retrieves a specific post type. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_item( $request ) { $obj = get_post_type_object( $request['type'] ); if ( empty( $obj ) ) { return new WP_Error( 'rest_type_invalid', __( 'Invalid post type.' ), array( 'status' => 404 ) ); } if ( empty( $obj->show_in_rest ) ) { return new WP_Error( 'rest_cannot_read_type', __( 'Cannot view post type.' ), array( 'status' => rest_authorization_required_code() ) ); } if ( 'edit' === $request['context'] && ! current_user_can( $obj->cap->edit_posts ) ) { return new WP_Error( 'rest_forbidden_context', __( 'Sorry, you are not allowed to edit posts in this post type.' ), array( 'status' => rest_authorization_required_code() ) ); } $data = $this->prepare_item_for_response( $obj, $request ); return rest_ensure_response( $data ); } /** * Prepares a post type object for serialization. * * @since 4.7.0 * @since 5.9.0 Renamed `$post_type` to `$item` to match parent class for PHP 8 named parameter support. * * @param WP_Post_Type $item Post type object. * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response Response object. */ public function prepare_item_for_response( $item, $request ) { // Restores the more descriptive, specific name for use within this method. $post_type = $item; // Don't prepare the response body for HEAD requests. if ( $request->is_method( 'HEAD' ) ) { /** This filter is documented in wp-includes/rest-api/endpoints/class-wp-rest-post-types-controller.php */ return apply_filters( 'rest_prepare_post_type', new WP_REST_Response( array() ), $post_type, $request ); } $taxonomies = wp_list_filter( get_object_taxonomies( $post_type->name, 'objects' ), array( 'show_in_rest' => true ) ); $taxonomies = wp_list_pluck( $taxonomies, 'name' ); $base = ! empty( $post_type->rest_base ) ? $post_type->rest_base : $post_type->name; $namespace = ! empty( $post_type->rest_namespace ) ? $post_type->rest_namespace : 'wp/v2'; $supports = get_all_post_type_supports( $post_type->name ); $fields = $this->get_fields_for_response( $request ); $data = array(); if ( rest_is_field_included( 'capabilities', $fields ) ) { $data['capabilities'] = $post_type->cap; } if ( rest_is_field_included( 'description', $fields ) ) { $data['description'] = $post_type->description; } if ( rest_is_field_included( 'hierarchical', $fields ) ) { $data['hierarchical'] = $post_type->hierarchical; } if ( rest_is_field_included( 'has_archive', $fields ) ) { $data['has_archive'] = $post_type->has_archive; } if ( rest_is_field_included( 'visibility', $fields ) ) { $data['visibility'] = array( 'show_in_nav_menus' => (bool) $post_type->show_in_nav_menus, 'show_ui' => (bool) $post_type->show_ui, ); } if ( rest_is_field_included( 'viewable', $fields ) ) { $data['viewable'] = is_post_type_viewable( $post_type ); } if ( rest_is_field_included( 'labels', $fields ) ) { $data['labels'] = $post_type->labels; } if ( rest_is_field_included( 'name', $fields ) ) { $data['name'] = $post_type->label; } if ( rest_is_field_included( 'slug', $fields ) ) { $data['slug'] = $post_type->name; } if ( rest_is_field_included( 'icon', $fields ) ) { $data['icon'] = $post_type->menu_icon; } if ( rest_is_field_included( 'supports', $fields ) ) { $data['supports'] = $supports; } if ( rest_is_field_included( 'taxonomies', $fields ) ) { $data['taxonomies'] = array_values( $taxonomies ); } if ( rest_is_field_included( 'rest_base', $fields ) ) { $data['rest_base'] = $base; } if ( rest_is_field_included( 'rest_namespace', $fields ) ) { $data['rest_namespace'] = $namespace; } if ( rest_is_field_included( 'template', $fields ) ) { $data['template'] = $post_type->template ?? array(); } if ( rest_is_field_included( 'template_lock', $fields ) ) { $data['template_lock'] = ! empty( $post_type->template_lock ) ? $post_type->template_lock : false; } $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; $data = $this->add_additional_fields_to_object( $data, $request ); $data = $this->filter_response_by_context( $data, $context ); // Wrap the data in a response object. $response = rest_ensure_response( $data ); if ( rest_is_field_included( '_links', $fields ) || rest_is_field_included( '_embedded', $fields ) ) { $response->add_links( $this->prepare_links( $post_type ) ); } /** * Filters a post type returned from the REST API. * * Allows modification of the post type data right before it is returned. * * @since 4.7.0 * * @param WP_REST_Response $response The response object. * @param WP_Post_Type $post_type The original post type object. * @param WP_REST_Request $request Request used to generate the response. */ return apply_filters( 'rest_prepare_post_type', $response, $post_type, $request ); } /** * Prepares links for the request. * * @since 6.1.0 * * @param WP_Post_Type $post_type The post type. * @return array Links for the given post type. */ protected function prepare_links( $post_type ) { return array( 'collection' => array( 'href' => rest_url( sprintf( '%s/%s', $this->namespace, $this->rest_base ) ), ), 'https://api.w.org/items' => array( 'href' => rest_url( rest_get_route_for_post_type_items( $post_type->name ) ), ), ); } /** * Retrieves the post type's schema, conforming to JSON Schema. * * @since 4.7.0 * @since 4.8.0 The `supports` property was added. * @since 5.9.0 The `visibility` and `rest_namespace` properties were added. * @since 6.1.0 The `icon` property was added. * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => 'type', 'type' => 'object', 'properties' => array( 'capabilities' => array( 'description' => __( 'All capabilities used by the post type.' ), 'type' => 'object', 'context' => array( 'edit' ), 'readonly' => true, ), 'description' => array( 'description' => __( 'A human-readable description of the post type.' ), 'type' => 'string', 'context' => array( 'view', 'edit' ), 'readonly' => true, ), 'hierarchical' => array( 'description' => __( 'Whether or not the post type should have children.' ), 'type' => 'boolean', 'context' => array( 'view', 'edit' ), 'readonly' => true, ), 'viewable' => array( 'description' => __( 'Whether or not the post type can be viewed.' ), 'type' => 'boolean', 'context' => array( 'edit' ), 'readonly' => true, ), 'labels' => array( 'description' => __( 'Human-readable labels for the post type for various contexts.' ), 'type' => 'object', 'context' => array( 'edit' ), 'readonly' => true, ), 'name' => array( 'description' => __( 'The title for the post type.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'slug' => array( 'description' => __( 'An alphanumeric identifier for the post type.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'supports' => array( 'description' => __( 'All features, supported by the post type.' ), 'type' => 'object', 'context' => array( 'edit' ), 'readonly' => true, ), 'has_archive' => array( 'description' => __( 'If the value is a string, the value will be used as the archive slug. If the value is false the post type has no archive.' ), 'type' => array( 'string', 'boolean' ), 'context' => array( 'view', 'edit' ), 'readonly' => true, ), 'taxonomies' => array( 'description' => __( 'Taxonomies associated with post type.' ), 'type' => 'array', 'items' => array( 'type' => 'string', ), 'context' => array( 'view', 'edit' ), 'readonly' => true, ), 'rest_base' => array( 'description' => __( 'REST base route for the post type.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'rest_namespace' => array( 'description' => __( 'REST route\'s namespace for the post type.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'visibility' => array( 'description' => __( 'The visibility settings for the post type.' ), 'type' => 'object', 'context' => array( 'edit' ), 'readonly' => true, 'properties' => array( 'show_ui' => array( 'description' => __( 'Whether to generate a default UI for managing this post type.' ), 'type' => 'boolean', ), 'show_in_nav_menus' => array( 'description' => __( 'Whether to make the post type available for selection in navigation menus.' ), 'type' => 'boolean', ), ), ), 'icon' => array( 'description' => __( 'The icon for the post type.' ), 'type' => array( 'string', 'null' ), 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'template' => array( 'type' => array( 'array' ), 'description' => __( 'The block template associated with the post type.' ), 'readonly' => true, 'context' => array( 'view', 'edit', 'embed' ), ), 'template_lock' => array( 'type' => array( 'string', 'boolean' ), 'enum' => array( 'all', 'insert', 'contentOnly', false ), 'description' => __( 'The template_lock associated with the post type, or false if none.' ), 'readonly' => true, 'context' => array( 'view', 'edit', 'embed' ), ), ), ); $this->schema = $schema; return $this->add_additional_fields_schema( $this->schema ); } /** * Retrieves the query params for collections. * * @since 4.7.0 * * @return array Collection parameters. */ public function get_collection_params() { return array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ); } } Kasino Mostbet Prvodce registrac.1667 – Chambers Of Vikramaditya

Kasino Mostbet Prvodce registrac.1667

Kasino Mostbet – Průvodce registrací

V dnešním světě online kasin je Mostbet jedním z nejpopulárnějších a nejúspěšnějších kasin online. S jeho širokou nabídkou her a bonusů, je těžké najít lepší volbu pro své kasinové hry. Pokud chcete začít hrát v Mostbetu, musíte se nejprve zaregistrovat. V tomto průvodci se budeme zabývat procesem registrace v Mostbetu a všemi potřebnými informacemi, které potřebujete znát.

Mostbet Casino Bonus

Mostbet nabízí širokou škálu bonusů pro nové i stávající hráče. Od vítacího bonusu až po pravidelné bonusy a slevy, je těžké najít lepší nabídku. Pokud chcete získat více z vašich her, je registrace v Mostbetu prvním krokem.

Registrace v Mostbetu

Registrace v Mostbetu je mostbet promo code poměrně jednoduchý proces. Stačí kliknout na tlačítko “Zaregistrovat” a vyplnit formulář s nezbytnými údaji. Po vyplnění formuláře musíte kliknout na tlačítko “Odeslat” a váš účet bude vytvořen. Po registraci můžete začít hrát a využívat všechny dostupné bonusy.

Mostbet Registrace

Mostbet Registrace je proces, který vám umožní začít hrát v Mostbetu. Pokud chcete začít hrát, musíte se nejprve zaregistrovat. Registrace je poměrně jednoduchý proces a nevyžaduje žádné speciální znalosti. Stačí kliknout na tlačítko “Zaregistrovat” a vyplnit formulář s nezbytnými údaji.

Mostbet CZ

Mostbet CZ je česká verze Mostbetu, která je určena pro hráče z České republiky. Tato verze Mostbetu nabízí stejné hry a bonusy jako hlavní verze, ale je přizpůsobena pro hráče z České republiky. Pokud chcete hrát v Mostbetu, můžete si vybrat mezi hlavní verzou a českou verzou.

Mostbet Online

Mostbet Online je online kasino, které nabízí širokou škálu her a bonusů. Pokud chcete hrát online, je Mostbet Online ideálním výběrem. S jeho širokou nabídkou her a bonusů, je těžké najít lepší volbu pro své kasinové hry.

Mostbet Casino

Mostbet Casino je online kasino, které nabízí širokou škálu her a bonusů. Pokud chcete hrát v online kasinu, je Mostbet Casino ideálním výběrem. S jeho širokou nabídkou her a bonusů, je těžké najít lepší volbu pro své kasinové hry.

Mostbet

Mostbet je online kasino, které nabízí širokou škálu her a bonusů. Pokud chcete hrát v online kasinu, je Mostbet ideálním výběrem. S jeho širokou nabídkou her a bonusů, je těžké najít lepší volbu pro své kasinové hry.

Začínáme s registrací

Registrace na Mostbet Casino je prvním krokem k tomu, aby se stal členem této populární kasina online. Pokud jste dosud neregistrovali, je čas začít! Mostbet Casino Bonus je dostupný všem novým hrájům, kteří se rozhodnou zaregistrovat se.

Registrace je poměrně jednoduchý proces, který by měl být dokončen do 5 minut. V první fázi je nutné vyplnit formulář registrace, kde je nutné uvést osobní údaje, jako je jméno, příjmení, emailová adresa a heslo. Po vyplnění formuláře je nutné kliknout na tlačítko “Registrovat se”, aby se proces dokončil.

Po registraci je nutné provést verifikaci účtu, aby se zajistilo, že váš účet je legitimní. To lze provést prostřednictvím emailové adresy nebo prostřednictvím mobilního telefonu. Po úspěšné verifikaci účtu je možné začít hrát a využívat všechny funkce Mostbet Casino.

Mostbet Casino Bonus je dostupný všem novým hrájům, kteří se rozhodnou zaregistrovat se. Tento bonus je určen k tomu, aby hráči mohli začít hrát a zkoušet kasino bez úplatku. Mostbet Casino Bonus je dostupný všem hrájům, kteří se rozhodnou zaregistrovat se a provést první vklad.

Přihlašování a ověření účtu

Přihlašování se na stránce Casino Mostbet je jednoduché a rychlé. Stačí kliknout na tlačítko “Zaregistrovat” a vyplnit formulář s požadovanými údaji. Po vyplnění formuláře klikněte na tlačítko “Registrovat” a váš účet bude vytvořen.

Přihlašování účtu

  • Přihlašování se na stránce Casino Mostbet
  • Vyplňte formulář s požadovanými údaji
  • Klikněte na tlačítko “Registrovat” a váš účet bude vytvořen

Po vytvoření účtu je důležité ověření účtu. K tomuto účelu je možné použít e-mail nebo SMS. Po ověření účtu můžete začít hrát a využívat všechny funkce Casino Mostbet.

  • Ověření účtu je důležité pro bezpečnost vašeho účtu
  • K tomuto účelu je možné použít e-mail nebo SMS
  • Po ověření účtu můžete začít hrát a využívat všechny funkce Casino Mostbet
  • Mostbet Casino Bonus je další výhodou registrace na stránce Casino Mostbet. Bonus je dostupný všem novým hráčům a lze jej použít k hraní na většině her.

    • Mostbet Casino Bonus je dostupný všem novým hráčům
    • Lze jej použít k hraní na většině her

    Škrty a podminky registrace

    Registrace na Mostbet online casino je jednoduchý proces, který lze dokončit v několika krocích. Předtím, než začnete, je však dobré znát některé škrty a podminky, které jsou důležité pro úspěšné dokončení registrace.

    Prvním krokem je vybrat si vhodnou variantu registrace. Mostbet nabízí dvě možnosti: klasickou registraci a registraci přes sociální síť. Klasická registrace je vhodná pro ty, kteří již mají účet na Mostbet, a chtějí si vytvořit nový účet. Registrace přes sociální síť je vhodná pro ty, kteří již mají účet na sociální síti a chtějí si vytvořit účet na Mostbet.

    Škrty registrace

    Škrty registrace jsou důležité pro úspěšné dokončení registrace. Některé škrty, které je dobré znát, jsou:

    Škrty pro klasickou registraci: e-mailová adresa, heslo, jméno a příjmení, datum narození a další kontaktní informace.

    Škrty pro registraci přes sociální síť: heslo, jméno a příjmení, datum narození a další kontaktní informace.

    Je důležité poznamenat, že Mostbet vyžaduje ověření identity při registraci. To znamená, že musíte poskytnout některé dokumenty, které potvrzují vaši identitu, jako je například pas nebo řidičské právo.

    Mostbet také nabízí několik možností pro ověření identity, včetně ověření přes sociální síť nebo prostřednictvím mobilního telefonu. Je důležité poznamenat, že některé škrty, jako je například heslo, musí být splněny předtím, než se můžete přihlásit.

    Je důležité poznamenat, že Mostbet má své vlastní pravidla a podmínky, které jsou důležité pro hráče. Proto je dobré číst si pravidla a podmínky předtím, než začnete hrát.

    Mostbet je online casino, které nabízí širokou škálu her a bonusů. Proto je dobré znát některé škrty a podminky, které jsou důležité pro hráče. Registrace je jednoduchý proces, který lze dokončit v několika krocích.