/** * 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' ) ), ); } } сайт – онлайн казино и покер рум – Вход.2299 (3) – Chambers Of Vikramaditya

сайт – онлайн казино и покер рум – Вход.2299 (3)

Покердом официальный сайт – онлайн казино и покер рум – Вход

▶️ ИГРАТЬ

Содержимое

Если вы ищете официальный сайт покердом , то вы на правом пути. Покердом – это популярное онлайн-казино и покер-рум, где вы можете играть в различные игры и выиграть реальные деньги.

Вам может быть интересно, почему Покердом является одним из лучших онлайн-казино и покер-румов. Ответ прост: Покердом предлагает широкий спектр игр, включая покер, рулетку, бинго и другие, а также обеспечивает безопасность и конфиденциальность игроков.

Если вы еще не зарегистрированы на Покердом, то это время, чтобы сделать это. Вам нужно только зарегистрироваться, и вы сможете начать играть в любые игры, которые вам понравятся.

Покердом также предлагает различные бонусы и акции, которые помогут вам начать играть и выиграть реальные деньги. Вам не нужно искать другие сайты, потому что Покердом – это официальный сайт, который обеспечивает безопасность и конфиденциальность игроков.

Также, на Покердом есть зеркало, которое позволяет игрокам играть в игры, не зависящими от блокировок. Это означает, что вы можете играть в любые игры, не беспокоясь о блокировках.

Таким образом, если вы ищете официальный сайт Покердом, то вы на правом пути. Зарегистрируйтесь сейчас и начните играть в любые игры, которые вам понравятся.

Важно! Покердом – это официальный сайт, который обеспечивает безопасность и конфиденциальность игроков. Не играйте на других сайтах, потому что они могут быть фальшивыми и не обеспечивать безопасность и конфиденциальность игроков.

Покердом Официальный Сайт – Онлайн Казино и Покер Рум – Вход

Покердом – это официальный сайт онлайн казино и покер рума, где вы можете играть в покер и другие игры с реальными игроками из всего мира. Для входа на сайт вам нужно зарегистрироваться, а затем выбрать игру, в которой вы хотите играть.

Как зарегистрироваться на Покердом

Для регистрации на Покердом вам нужно выполнить несколько простых шагов. Вам нужно выбрать тип аккаунта (игрок или дилер), ввести свои контактные данные, выбрать валюту и создать пароль. Затем вы получите доступ к играм и сможете начать играть.

Покердом предлагает широкий выбор игр, включая покер, блэкджек, рулетку и другие. Вы можете играть с реальными игроками из всего мира, что обеспечивает высокий уровень игры и конкуренции.

Покердом также предлагает различные бонусы и акции, которые помогут вам начать играть и улучшить свои навыки. Вам доступны различные типы бонусов, включая депозитные бонусы, фриспины и другие.

В целом, Покердом – это отличный выбор для игроков, которые ищут онлайн казино и покер рум, где они могут играть с реальными игроками и получать различные бонусы и акции.

Удобство и Комфорт

В Pokerdom вы можете насладиться широким спектром игр, включая покер, рулетку, слоты и другие игры. Наш сайт доступен на русском языке, что позволяет вам играть комфортно и без каких-либо сложностей.

Преимущества игры на Pokerdom

Мы предлагаем вам несколько преимуществ, которые делают наш сайт идеальным местом для игроков:

• Удобство и доступность: наш сайт доступен на русском языке, что позволяет вам играть комфортно и без каких-либо сложностей.

• Вибрационный выбор игр: на нашем сайте вы можете найти широкий спектр игр, включая покер, рулетку, слоты и другие игры.

• Безопасность: мы обеспечиваем безопасность вашей игры, используя современные технологии и системы безопасности.

• Помощь: наша команда поддержки готовы помочь вам в любое время, если у вас возникнут вопросы или проблемы.

Таким образом, Pokerdom – это идеальное место для игроков, которые ищут комфорт и удобство при игре. Мы рады видеть вас на нашем сайте!

Большой Выбор Игр и Акций

Покердом вход – это не только покер рум, но и онлайн казино, где вы можете найти огромный выбор игр и акций. Начните свой путь на покердом официальном сайте, где вы сможете играть в покер, рулетку, блэкджек, слоты и многие другие игры.

Выбор Игр

На покердом официальном сайте вы можете найти более 1000 игр, включая классические игры, такие как покер, рулетка, блэкджек, а также новые и инновационные игры, такие как слоты, карточные игры и многое другое. Все игры на покердом официальном сайте разработаны с использованием последних технологий и обеспечивают высокое качество и безопасность игры.

Акции и Бонусы

Покердом официальный сайт предлагает множество акций и бонусов, чтобы помочь вам начать свой путь в онлайн казино. Вы можете получить бонусы на депозит, бесплатные спины, бесплатные игры и многое другое. Некоторые из наших акций и бонусов включают:

Бонусы на депозит до 100%

Бесплатные спины до 100%

Бесплатные игры до 50%

Выигрышные спины до 50%

Покердом официальный сайт – это лучшее место для игроков, которые ищут большой выбор игр и акций. Начните свой путь на нашем официальном сайте и наслаждайтесь игрой!

Безопасность и Надежность

Мы понимаем, что безопасность и надежность – это ключевые факторы для успешной игры. Поэтому мы сделали все, чтобы обеспечить безопасность вашего игрового процесса.

  • Шифрование данных: все передаваемые нами данные шифруются для обеспечения безопасности вашей личной информации.
  • Проверка и подтверждение: мы проверяем и подтверждаем каждую транзакцию, чтобы обеспечить безопасность вашего счета.
  • Защита от мошенников: мы используем современные технологии для защиты от мошенников и других злоумышленников.

Мы также обеспечиваем надежность нашего сайта, чтобы вы могли играть с уверенностью.

  • Мы используем только проверенные и надежные сертификаты SSL для обеспечения безопасности вашего соединения.
  • Наш сайт регулярно обновляется, чтобы обеспечить безопасность и стабильность вашего игрового процесса.
  • Мы сотрудничаем с ведущими игроками на рынке, чтобы обеспечить безопасность и надежность вашего игрового процесса.
  • Покердом вход – это не только доступ к играм, но и уверенность в том, что ваше время и деньги безопасны. Мы сделали все, чтобы обеспечить безопасность вашего игрового процесса, и мы продолжаем работать над улучшением безопасности и надежности нашего сайта.

    Leave a Comment

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