custom type post sans plugin!

Custom Post Types : vos propres Posts et Pages

Pour le moment votre wordpress vous permet de créer 3 type de contenu:

  • Posts : ce sont les billets du blogs rangés chronologiquement. Ils peuvent être dans des Catégories et avoir des Tags.
  • Pages : ce sont des pages contenant du contenu fixe et intemporel. Il n’y a pas de notion de chronologie, ni de catégorie, ni de tags. Il y a uniquement une notion de hiérarchie (relation page parent/page enfant).
  • Attachment : Concerne les fichier média lié avec  metadonné ( image vidéo etc… )

Avec wordpresse 3, on peut aller bien plus loin et très facilement !

Ajouter un Custom type post !

Pour cela on ajouté un action dans l’initialisation : my_custom_init

On enregistre un nouveau type de poste : register_post_type

Puis on lui donne les bon paramètre ( voir plus bas )

add_action('init', 'my_custom_init');
function my_custom_init()
{
/* le code PHP à ajouter pour creer son custom post type */
register_post_type('exemple', array(
 'label' => __('Exemples'),
 'singular_label' => __('Exemple'),
 'public' => true,
 'show_ui' => true,
 'capability_type' => 'post',
 'hierarchical' => false,
 'supports' => array('title', 'editor', 'author', 'thumbnail',
 'excerpt', 'trackbacks',
 'custom-fields', 'comments', 'revisions', 'page-attributes')
));

}

Donner les paramètres à register_post_type:

J'ai mis la liste entière mais simplement traduite sous google ! Courage !
Paramètres
$ Post_type
(String) (requis) type de poste. (Max. 20 caractères)
Défaut: Aucun
$ args
(Array) (en option) Un tableau d'arguments.
Défaut: Aucun
Arguments
étiquette
(String) (en option) Un nom au pluriel descriptif pour le poste
type marquée pour la traduction.
Par défaut: $ post_type
étiquettes
(Array) (en option) étiquettes - Un tableau d'étiquettes pour ce poste
type. En post étiquettes par défaut sont utilisés pour les non-hiérarchique
types et des étiquettes page hiérarchiques.
Par défaut: si elle est vide, le nom est mentionné à l'étiquette de valeur, et
singular_name est réglé nom de la valeur
«Nom» - nom général pour le type de poste, souvent au pluriel. L'
même, et remplacée par une étiquette $ post_type_object->
«Singular_name - nom pour un objet de ce type de poste.
Par défaut, la valeur du nom de
«Add_new - le complément nouveau texte. La valeur par défaut est Ajout de nouveau pour les deux
types hiérarchique et non hiérarchique. Lorsque
l'internationalisation de cette chaîne, s'il vous plaît utiliser un contexte gettext
correspondant à votre type de poste. Exemple: _x («Add New», «produit»);
«Add_new_item - Ajout de nouveau texte de l'élément. Ajouter un nouveau défaut est
Post / Ajoute une nouvelle page
«Edit_item '- le texte édité point. Par défaut est Modifier le message / Edit
Page
«New_item '- le nouveau texte élément. Poster un nouveau défaut est / Nouvelle page
«View_item - le texte de l'élément de vue. Par défaut est POST Voir / Voir
Page
«Search_items '- le texte à rechercher les articles. Recherche par défaut est
Pages de messages Recherche /
«Not_found '- le texte ne trouve pas. Par défaut est Aucun article trouvé / Non
pages trouvées
«Not_found_in_trash - le texte ne trouve pas dans trash. Par défaut est
Aucun article trouvé dans la corbeille / n pages trouvées dans la corbeille
«Parent_item_colon '- le texte parent. Cette chaîne n'est pas utilisée
sur les types de non-hiérarchique. Dans les hiérarchique par défaut
Page Parent:
description
(String) (en option) Un bref résumé descriptif de ce que l'
type de poste est.
Par défaut: vide
public
(Booléen) (en option) L'argument de Meta utilisé pour définir par défaut
valeurs pour publicly_queriable, show_ui, show_in_nav_menus et
exclude_from_search.
Défaut: faux
«Faux» - ne pas afficher une interface utilisateur pour ce type de poste
(Show_ui = false), les requêtes post_type ne peut pas être effectuée à partir de
l'extrémité avant (publicly_queryable = false), exclure les postes avec
ce type de poste à partir des résultats de recherche (exclude_from_search = true),
cacher post_type pour la sélection dans les menus de navigation
(Show_in_nav_menus = false)
«Vrai» - show_ui = true, publicly_queryable = true,
exclude_from_search = false, show_in_nav_menus = true
publicly_queryable
(Booléen) (en option) Que les requêtes peuvent être post_type
effectuée à partir de l'extrémité avant.
Par défaut: la valeur de l'argument du public
exclude_from_search
(Booléen) (importance) d'exclure ou non les messages avec ce post
type des résultats de recherche.
Par défaut: valeur de l'opposé de l'argument du public
show_ui
(Booléen) (en option) Que ce soit pour générer une interface utilisateur par défaut pour
gestion de ce type de poste. Notez que _Composé-dans des types de poste, ces
que le courrier et la page, sont intentionnellement la valeur false.
Par défaut: la valeur de l'argument du public
«Faux» - ne pas afficher une interface utilisateur pour ce type de poste
«Vrai» - d'afficher une interface utilisateur (panneau d'admin) pour ce poste
type
capability_type
(String) (facultatif) Le type de message à utiliser pour vérifier lire,
modifier et supprimer des capacités.
Par défaut: "post"
Par défaut, le capability_type est utilisé pour construire
capacités. 

