Página de categoría de tipo de publicación personalizada

7 feb 2013, 22:56:53
Vistas: 23.5K
Votos: 2

No logro hacer que la página de archivo o la página de categoría funcionen correctamente.

Estoy siguiendo http://codex.wordpress.org/Template_Hierarchy#Category_display

y aún así se establece por defecto a archive.php (creo, según el diagrama) aunque lo he nombrado category-business.php

aquí está mi código:

/******************
//  Negocio
******************/

function my_custom_post_business() {
  $labels = array(
        'name'               => _x( 'negocios', 'nombre general del tipo de publicación' ),
        'singular_name'      => _x( 'negocio', 'nombre singular del tipo de publicación' ),
        'add_new'            => _x( 'Añadir Nuevo', 'libro' ),
        'add_new_item'       => __( 'Añadir Nuevo negocio' ),
        'edit_item'          => __( 'Editar negocio' ),
        'new_item'           => __( 'Nuevo negocio' ),
        'all_items'          => __( 'Todos los negocios' ),
        'view_item'          => __( 'Ver negocio' ),
        'search_items'       => __( 'Buscar negocios' ),
        'not_found'          => __( 'No se encontraron negocios' ),
        'not_found_in_trash' => __( 'No se encontraron negocios en la Papelera' ), 
        'parent_item_colon'  => '',
        'menu_name'          => 'negocios'
    );
    $args = array(
        'labels'        => $labels,
        'description'   => 'Contiene nuestros negocios y datos específicos de negocios',
        'public'        => true,
        'hierarchical'      => true,
        'show_ui'           => true,
        'show_in_nav_menus' => true,
        'menu_position' => 5,
        'supports'      => array( 'title', 'editor', 'thumbnail', 'excerpt', 'comments' ),
        'has_archive'   => true,

        //'taxonomies' => array('category'),
    );
    register_post_type( 'business', $args );

}
add_action( 'init', 'my_custom_post_business' );



/** añadir categorías para tipo de publicación personalizada */
add_action( 'init', 'build_taxonomies', 0 );
function build_taxonomies() {
    register_taxonomy( 'mycategories', 'business', array( 'hierarchical' => true, 'label' => 'Categorías de Negocios', 'query_var' => true, 'rewrite' => true ) );
}
2
Comentarios

Hola, por favor incluye todo el código relevante en la Pregunta misma, eres libre de [editarla] cuando sea necesario.

brasofilo brasofilo
7 feb 2013 23:19:29

listo. gracias por hacérmelo saber.

Lukasz Lukasz
8 feb 2013 18:08:27
Todas las respuestas a la pregunta 2
1

Como estás utilizando una taxonomía personalizada y no las categorías nativas de entradas, necesitas nombrar tu archivo taxonomy-{taxonomia}.php y en tu caso sería taxonomy-mycategories.php

Echa un vistazo a la sección de la jerarquía de plantillas para mostrar archivos de taxonomías personalizadas.

7 feb 2013 23:19:47
Comentarios

Después de crear taxonomy-{taxonomy}.php no olvides ir a la sección de enlaces permanentes y hacer clic en "guardar"

Alexander Ivashchenko Alexander Ivashchenko
30 ago 2018 23:00:18
0

Solo un rápido añadido por si alguien llega aquí como yo, intentando crear archivos de taxonomías personalizadas.

Si YA tienes taxonomías creadas y luego modificas el código de tu CPT (Custom Post Type) para permitir que tenga un archivo, necesitarás borrar esas taxonomías y limpiar tu caché. Las nuevas taxonomías funcionarán, pero por alguna razón, las antiguas generan errores 404 (¡incluso después de limpiar los enlaces permanentes!).

¡Espero que esto ayude!

13 jul 2020 13:23:23