Tags : , , .

Gestion avancée de contenu dans WordPress : 2013 update

Le billet Gestion avancé de contenu dans WordPress publié fin 2009 est l’un des plus consulté de ce blog. Problème, il date un peu : en 4 ans WordPress a beaucoup évolué. Il est désormais possible de gérer des types de contenus complexes avec les fonctions antives de WordPress.

Depuis sa version 3.0, WordPress intègre deux fonctionnalités qui font de lui un système de gestion de contenu à part entière :

Par défaut WordPress arrive avec deux types de taxonomies, les tags et les catégories, et cinq types de contenu, les article, pages, attachements, révisions et menus de navigation. Vous pouvez ajouter autant de taxonomies et de types de contenu différents que vous le souhaitez.

L’API de WordPress permet de récupérer, manipuler et afficher les différents types de contenus par date, tag associé, état de publication, bref, tout ce qu’on peut faire avec la boucle classique ou l’objet WP_Query. Ajoutons à cela les champs personnalisés  et vous avez entre les mains tous les outils nécessaires pour créer un CMS digne de ce nom.

Pour exploiter ces fonctionnalités, ajoutez ces lignes dans le fichier function.php de votre thème :
< ?php // dans le function .php add action pour lancer la fonction lors de l'événement "init" de wp add_action( 'init', 'create_post_type' ); // création d'un type de contnue "acme product" function create_post_type() { // creation du type de contenu register_post_type( 'acme_product', array( 'labels' => array(
'name' => __( 'Products' ),
'singular_name' => __( 'Product' )
),
'public' => true
)
);
// creation de la taxonomie associée. Cahque taxo est associé à un ou pls types de contenus
register_taxonomy( 'couleur', 'acme_product', array( 'hierarchical' => true, 'label' => 'Couleur', 'query_var' => true, 'rewrite' => true ) )
}
?>

Si vous n’aimez pas coder, pas de panique, il existe aussi des interfaces graphiques. C’est toute la philosophie de WordPress : le noyau intègre le strict minimum. Si vous vous voulez étendre les fonctionnalités de l’outil, les plugins sont faits pour ça. Pour créer et exploiter les taxonomies et contenus personnalisés à l’aide d’une interface graphique, installez le plugin Custom Post UI. Je ne m’étends pas sur l’utilisation du plugin, à vous de chercher.

Et pour les Flutter et autres dont tu parlais en 2009 ?

Dans le billet « Gestion avancée de contenu » de 2009, je mentionnais quelques autres solutions. Certaines sont encore d’actualité, d’autres, à oublier.

Flutter est  à oublier. Ce plugin n’est plus maintenu. Certains auteurs du plugin ont lancé un autre projet : Magic Fields. Comme son nom l’indique, ce plugin permet de gérer les champs personnalisés des articles, des pages ou de tout autre  type de contenu. Mais pas que !  Magic field depuis sa version 2 s’attaque aussi au custom post types.

Pods est de son côté toujours maintenu et très actif. Ce plugin ne se contente pas de poser une interface graphique sur des fonctionnalités existantes, puisque selon ses auteurs, Pods est un véritable framework. Il permet de créer des liaisons hiérarchiques entre contenus. Un contenu de type film peut se voir automatiquement associé plusieurs contenus de type acteurs, ou ce genre de choses, je sais pas trop en fait, je ne l’ai pas testé, mais je sais qu’il est costaud. Jonathan Christopher de Monday By Noon, l’un des meilleurs blogs de dev WordPress, ne jure que par lui. Ca doit pas être dégueu.

En résumé

On résume :

Réagissez

Si ce billet vous a plu ou si vous voulez apporter des précisions, ou si vous n’êtes pas d’accord avec ce que je raconte, c’est ici qu’il faut vous manifester. Je me réserve toutefois le droit de supprimer toute contribution insultante ou qui n’aurait rien à voir avec la choucroute.

  1. Salut
    Merci pour la mise au point. A titre d’information, le grand nouveau pour la gestion des Custom Fields est ACF
    Tu viens au prochain WordCamp en janvier?

  2. Hello,
    Malheureusement le WordCamp de janvier, ce ne sera pas pour moi. Je serais en vadrouille à ce moment là.

  3. Merci pour ce billet

Laisser un commentaire

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