Benutzerdefinierte Beitragstypvorlage - Archiv


8

Ich habe einen benutzerdefinierten Beitragstyp namens "Job" und die folgenden Vorlagen in meinem Thema:

  • single-job.php (funktioniert einwandfrei, zeigt einzelnen Job wie erwartet an)

  • archives-job.php (wird nicht erkannt?)

  • archives-current.php (auch nicht erkannt)

  • archives.php (wird auch nicht erkannt?)

  • index.php (Archivseite verwendet diese Seite)

So habe ich meinen benutzerdefinierten Inhaltstyp in functions.php registriert:

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

Wenn ich zur URL http: // mywebsite / wordpress / current / gehe , werden alle meine Jobs wie erwartet angezeigt - aber es werden KEINE der Archivvorlagen verwendet und stattdessen index.php.

Mein Verständnis der WordPress-Dokumentation war, dass sie nach Archiven (spezielles Archiv für den Namen des Post-Typs) .php, dann nach Archiven (Post-Typ) .php, dann nach archives.php und dann nach index.php suchen würde ... aber es ist einfach geht direkt zu index.php?

Ich habe die Seite mit den Permalink-Einstellungen besucht und auf Speichern geklickt, um alles zu aktualisieren. Daher erhalte ich keine 404-Dateien. Es wird nur nicht in die richtigen Vorlagen ausgegeben. Habe ich sie falsch benannt? Gibt es eine Registrierungseinstellung, die ich beim Erstellen meines benutzerdefinierten Beitragstyps verpasst habe?

Antworten:


10

Versuchen 'has_archive' => 'true';Sie, den Permalink vor dem Testen zurückzusetzen! und es sollte singulär archive-job.php sein und nicht archives -job.php


Ich habe versucht, was Sie gesagt haben, aber wenn Sie den Wert von has_archive von "aktuell" in "wahr" ändern, wird die gewünschte URL für das Archiv nicht angezeigt : mysite.com/wordpress/current ... Welche URL würde ich für eine benutzerdefinierte URL auf die Archive zugreifen ? Beitragstyp ohne Angabe?
Sarah Jean

Möglicherweise müssen Sie sich nicht einmal mit dem 'has_archive' => 'true' beschäftigen.
Da

haha wir haben gleichzeitig getippt!
Sarah Jean

ES FUNKTIONIERTE!!!! Mann, ich fühle mich dumm. Genial, wenn ich den Ruf hätte, Ihre Antwort zu verbessern, würde ich, aber leider wird der Ruf nicht von anderen Stack-Exchange-Sites übertragen ... :-(
Sarah Jean

Ich bin froh, Ihnen helfen zu können. Kinfa erinnert mich daran, als ich 3 Tage lang mit einem Benutzerrollen-Mod rumgespielt habe (fast kahl geworden) und dann hat jemand freundlich darauf hingewiesen, dass ich einen falschen Beitrag geschrieben habe ... hahah
MartinJJ
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.