Creare custom type in Wordpress
Per creare dei custom type in Wordpress abbiamo principalmente due possibilità:
- via codice
- usare un plugin
Oggi vediamo la prima, ovviamente.
Quindi cominciamo ad aggiungere questo codice al functions.php:
function mp_custom_post_type() {
register_post_type('mp_skills',
array(
'labels' => array(
'name' => __('Skills', 'skills'),
'singular_name' => __('Skills', 'skills'),
),
'public' => true,
'has_archive' => true,
'rewrite' => array('slug' => 'skills'),
'supports' => array('title', 'editor', 'thumbnail')
)
);
}
add_action('init', 'mp_custom_post_type');
Il custom tupe si chiamerà mp_skills, quindi è come verranno registrati i post.
Nell'area admin vedremo nel menu a sinistra la label Skills per creare degli articoli con questo tipo.
Per visualizzarli possiamo crearci una funzioncina del genere nel functions.php:
function get_skills() {
$queryProgetti = new WP_Query(array(
'post_type' => 'mp_skills',
'post_status' => 'publish',
'posts_per_page' => 50,
));
return $queryProgetti->posts;
}
Poi nella pagina:
<div>
<?php
foreach (get_skills_2() as $item):
$titolo = $item->post_title;
$descrizione = $item->post_content;
$immagine = get_the_post_thumbnail($item->ID);
?>
<h2><?php echo $titolo; ?></h2>
<div>
<?php echo $descrizione; ?>
</div>
<?php echo $immagine; ?>
<?php endforeach; ?>
</div>
Alla fine i record vengono salvati alla stessa maniera di un articolo classico, solo che avrà un post_type diverso.
Enjoy!
php wordpress post_type custom type register_post_type
Commentami!