web-dev-qa-db-fra.com

Page d'archive de type de message personnalisé

J'ai une catégorie sur mon site Web appelée "profils". Je suis en train de déplacer cette catégorie vers un type de publication personnalisé appelé "profils".

Mon problème est que je ne parviens pas à afficher la page d'archive pour ce type d'article personnalisé. Lorsque je vais à l'URL mywebsite.com/profiles, il me faut une seule page de publication pour une publication dans la catégorie Profils.

J'ai inclus has_archive = true; dans mon functions.php

Je n'ai pas eu de problème pour créer une page d'archive pour un autre type de publication personnalisé que j'avais créé sur le même site Web, alors je ne sais vraiment pas pourquoi cela ne fonctionne pas cette fois.

Un conseil serait le plus apprécié?

add_action( 'init', 'profile_custom_init' );

/* Here's how to create your customized labels */
function profile_custom_init() {
$labels = array(
    'name' => _x( 'Profiles', 'post type general name' ), // Tip: _x('') is used for localization
    'singular_name' => _x( 'Profile', 'post type singular name' ),
    'add_new' => _x( 'Add New', 'Profile' ),
    'add_new_item' => __( 'Add Profile' ),
    'edit_item' => __( 'Edit Profile' ),
    'new_item' => __( 'New Profile' ),
    'view_item' => __( 'View Profile' ),
    'search_items' => __( 'Search Profile' ),
    'not_found' =>  __( 'No Profile found' ),
    'not_found_in_trash' => __( 'No Profile found in Trash' ),
    'parent_item_colon' => ''
);

// Create an array for the $args
$args = array( 'labels' => $labels, /* NOTICE: the $labels variable is used here... */
    'public' => true,
    'publicly_queryable' => true,
    'has_archive' => true,
    'show_ui' => true,
    'query_var' => true,
    'rewrite' => true,
    'capability_type' => 'post',
    'hierarchical' => false,
    'menu_position' => 10,
    'supports' => array( 'title', 'editor','thumbnail', 'excerpt', 'custom-fields' ),
        'taxonomies' => array('category')
    ); 

    register_post_type( 'profile', $args ); /* Register it and move on */
}
10
stemie
  1. Accédez à Paramètres -> permaliens
  2. Changez la structure de permalink en Default
  3. Enregistrer les paramètres
  4. Modification de la structure personnalisée ou du nom du message (ou de toute autre structure)
  5. Enregistrer les paramètres

Cela va ré-écrire le fichier htaccess et ensuite la ré-écriture devrait fonctionner.


Si la solution ci-dessus ne fonctionne pas, cela devrait être lié à la configuration du serveur.

Aapache2

Exécuter: a2enmod rewrite && service Apache2 reload

Nginx

Suivez: https://do.co/2LjCF8r


J'espère que cela vous fera gagner du temps.

14
Nikhil

L'enregistrement de la structure de permalien a semblé résoudre le problème. Merci pour le tuyau Mike et Vinod.

3
stemie