J'ai un blog avec un type de poste personnalisé inited comme:type Wordpress personnalisés Poster Archives Edition
register_post_type('type',
array(
'labels' => array(
'name' => __('Types'),
'singular_name' => __('Type')
),
'public' => true,
'has_archive' => true,
)
);
Évidemment, cela est enveloppé dans une fonction appelée par l'action init. Le problème est que ce type de message est plein de messages, plus de 1K, mais sur la page d'archive (domain.com/type) il n'y a rien de visible. J'ai essayé de vérifier la requête, mais la requête apparaît comme NULL. Quelqu'un at-il une solution fiable? PS: c'est pourquoi je déteste wordpress. Ne fonctionne jamais correctement.
Tags: wordpress-brisé à nouveau, wordpress-succions, wordpress-i-haine-vous
extrait complet:
function cp_init_types() {
register_post_type('nursing-home',
array(
'labels' => array(
'name' => __('Nursing Homes'),
'singular_name' => __('Nursing Home')
),
'public' => true,
'has_archive' => true,
'rewrite' => array('slug' => 'nursing-homes', 'with_front' => true),
/*'supports' => array('title', 'editor', 'custom-fields', 'thumbnail'),
'publicly_queryable' => true,
'exclude_from_search'=> false,
'taxonomies' => array('category','post_tag'),*/
)
);
flush_rewrite_rules(false);
}
function add_my_post_types_to_query($query) {
if(is_category() || is_tag() || is_home() && empty($query->query_vars['suppress_filters'])) {
$post_type = get_query_var('post_type');
if($post_type) {
$post_type = $post_type;
}
else {
$post_type = array('post','nursing-home','nav_menu_item');
}
$query->set('post_type', $post_type);
return $query;
}
return $query;
}
// Show posts of 'post', 'page' and 'movie' post types on home page
add_action('pre_get_posts', 'add_my_post_types_to_query');
add_action("init", "cp_init_types");
"J'ai essayé de vérifier la requête, mais la requête s'affiche comme NULL." Pouvez-vous ajouter ce que vous avez essayé à votre réponse? – phil
Phil, c'est exactement mon problème. Ajout du code complet ci-dessus. – zquintana