get_all_post_type_supports example


    protected function _prepare_post_type( $post_type$fields ) {
        $_post_type = array(
            'name'         => $post_type->name,
            'label'        => $post_type->label,
            'hierarchical' => (bool) $post_type->hierarchical,
            'public'       => (bool) $post_type->public,
            'show_ui'      => (bool) $post_type->show_ui,
            '_builtin'     => (bool) $post_type->_builtin,
            'has_archive'  => (bool) $post_type->has_archive,
            'supports'     => get_all_post_type_supports( $post_type->name ),
        );

        if ( in_array( 'labels', $fields, true ) ) {
            $_post_type['labels'] = (array) $post_type->labels;
        }

        if ( in_array( 'cap', $fields, true ) ) {
            $_post_type['cap']          = (array) $post_type->cap;
            $_post_type['map_meta_cap'] = (bool) $post_type->map_meta_cap;
        }

        

    public function prepare_item_for_response( $item$request ) {
        // Restores the more descriptive, specific name for use within this method.         $post_type  = $item;
        $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;
        }

        
Home | Imprint | This part of the site doesn't use cookies.