No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Aprende todo un fin de semana sin pagar una suscripción 🔥

Aprende todo un fin de semana sin pagar una suscripción 🔥

Regístrate

Comienza en:

5D
3H
14M
33S

Creando un Custom Post Type

10/13
Recursos

Aportes 7

Preguntas 4

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

Post-type.
Gestionar el contenido del sitio web.
Generar un custom post-type
Nobrar los post-type en singular es un estándar.

function plz_add_custom_post_type(){

    $labels = array(
        'name' => 'Producto',
        'singular_name' => 'Producto',
        'all_items' => 'Todos los productos',
        'add_new' => 'Añadir producto'
    );
        
    $args = array(
        'labels'             => $labels,
        'description'        => 'Productos para listar en un catálogos.',
        'public'             => true,
        'publicly_queryable' => true,
        'show_in_menu'       => true,
        'query_var'          => true,
        'rewrite'            => array( 'slug' => 'producto' ),
        'capability_type'    => 'post',
        'has_archive'        => true,
        'hierarchical'       => false,
        'menu_position'      => 5,
        'supports'           => array( 'title', 'editor', 'author', 'thumbnail' ),
        'taxonomies'         => array('category'),
        'show_in_rest'       => true,
        'menu_icon'          => 'dashicons-cart'
    );


    register_post_type('producto',$args);
}

add_action("init","plz_add_custom_post_type");

Les comparto este generado de código para WordPress en el cual también entran los posts type https://generatewp.com/

Custom post type

Los Custom Post Types son tipos de entrada personalizados que puedes agregar a tu WordPress.

Cabe decir que los CPT deben ser implementados en plugins no en los temas.

  • Código para crear un Post type de “producto” functions.php
function plz_add_custom_post_type(){

    $labels = array(
        'name' => 'Producto',
        'singular_name' => 'Producto',
        'all_items' => 'Todos los productos',
        'add_new' => 'Añadir producto'
    );
        
    $args = array(
        'labels'             => $labels,
        'description'        => 'Productos para listar en un catálogos.',
        'public'             => true,
        'publicly_queryable' => true,
        'show_in_menu'       => true,
        'query_var'          => true,
        'rewrite'            => array( 'slug' => 'producto' ),
        'capability_type'    => 'post',
        'has_archive'        => true,
        'hierarchical'       => false,
        'menu_position'      => 5,
        'supports'           => array( 'title', 'editor', 'author', 'thumbnail' ),
        'taxonomies'         => array('category'),
        'show_in_rest'       => true,
        'menu_icon'          => 'dashicons-cart'
    );

    register_post_type('
    ',$args);
}

add_action("init","plz_add_custom_post_type");


Plugin para crear CPT: https://wordpress.org/plugins/custom-post-type-ui/

Estos cursos de wp no me han gustado mucho!!
😕

10. Creando un Custom Post Type

Como convención los Custom Post Types (CPT), deben llevar un nombre en singular, por ejemplo producto.

Comparto el código que hicimos en clase en el archivo functions.php:

function arudope_add_custom_post_type(){

    $labels = array(
        'name' => 'Producto',
        'singular_name' => 'Producto',
        'all_items' => 'Todos los productos',
        'add_new' => 'Añadir producto',
    );

    $args = array(
        'labels' => $labels,
        'description' => 'Productos para listar en un catálogo.',
        'public'             => true,
        'publicly_queryable' => true,
        'show_in_menu'       => true,
        'query_var'          => true,
        'rewrite'            => array( 'slug' => 'producto' ),
        'capability_type'    => 'post',
        'has_archive'        => true,
        'hierarchical'       => false,
        'menu_position'      => 5,
        'supports'           => array( 'title', 'editor', 'author', 'thumbnail' ),
        'taxonomies'         => array('category'),
        'show_in_rest'       => true,
        'menu_icon'          => 'dashicons-cart'
    );

    register_post_type('producto', $args);
}

add_action("init", "arudope_add_custom_post_type");

Refencias documentación:

https://developer.wordpress.org/reference/functions/get_post_type_labels/#source

https://developer.wordpress.org/reference/functions/register_post_type/#menu_icon

https://developer.wordpress.org/resource/dashicons/#cart

El name debe estar en plural: Productos.

name – General name for the post type, usually plural. The same and overridden by $post_type_object->label. Default is ‘Posts’ / ‘Pages’.

dentro de este recurso: https://generatewp.com/post-type/ también se pueden apreciar las diferentes características del custom post type