wake-up-neo.net

Hierarchische Permalinks für benutzerdefinierte Beitragstypen funktionieren nicht

Ich habe schon seit Stunden nach jemandem mit dem gleichen Problem gesucht, also habe ich beschlossen, meinen eigenen Thread zu veröffentlichen.

Ich habe einen hierachischen benutzerdefinierten Beitragstyp namens Kontaktinformationen. Wenn ich dies benutze, habe ich Elternseiten, die keine Informationen enthalten, und Kinderseiten, die dies tun! In der single-contact-information.php habe ich eine Weiterleitungsregel gesetzt, die einen Elternteil zu seinem ersten Kind weiterleitet. Das wirkt wie ein Zauber!

Jedoch! Noch vor ein paar Tagen haben die Kinderseiten plötzlich angefangen, mich zu betrügen! Es scheint, dass die Seiten existieren, und sie sind in der Tat als Kinder der Eltern festgelegt, aber die Permalinks funktionieren nicht. Hier ist meine Permalink-Struktur, die grundlegende:

/% year% /% monthnum% /% day% /% postname% /

Also im Grunde genommen:

mysite.com/contact-information/parentpage/childpage

Funktioniert NICHT, aber

mysite.com/contact-information/childpage

FUNKTIONIERT genauso gut wie

mysite.com/contact-information/parentpage

Hier ist der Code zum Erstellen des benutzerdefinierten Beitragstyps, der aus dem UI-Plugin für benutzerdefinierte Beitragstypen stammt:

register_post_type('contact-information', array(    'label' => 'Contact info','description' => '','public' => true,'show_ui' => true,'show_in_menu' => true,'capability_type' => 'post','hierarchical' => true,'rewrite' => array('slug' => ''),'query_var' => true,'supports' => array('title','revisions','page-attributes',),'labels' => array (
  'name' => 'Contact info',
  'singular_name' => 'Contact information',
  'menu_name' => 'Contact info',
  'add_new' => 'Add Contact information',
  'add_new_item' => 'Add New Contact information',
  'edit' => 'Edit',
  'edit_item' => 'Edit Contact information',
  'new_item' => 'New Contact information',
  'view' => 'View Contact information',
  'view_item' => 'View Contact information',
  'search_items' => 'Search Contact info',
  'not_found' => 'No Contact info Found',
  'not_found_in_trash' => 'No Contact info Found in Trash',
  'parent' => 'Parent Contact information',
),) );

BEARBEITEN:

Ich habe gerade versucht, ein CPT selbst zu erstellen, und zwar auch in den Funktionen unter Verwendung von http://themergency.com/generators/wordpress-custom-post-types/ , und das Problem bleibt bestehen, sodass ich mir ziemlich sicher bin, dass es mit dem zu tun hat permalinks, ich habe einfach keine ahnung was!

4
Jonathan

Versuchen Sie dieses Plugin http://wordpress.org/extend/plugins/custom-post-type-permalinks/ .
Ich hatte viele Probleme mit Permalinks für benutzerdefinierte Typen und 404-Fehlern, bis ich anfing, dieses Plugin zu verwenden.

1
s976

Wenn Sie sich Ihren Code ansehen, sollten Sie sich Ihren Rewrite-Array-Schlüssel ansehen.

'rewrite' => array('slug' => 'contact-information', 'with_front' => true),

Dies würde Ihre benutzerdefinierte Post-Typ-URL umschreiben.

Ein Problem ... Wenn Sie dies zu Ihrer Funktion hinzufügen, möchten Sie zu Ihrer Permalink-Struktur gehen und einfach erneut auf Speichern klicken. Sie müssen nichts ändern, aber wenn Sie auf "Speichern" klicken, wird Ihre .htaccess-Datei neu geschrieben, sodass WordPress den neuen Slug erkennt.

Wenn Sie dies für eine kommerzielle oder öffentliche Veröffentlichung planen, können Sie immer Folgendes tun:

global $wp_rewrite
$wp_rewrite->flush_rules();

Hier ist der Referenzlink: http://codex.wordpress.org/Function_Reference/flush_rewrite_rules

Und der Link für benutzerdefinierte Beitragstypen. Etwas mehr als die Hälfte der Seite ist das Setup für den Neuschreibungs-Slug: http://codex.wordpress.org/Function_Reference/register_post_type

Ich bevorzuge es einfach, meine WordPress-Installationen etwas praxisnaher zu gestalten, damit ich genau weiß, was los ist.

1
Jonathan

Ich habe mich bemüht, Hierarchien für Beitragstypen und benutzerdefinierte Taxonomien zu erstellen, und dann diesen tollen Code gefunden. Vielleicht können Sie ihn verwenden, um eine datumsbasierte Struktur zu erstellen: https://wordpress.stackexchange.com/a/55366/17048

1
Diana