web-dev-qa-db-fra.com

Modèle de type de message personnalisé - Archive

J'ai un type de message personnalisé, appelé "travail", et j'ai les modèles suivants dans mon thème:

  • single-job.php (fonctionne bien, affiche un travail comme prévu)

  • archives-job.php (n'est pas reconnu?)

  • archives-current.php (également non reconnu)

  • archives.php (n'est pas reconnu non plus?)

  • index.php (la page d'archives utilise cette page)

Voici comment j'ai enregistré mon type de contenu personnalisé dans functions.php:

add_action( 'init', 'create_jobs' );
function create_jobs() {
  $labels = array(
    'name' => _x('Jobs', 'post type general name'),
    'singular_name' => _x('Job', 'post type singular name'),
    'add_new' => _x('Add New', 'Job'),
    'add_new_item' => __('Add New Job'),
    'edit_item' => __('Edit Job'),
    'new_item' => __('New Job'),
    'view_item' => __('View Job'),
    'search_items' => __('Search Jobs'),
    'not_found' =>  __('No Jobs found'),
    'not_found_in_trash' => __('No Jobs found in Trash'),
    'parent_item_colon' => ''
  );

  $supports = array('title', 'editor', 'custom-fields', 'revisions', 'excerpt');

  register_post_type( 'Job',
    array(
      'labels' => $labels,
      'public' => true,
      'has_archive' => 'current', 
      'supports' => $supports
    )
  );
}

Quand je vais à l'URL http: // mon site web/wordpress/current/ , il affiche tous mes travaux comme prévu - mais il n'utilise AUCUN des modèles d'archive, mais utilise index.php.

D'après ma compréhension de la documentation wordpress, elle recherchait archives- (archive spéciale pour nom du type de message) .php, puis archives- (type de message) .php, puis archives.php, puis index.php ... mais cela va directement à index.php?

J'ai visité la page des paramètres de permaliens et cliqué sur Enregistrer pour tout rafraîchir. Je ne reçois donc pas les 404, mais les fichiers corrects ne sont pas exportés. Est-ce que je les ai mal nommés? Y a-t-il un paramètre d'enregistrement que j'ai manqué lorsque j'ai créé mon type de publication personnalisé?

7
Sarah Jean

essayez 'has_archive' => 'true'; et réinitialisez le permalien avant de tester! et cela devrait être singulier archive-job.php plutôt que archives - job.php

9
MartinJJ