WordPress custom post type d'archive-<type de poste>.php ne fonctionne pas
Nouveau sur WordPress, j'ai essayé de créer une page d'archives pour un custom post type, et quand je clique sur le lien pour localhost/websitename/wordpress/archive-event.php
j'obtiens une erreur 404. Voici mon code pour inscrire le type de poste:
add_action('init', 'event_register');
function event_register() {
$labels = array(
'name' => _x('Events', 'post type general name'),
'singular_name' => _x('Event', 'post type singular name'),
'add_new' => _x('Add New', 'event'),
'add_new_item' => __('Add New Event'),
'edit_item' => __('Edit Event'),
'new_item' => __('New Event'),
'view_item' => __('View Event'),
'search_items' => __('Search Events'),
'not_found' => __('Nothing found'),
'not_found_in_trash' => __('Nothing found in Trash'),
'parent_item_colon' => ''
);
$args = array(
'labels' => $labels,
'public' => true,
'publicly_queryable' => true,
'show_ui' => true,
'query_var' => true,
'rewrite' => array('slug' => 'event'),
'has_archive' => 'event',
'capability_type' => 'post',
'hierarchical' => false,
'menu_position' => null,
'supports' => array('title','editor','thumbnail'),
);
register_post_type( 'event' , $args );
}
J'ai essayé d'avoir rewrite => true
, has_archive => true
, bouffées de chaleur les règles de réécriture, et même l'enregistrement d'une taxonomie pour le type de poste. single-event.php
fonctionne très bien. Que faire maintenant?
- Ne vous utilisez un Thème spécifique cadre? Certains thème-cadre réécrit l'habitude de la hiérarchie un peu. Par exemple Racines
- essayez d'enregistrer les permaliens de nouveau dans la note wp-admin-panel
- Fait. Ne fonctionne toujours pas. Je me sens comme il y a quelque chose de base que je fais mal. Dois-je créer des taxonomies ou de catégories pour que cela fonctionne? J'ai créé un archive-event.php page en économisant sur la archive.php fichier, et je n'ai pas fait toutes les modifications. Je suppose que je pensais que ça fonctionnerait de la même manière que le single-event.php fichier, est-ce mal?
Vous devez vous connecter pour publier un commentaire.
Bon, j'ai eu un problème similaire au vôtre et maintenant, je crois que j'ai résolu.
Je ne suis pas sûr que mon code reflète exactement ce que vous besoin de faire, mais il devrait être assez facile de s'adapter. Note de la ré-écrire les règles pour l'URL d'archive.
functions.php
Maintenant cela me permet d'accéder aux événements de la sorte:
example.com/events/2013/07/01
Souvenez-vous d'avoir une bonne archive modèle en place, par exemple
Aussi, si vous êtes juste de l'enregistrement de votre type de poste, vous aurez besoin de vider le permalien de la cache. Pour ce faire, aller dans l'admin de WordPress et de "sauver" la structure des permaliens de nouveau.
Espère vraiment que cela aide quelqu'un!
Grâce,
Mikey.
pas sûr que cela va répondre à votre question, mais avez-vous réinitialiser votre structure des permaliens?
Si vous venez d'ajouter un custom post type, vous aurez besoin d'aller pour les Permaliens de la page et appuyez sur Enregistrer.
Espère que ça aide!
Il ressemble dans votre URL de l'exemple que vous tentez d'obtenir le véritable nom de fichier du modèle lui-même.
Mais si vous avez défini la limace à
event
vous devriez être en mesure de simplement visiter localhost/websitename/wordpress/événement