Benutzerdefinierte Post-Typ-einzelne Seite gibt Fehler 404 zurück

Ich habe einen benutzerdefinierten Beitragstyp namens slide . Es hat Inhalt und einige benutzerdefinierte Felder. Ich möchte, dass WP das Thema ” single.php theme” oder ” single-slide.php wenn der Benutzer auf den Link für die einzelne Seite der Folie klickt. Das Problem, das ich habe, ist, dass WP 404 Fehler austriggers, wenn ich die einzelne Folie sehen will.

Hier ist mein Code in functions.php :

 function create_slide_post_type() { $labels = array( 'name' => _x( 'اسلایدها', 'i2sa' ), 'singular_name' => _x( 'اسلاید', 'i2sa' ), 'menu_name' => _x( 'اسلایدها', 'i2sa' ), 'name_admin_bar' => _x( 'اسلاید', 'i2sa' ), 'add_new' => _x( 'افزودن', 'i2sa' ), 'add_new_item' => __( 'افزودن اسلاید جدید', 'i2sa' ), 'new_item' => __( 'اسلاید جدید', 'i2sa' ), 'edit_item' => __( 'ویرایش اسلاید', 'i2sa' ), 'view_item' => __( 'نمایش اسلاید', 'i2sa' ), 'all_items' => __( 'همه اسلایدها', 'i2sa' ), 'search_items' => __( 'جستجوی اسلایدها', 'i2sa' ), 'parent_item_colon' => __( 'اسلایدهای مادر:', 'i2sa' ), 'not_found' => __( 'اسلایدی پیدا نشد.', 'i2sa' ), 'not_found_in_trash' => __( 'اسلایدی در زباله دان پیدا نشد.', 'i2sa' ) ); $args = array( 'labels' => $labels, 'description' => "اسلایدهای شرکت i2sa", 'public' => true, 'exclude_from_search'=> true, 'publicly_queryable' => false, 'show_in_nav_menus' => false, 'menu_icon' => 'dashicons-images-alt2', 'show_ui' => true, 'show_in_menu' => true, 'query_var' => true, 'rewrite' => array( 'slug' => 'slide' ), 'capability_type' => 'post', 'has_archive' => true, 'hierarchical' => false, 'menu_position' => null, 'supports' => array( 'title', 'editor', 'thumbnail', 'excerpt' ), ); register_post_type( 'slide', $args ); flush_rewrite_rules(); } add_action( 'init', 'create_slide_post_type' ); 

Solutions Collecting From Web of "Benutzerdefinierte Post-Typ-einzelne Seite gibt Fehler 404 zurück"

Sie sollten das Argument true bei der Registrierung Ihres benutzerdefinierten Beitragstyps auf ” true .

HINWEIS : Fügen Sie flush_rewrite_rules() , flush_rewrite_rules() die Seite ein- oder zweimal und ENTFERNEN SIE SIE SOFORT. Sie sollten flush_rewrite_rules() NICHT behalten, außer unter den Bestimmungen wie im Codex.

Dies ist eine teure Operation, daher sollte es nur verwendet werden, wenn es absolut notwendig ist

Leeren Sie die Rewrite-Regel vom Dashboard -> Einstellungen -> Permalink-Seite. Klicken Sie auf Speichern und dann auf die Seite mit den Foliendetails. Es wird jetzt funktionieren. Andernfalls können Sie den Code flush_rewrite_rules() in Ihre create_slide_post_type() -function schreiben. Siehe den Codex

Aktualisieren Sie Ihre Permalinks. Gehe zu Admin-> Einstellungen-> Permalinks und drücke Speichern. Es aktualisiert deine Permalinks und sollte helfen, besonders wenn du das Neuschreiben änderst (‘rewrite’ => array (‘slug’ => ‘slide’),)