Wie kann ich den Benutzer korrekt zum eingereichten Post redirect und eine Vorlage für jeden neuen Post in WordPress definieren?

Was ich tun möchte, ist ein einfaches Front-End-Post-Formular zu erstellen, für jede andere Art von Post, die ich in meiner WordPress-App aufnehmen werde. Zum Beispiel gibt es Artikel, Ereignisse, schnelle Nachrichten und diese Typen haben ein anderes Design / eine andere Struktur, die ein Benutzer sehen kann. Der Autor wird diese Formulare verwenden, um ihren Inhalt zu veröffentlichen.

Soweit ich weiß, kann ich für diese Typen eine andere Vorlage mit der function if in category , aber ich bin an alternativen Lösungen interessiert (vielleicht besser). Ich weiß, dass es page_template im Array http://wpengineer.com/1229/puplishing-extend-of-wordpress/ hinzufügen gibt, aber gibt es noch etwas?

Auch habe ich einige Schwierigkeiten, um den geposteten Link umzuleiten oder sogar zu wiederholen (wie unten). Für Ihre Bedenken kann ich den $link .

Danke für Ihre Hilfe.

 if(isset($_POST['submit'])){ global $user_ID; $new_post = array( 'post_title' => $_POST['post_title'], 'post_content' => $_POST['post'], 'post_status' => 'publish', 'post_date' => date('Ymd H:i:s'), 'post_author' => $user_ID, 'post_type' => 'post', 'post_category' => array(0) ); wp_insert_post($new_post); } 

Ich habe das für eine Weiterleitung ohne Glück versucht

 $pid = wp_insert_post($new_post); $link = get_permalink( $pid ); echo $link; wp_redirect( $link ); 

Solutions Collecting From Web of "Wie kann ich den Benutzer korrekt zum eingereichten Post redirect und eine Vorlage für jeden neuen Post in WordPress definieren?"

Sie müssen die ID von wp_insert_post und sicherstellen, dass Sie das wp_insert_post exit oder die :

 $pid = wp_insert_post($new_post); wp_redirect( get_permalink( $pid ); die(); 

Wie für den zweiten Teil können Sie die WordPress-Template-Hierarchie verwenden und einfach jeden Ihrer benutzerdefinierten Post-Type-Designs als single-{post_type}.php zum Beispiel, wenn Ihr Post-Typ namens event, dann benennen Sie die Datei single-event.php und WordPress kann diese Datei für die Anzeige aller Posts des Ereignistyps verwenden.