Imaginons que vous avez créer un Pod « Voitures » avec tout plein de champs (nom, cylindrée, année ...etc.) mais que vous vouliez un champ « couleur » qui soit un menu déroulant avec des choix prédéfinis pour que vos utilisateurs ne choisissent que les couleurs disponibles. Et vous ne voulez pas que ce champs soit une relations avec un autre Pod ou bien un autre objet Wordpress mais une simple liste toute bête.
Donc dans votre Pod rajoutez un champ de type « Relationship » puis dans l'option suivante choisissez « Simple (liste définie manuellement) ». Ensuite dans le champ texte qui suit vous allez entrer vos options (qui apparaitrons dans votre menu déroulant) sous la forme :
valeur|intitulé
(« valeur pipe intitulé » sans les espaces) et une entrée par ligne. On fait cela pour avoir des « valeurs » propres (sans espaces, accents ...etc.) utilisables directement dans notre code sans foutre le bordel et à coté quand même pouvoir utiliser des jolis intitulés.
Donc vous allez vous retrouver avec une liste appelée « couleur » genre :
rouge|Rouge Ferrai noir|Noir Métallisé blanc|Nacre Mat
Ensuite quand vous allez vouloir utiliser cette liste vous allez, pour une voiture « noir » par exemple :
Dans les « templates » de Pods utiliser le shortcode : {@couleur} ; ce qui donnera « Noir Métallisé » directement, le tag du template étant relativement intelligent il va sortir l'intitulé bien sur.
Dans le code PHP par contre (dans les Pages Pods ou direct dans des fichiers .php du thème) vous allez avoir deux options :
si vous utilisez (comme le plus souvent) :
<?php echo $books->field('couleur'); ?>
cela va envoyer « noir » comme résultat, car ce sera bien la valeur enregistrée dans le champ « couleur » de la table de votre Pod.
Si vous voulez bien afficher le joli « intitulé » il va falloir utiliser la méthode « display » plutôt :
<?php echo $books->display('couleur'); ?>
qui elle va être plus intelligente et renvoyer l'intitulé plutôt que la valeur. Vous aurez donc bien « Noir Métallisé ». A noter que cette différence entre « field » et « display » s'applique à tous les champs, et je vous engage à lire la documentation de chaque.
Voilà, bon Pods !