Combien de fiches bien une petite agence immobilière publie-t-elle par mois ? Rarement plus d’une dizaine, ce qui rend disproportionné l’achat d’un plugin immobilier complet avec ses propres tableaux de bord, ses widgets de recherche avancée et ses mises à jour à surveiller. Le Theme Builder d’Elementor Pro, combiné à un type de contenu personnalisé et quelques champs additionnels, couvre largement ce besoin.
Ce tutoriel construit une fiche bien réutilisable pour toutes les annonces d’une agence : un modèle unique défini une fois dans le Theme Builder, qui s’applique automatiquement à chaque nouvelle fiche créée, sans reconstruire la mise en page à chaque annonce.
Créer le type de contenu personnalisé
La première étape consiste à déclarer un type de contenu dédié, par exemple bien_immobilier, plutôt que de détourner les articles de blog standard. Cela se fait avec la fonction register_post_type() dans un plugin léger propre au site ou dans les fonctions du thème enfant, en activant le support de l’image mise en avant et de l’éditeur, tout en désactivant les catégories de blog qui n’ont pas de sens ici.
register_post_type( 'bien_immobilier', array(
'label' => 'Biens immobiliers',
'public' => true,
'has_archive' => true,
'show_in_rest' => true,
'supports' => array( 'title', 'editor', 'thumbnail' ),
'menu_icon' => 'dashicons-admin-home',
) );
Ajouter les champs personnalisés natifs

Sans plugin de champs personnalisés, WordPress permet d’ajouter des métadonnées via l’éditeur de blocs ou une boîte à méta dédiée créée avec add_meta_box(). Pour ce cas, une boîte à méta simple regroupe la surface en mètres carrés, le nombre de pièces, le prix et la ville, chaque champ étant enregistré avec update_post_meta() lors de la sauvegarde de la fiche.
Ces champs deviennent ensuite disponibles dans Elementor via les balises dynamiques (Dynamic Tags), sous la catégorie Métadonnées personnalisées, ce qui permet de les insérer dans n’importe quel widget texte ou icône-liste du modèle sans écrire de code supplémentaire côté affichage.
Construire le modèle avec le Theme Builder
Dans Elementor Pro, le Theme Builder permet de créer un modèle de type Article unique, conditionné pour s’appliquer uniquement au type de contenu bien_immobilier. Ce modèle affiche l’image mise en avant en grand format, puis une rangée d’icônes reprenant surface, pièces et prix via les balises dynamiques créées précédemment, suivie du texte descriptif libre saisi dans l’éditeur.
- Un seul modèle Theme Builder à entretenir pour toutes les fiches, présentes et futures.
- Des balises dynamiques qui relient les champs personnalisés aux widgets sans code d’affichage.
- Une page d’archive du type de contenu qui liste automatiquement toutes les fiches actives.
Filtrer et trier la liste des biens
La page d’archive du type de contenu personnalisé peut elle-même être habillée avec un modèle Theme Builder de type Archive, affichant les fiches sous forme de grille via un widget Loop Grid, trié par exemple par date de publication décroissante pour mettre en avant les biens les plus récents en tête de liste.
Ce que cette méthode ne couvre pas
Ni la carte interactive de localisation des biens, ni la synchronisation avec un logiciel de gestion de la relation client immobilier ne font partie de ce dispositif. Ces besoins, quand ils se présentent, justifient alors le passage à une extension spécialisée ou à un développement complémentaire, mais ne sont pas nécessaires pour une agence qui publie un volume limité d’annonces.
Toujours prévoir un champ « statut » (disponible, sous compromis, vendu) dès la création du type de contenu : c’est le genre de champ qu’on regrette amèrement d’avoir oublié une fois les dix premières fiches déjà publiées.
En résumé
Un type de contenu personnalisé, quelques champs natifs et un modèle unique dans le Theme Builder suffisent à construire un système de fiches biens propre et facile à maintenir, sans dépendre d’un plugin immobilier lourd ni de ses mises à jour. Cette approche reste évolutive : rien n’empêche d’ajouter des champs supplémentaires plus tard, sans reconstruire le modèle depuis zéro.