Como criar um custom post type no wordpress

Como criar um custom post type no wordpress

Tipos de conteúdo personalizados são baste úteis quando você precisa estender o conteúdo do wordpress nesse post e vou dar dicas de como você pode criar rapidamente um custom post type no wordpres

O que é um custom post type no wordpress?

Os tipos de post personalizado WordPress, tradução de Custom Post Types, faz com que você classifique seus posts com base no conteúdo de cada um deles. No WordPress, os tipos de post padrão são Posts, Páginas, Arquivos, etc.

Como criar um custom post type?

Para criar um post type personalizado você deve usar a função register_post_type abaixo segue um exemplo onde criar um post type de nome Breed

Basta apenas adicionar o código no functions.php do seu tema ativo que o post type será criado.

if ( !function_exists('breeds_post_type') ) {

    // Register Custom Post Type "Breeds"
    function breeds_post_type() {

        $labels = array(
            'name'                  => _x('Breeds', 'Post Type General Name', 'text_domain'),
            'singular_name'         => _x('Breed', 'Post Type Singular Name', 'text_domain'),
            'menu_name'             => __('Breeds', 'text_domain'),
            'name_admin_bar'        => __('Breeds', 'text_domain'),
            'archives'              => __('Item Archives', 'text_domain'),
            'attributes'            => __('Item Attributes', 'text_domain'),
            'parent_item_colon'     => __('Parent Item:', 'text_domain'),
            'all_items'             => __('All Items', 'text_domain'),
            'add_new_item'          => __('Add New Item', 'text_domain'),
            'add_new'               => __('Add New', 'text_domain'),
            'new_item'              => __('New Item', 'text_domain'),
            'edit_item'             => __('Edit Item', 'text_domain'),
            'update_item'           => __('Update Item', 'text_domain'),
            'view_item'             => __('View Item', 'text_domain'),
            'view_items'            => __('View Items', 'text_domain'),
            'search_items'          => __('Search Item', 'text_domain'),
            'not_found'             => __('Not found', 'text_domain'),
            'not_found_in_trash'    => __('Not found in Trash', 'text_domain'),
            'featured_image'        => __('Featured Image', 'text_domain'),
            'set_featured_image'    => __('Set featured image', 'text_domain'),
            'remove_featured_image' => __('Remove featured image', 'text_domain'),
            'use_featured_image'    => __('Use as featured image', 'text_domain'),
            'insert_into_item'      => __('Insert into item', 'text_domain'),
            'uploaded_to_this_item' => __('Uploaded to this item', 'text_domain'),
            'items_list'            => __('Items list', 'text_domain'),
            'items_list_navigation' => __('Items list navigation', 'text_domain'),
            'filter_items_list'     => __('Filter items list', 'text_domain'),
        );
        $args = array(
            'label'                 => __('Breeds', 'text_domain'),
            'description'           => __('Post Type Description', 'text_domain'),
            'labels'                => $labels,
            'supports'              => array('title', 'editor', 'thumbnail', 'excerpt'),
            'taxonomies'            => array('category'),
            'hierarchical'          => false,
            'public'                => true,
            'show_ui'               => true,
            'show_in_menu'          => true,
            'menu_position'         => 5,
            'menu_icon'             => 'dashicons-buddicons-activity',
            'show_in_admin_bar'     => true,
            'show_in_nav_menus'     => true,
            'can_export'            => true,
            'has_archive'           => true,
            'exclude_from_search'   => false,
            'publicly_queryable'    => true,
            'rewrite' => array('slug' => 'breed'),
            'capability_type'       => 'post',
            'show_in_rest'          => true,
        );
        register_post_type( 'breeds', $args );
    }
    add_action( 'init', 'breeds_post_type', 0 );
}

Geradores de custom post type.

Exitem vários geradores de onde você pode gerar automaticamente os post types e incluir no functions.php

3 melhores geradores de posts personalizados.

Espero ter ajudado estou sempre aprendendo com os conteúdos conto com a ajuda de vocês nos comentários valeu 🙂

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *