Liste des types de postes personnalisés dans la liste déroulante
-
22-10-2019 - |
Question
J'ai trois types de poste personnalisé, chacun avec environ 5 taxonomies et 2 des types post personnalisés partagent deux taxonomies.
Je suis à peu près ai tout mis en place pour l'affichage de l'extrémité avant autre que la partie d'un menu déroulant pour afficher les post_types.
Comme il est maintenant travaux publication d'extrémité avant, mais, les urls sont cassés parce qu'ils n'ont pas le type de poste personnalisé en eux, je l'ai cherché partout et peut trouver zéro sur la liste des types de poste personnalisé ... peut-il être fait ?
Cordialement Martin
edit: juste trébuché sur cette sur au codex ,,
La solution
Désolé qui se sent un peu bizarre ceux de répondeur propre question, mais là, vous allez ....
Tout d'abord déclarer la variable: (customcategory)
global $userdata;
$errors = array();
$title = trim($_POST['wpuf_post_title']);
$customcategory = trim($_POST['customcategory']);
$content = trim($_POST['wpuf_post_content']);
$tags = wpuf_clean_tags($_POST['wpuf_post_tags']);
$cat = trim($_POST['cat']);
En second lieu le tableau pour ajouter le message:
if (!$errors) {
$frontend_post = array(
'post_title' => $title,
'post_content' => $content,
'post_status' => $post_status,
'post_author' => $userdata->ID,
'post_category' => array($_POST['cat']),
'post_type' => $customcategory,
'tags_input' => $tags
);
$post_id = wp_insert_post($frontend_post);
et enfin créer la dropdrown de la fonction get_post_types:
<?php
$args=array(
'public' => true,
'_builtin' => false
);
$output = 'names';
$operator = 'and';
$post_types=get_post_types($args,$output,$operator);
echo '<select name="customcategory">';
foreach ($post_types as $post_type ) {
echo '<option value="'. $post_type.'">'. $post_type. '</option>';
}echo '</select>';
?>