No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Creando un Custom Post Type

10/13
Recursos

Aportes 10

Preguntas 8

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

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");

Estos cursos de wp no me han gustado mucho!!
馃槙

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 鈥減roducto鈥 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/

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

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 鈥楶osts鈥 / 鈥楶ages鈥.

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

Extensi贸n para instalar Lorem Ipsum en Chrome link

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

Apuntes

Creando un Custom Post Type en聽WordPress

Un Custom Post Type en WordPress es una forma de crear tipos de contenido personalizados, como un portafolio o un producto. A continuaci贸n, se explican los pasos para crear un Custom Post Type en un tema de WordPress.

register_post_type

Para crear un Custom Post Type en WordPress, se utiliza la funci贸n聽register_post_type聽en el archivo聽functions.php聽del tema.

function my_theme_custom_post_type() {
    $labels = array(
        'name'               => __( 'Productos', 'my-theme' ),
        'singular_name'      => __( 'Producto', 'my-theme' ),
        'add_new'            => __( 'Agregar Nuevo', 'my-theme' ),
        'add_new_item'       => __( 'Agregar Nuevo Producto', 'my-theme' ),
        'edit_item'          => __( 'Editar Producto', 'my-theme' ),
        'new_item'           => __( 'Nuevo Producto', 'my-theme' ),
        'view_item'          => __( 'Ver Producto', 'my-theme' ),
        'search_items'       => __( 'Buscar Productos', 'my-theme' ),
        'not_found'          => __( 'No se encontraron Productos', 'my-theme' ),
        'not_found_in_trash' => __( 'No se encontraron Productos en la papelera', 'my-theme' ),
        'parent_item_colon'  => '',
        'menu_name'          => __( 'Productos', 'my-theme' )
    );

    $args = array(
        'labels'             => $labels,
        'public'             => true,
        'publicly_queryable' => true,
        'show_ui'            => true,
        'show_in_menu'       => true,
        'query_var'          => true,
        'rewrite'            => array( 'slug' => 'productos' ),
        'capability_type'    => 'post',
        'has_archive'        => true,
        'hierarchical'       => false,
        'menu_position'      => 5,
        'supports'           => array( 'title', 'editor', 'thumbnail', 'excerpt' )
    );

    register_post_type( 'producto', $args );
}
add_action( 'init', 'my_theme_custom_post_type' );

En este ejemplo, se crea un Custom Post Type llamado聽producto. Se definen las etiquetas de los campos, la visibilidad y el soporte de caracter铆sticas. Tambi茅n se definen las opciones de reescritura de URL y la ubicaci贸n en el men煤 de administraci贸n.

add_action(鈥渋nit鈥)

Para asegurarse de que el Custom Post Type se registre correctamente, se utiliza la funci贸n聽add_action聽para llamar a la funci贸n聽my_theme_custom_post_type聽en el gancho聽init.

add_action( 'init', 'my_theme_custom_post_type' );

Conclusi贸n

Crear un Custom Post Type en WordPress es una tarea sencilla que se puede realizar utilizando la funci贸n聽register_post_type聽y el gancho聽init. Al agregar el c贸digo correspondiente en el archivo聽functions.php, se puede crear un tipo de contenido personalizado en el sitio web de WordPress. Al utilizar Custom Post Types, se pueden agregar f谩cilmente nuevos tipos de contenido y personalizar a煤n m谩s el sitio web.

Si alguien tiene problema para poder cargar la imagen del producto, es decir habilitar el Featuring Imagen. prueben con esto: `add_theme_support('post-thumbnails');` `add_post_type_support( 'producto', 'thumbnail' );` Antes de la funcion` 聽`