L’ajout d’un champs personnalisé en WordPress

L’ajout d’un champs personnalisé en WordPress

Avez-vous rencontré des problèmes au niveau du Back et Front, lors de l’ajout des inputs personnaliser, mais sans succès..

Aujourd’hui on va voir ensemble comment on ajoute le nombre qu’on veut des inputs dans la partie Back-office, ainsi comment on l’affiche dans le Front, sans avoir utiliser des plugins.

Le principe se base sur 3 functions

/* L'enregistrement de nos fonctions */
add_action("admin_init", "a_init");
add_action('save_post', 'save_acces');  

/*  LA FONCTION 1 */
function a_init(){
    add_meta_box("typeChambre", "Type du chambre", "meta_options", "chambres_p", "side", "high");
}  

/*  
typeChambre : Meta box ID
chambres_p est le post_type 
side : l'emplacement du block par defaut c'est advanced
high : La priorité e l'affichage par defaut est default
*/

/*  
LA FONCTION 2 
Cette fonction s'affiche lors de l'affichage de la page dans le Backoffice
*/
function meta_options(){
    global $post;
    $custom = get_post_custom($post->ID);
    $typeChambre = $custom["typeChambre"][0];
?>
    <label>Type de chambre : </label>
    <input type="text" name="typeChambre" value="<?= $typeChambre; ?>" />
<?php
}  

/*  
LA FONCTION 3 
Cette fonction s'exécute lors de l'enregistrement de la base dans le backoffice
*/
function save_acces(){
	global $post;
	update_post_meta($post->ID, "typeChambre", $_POST["typeChambre"]);
}

 

Pour plus d’information sur la fonction du wordpress add_meta_box

A propos de l’affichage dans le Front c’est très simple, exemple dans single-chambres_p.php lors de l’affichage du titre et le contenu, on affiche notre champs qu’on a crée typeChambre par :

<?php
echo $post->typeChambre;