capacités
(Array) (en option) Un tableau des capacités pour ce poste
type.
Par défaut: capability_type est utilisé pour construire
«Edit_. $ Capability_type (edit_post) - La capacité de méta
que l'édition des contrôles un objet particulier de ce type de poste.
La valeur par défaut "edit_. Capability_type $"
«Edit_. $ Capability_type. 'S' (edit_posts) - La capacité de
que les contrôles édition d'objets de ce type de poste en tant que classe.
La valeur par défaut "edit_. Capability_type $. S"
«Edit_others_. $ Capability_type. 'S' (edit_others_posts) -
La capacité que les contrôles édition d'objets de ce type de poste
qui sont détenues par d'autres utilisateurs. La valeur par défaut "edit_others_.
$ Capability_type. s "
«Publish_. $ Capability_type. 'S' (publish_posts) - Le
capacité que les contrôles d'édition des objets de ce type de poste.
La valeur par défaut "publish_. Capability_type $. S"
«Read_. $ Capability_type (read_post) - La capacité de méta
qui contrôle la lecture d'un objet particulier de ce type de poste.
La valeur par défaut "read_. Capability_type $"
«Read_private_. $ Capability_type. 'S' (read_private_posts)
- La capacité que les contrôles de lecture messages privés. Par défaut
à read_private. capability_type $. s "
«Delete_. $ Capability_type (delete_post) - Le méta
capacité qui contrôle la suppression d'un objet particulier de cette
de type poteau. La valeur par défaut "delete_. Capability_type $"
hiérarchique
(Booléen) (en option) si le type de poste est hiérarchique.
Permet Parent à préciser.
Défaut: faux
soutient
(Array) (optionnel) Un alias pour l'appel
add_post_type_support () directement.
Par défaut: le titre et l'éditeur
'Title'
«Éditeur» (le contenu)
«Auteur»
"Vignette" (image en vedette) (thème actuel doit également soutenir
post-image)
'Extrait de'
«Collantes» (type Sticky poste de douane) (depuis WordPress 3.1)
«Trackbacks»
«Coutume-champs»
«Observations» (voir le commentaire sera également compter sur ballon modifier
écran)
«Révisions» (révisions magasin)
'Page-attributs »(modèle et l'ordre des menus) (hiérarchique doit
être vrai)
register_meta_box_cb
(String) (en option) d'assurer une fonction de rappel qui sera
appelée lorsque la mise en place des boîtes meta pour le formulaire de modification. Ne
remove_meta_box () et add_meta_box () appelle dans le rappel.
Défaut: Aucun
taxonomies
(Array) (en option) Un tableau de taxonomies enregistré comme
catégorie ou post_tag qui seront utilisés avec ce type de poste.
Cela peut être utilisé en lieu et place de l'appel
register_taxonomy_for_object_type () directement. Taxonomies encore
doivent être enregistrés auprès de register_taxonomy ().
Défaut: Aucun
menu_position
(Entier) (en option) La position dans l'ordre des menus ou le poste
type devrait apparaître.
Par défaut: null - par défaut ci-dessous: Commentaires
5 - les messages ci-dessous
10 - ci-dessous avec les médias
20 - ci-dessous Pages
60 - ci-dessous premier séparateur
100 - ci-dessous second séparateur
menu_icon
(String) (en option) L'url de l'icône à utiliser pour ce
menu.
Par défaut: null - par défaut à l'icône de postes
permalink_epmask
(String) (en option) La valeur par défaut réécrire bitmasks point de terminaison. Pour
plus d'infos voir Trac Ticket 12605.
Par défaut: EP_PERMALINK
récrire
(Booléen ou un tableau) (en option) permaliens réécriture avec ce
format.
Par défaut: true
args $ array
«Slug» - précéder les messages de cette limace - par défaut après
type de nom
«With_front - permettant permaliens être précédé d'avant
base (par exemple: si votre structure est Permalien / blog /, puis
vos liens seront: faux-> / nouvelles /, vrai-> / blog / nouvelles /) -
par défaut à true
query_var
(Booléen) (optionnel) Nom de la var requête à utiliser pour ce
de type poteau.
Par défaut: true
can_export
(Booléen) (en option) Est-ce post_type être exportés.
Par défaut: true
show_in_nav_menus
(Booléen) (en option) Que post_type est disponible pour
sélection dans les menus de navigation.
Par défaut: la valeur de l'argument du public
_builtin
(Booléen) (non à usage général) si ce type de poste est un
indigènes ou «built-in" post_type. Note: cette entrée est du Codex pour
documentation - les développeurs du noyau vous recommandons de ne pas utiliser ce
lorsque vous enregistrez votre type propre poste
Défaut: faux
«Faux» - par défaut il s'agit d'un type de message personnalisé
«Vrai» - il s'agit d'un type intégré post natale (post, page,
fixation, révision, nav_menu_item)
_edit_link
(Booléen) (non à usage général) Lien pour modifier une entrée avec
ce type de poste. Note: cette entrée est du Codex pour la documentation -
"Les développeurs du noyau vous recommandons de ne pas l'utiliser lorsque
l'enregistrement de votre type propre poste
Par défaut:
"Post.php? Post =% d '

  • Pour avoir les thumbnails dans votre thème, il faut ajouter dans functions.php :
add_theme_support( 'post-thumbnails' );

Bon maintenant amusez vous à mettre du contenu et aller voir comment afficher vos custom type post ! Et ajouter lui une taxonomie !

Cette entrée a été publiée dans Wordpress. Vous pouvez la mettre en favoris avec ce permalien.

3 réponses à custom type post sans plugin!

  1. to be output if the loop contains no values. This is useful for forums with no topics (for example) … in some ways it replaces « bits of » the existing « switch_ » type control (the rest being replaced by conditionals).

  2. Ping : Afficher le flux des custom post | Divorg

  3. Ping : Custom Taxonomy : de nouvelles catégories et de nouveaux tags | Divorg

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>