# Job board sous Elementor pour un cabinet de recrutement, sans ATS lourd

> Comparé à un ATS complet, un simple type de contenu personnalisé et un Loop Grid suffisent souvent à un cabinet indépendant. Le tutoriel pour lister des offres filtrables sans logiciel de recrutement lourd.

- Auteur : WordPress Développement
- Publié le : 2023-06-12
- Mis à jour le : 2023-06-12
- Catégorie : Elementor
- URL : https://www.wpmoderne.fr/elementor/job-board-recrutement-loop-grid-taxonomies/

## L’essentiel

- Un type de contenu personnalisé « offre » avec deux taxonomies
- Un Loop Grid filtrable par secteur et par type de contrat
- Un Loop Item qui affiche la date limite de candidature

Comparé à un ATS complet, avec son tunnel de suivi de candidature et ses tableaux de bord, un cabinet de recrutement indépendant a rarement besoin de plus qu'une liste d'offres bien organisée et filtrable. L'investissement dans un logiciel de recrutement dédié se justifie surtout à partir d'un certain volume de candidatures à traiter, ce qui n'est pas le cas de la majorité des petites structures.

Ce tutoriel ne traite pas de la candidature en ligne avec dépôt de CV, qui suppose une gestion de fichiers et de données personnelles bien plus encadrée : il montre comment construire, étape par étape, une liste d'offres d'emploi filtrable avec le Loop Grid d'Elementor Pro et des taxonomies personnalisées.

## Étape 1 : créer le type de contenu personnalisé « offre »

La première étape consiste à déclarer un type de contenu personnalisé `offre_emploi`, via un plugin léger comme Custom Post Type UI ou directement en PHP avec `register_post_type()`. Chaque offre dispose des champs standards (titre, description) complétés par des champs personnalisés ACF pour la localisation, le type de contrat et la date limite de candidature.

## Étape 2 : déclarer les deux taxonomies

Deux taxonomies personnalisées structurent le filtrage :

- `secteur_activite` : commerce, industrie, tertiaire, santé, selon les secteurs couverts par le cabinet.
- `type_contrat` : CDI, CDD, intérim, alternance.

```
<?php
register_taxonomy( 'type_contrat', 'offre_emploi', array(
    'label'        => 'Type de contrat',
    'hierarchical' => false,
    'show_in_rest' => true,
) );
```

## Étape 3 : construire le Loop Item

Le Loop Item affiche, pour chaque offre, le titre, le secteur sous forme d'étiquette, le type de contrat, et la date limite de candidature via un Dynamic Tag lié au champ ACF correspondant. Une condition d'affichage masque la date limite si elle est dépassée, en remplaçant le texte par « Poste pourvu », ce qui évite de laisser une offre expirée visible sans indication.

> L'essentiel à retenir : Un type de contenu personnalisé « offre » avec deux taxonomies ; Un Loop Grid filtrable par secteur et par type de contrat ; Un Loop Item qui affiche la date limite de candidature

## Étape 4 : configurer le Loop Grid avec filtres par taxonomie

Dans l'onglet Requête du Loop Grid, la source est réglée sur le type de contenu `offre_emploi`. Pour ajouter un filtrage visuel, on place au-dessus du Loop Grid un widget de menu ou d'onglets dont chaque lien pointe vers une URL avec un paramètre de taxonomie, par exemple `?type_contrat=cdi`. Un court script associé au Query ID du Loop Grid lit ce paramètre d'URL et ajuste la requête `tax_query` en conséquence.

## Étape 5 : trier les offres par pertinence

Les offres les plus récentes ou celles marquées comme urgentes par le cabinet doivent apparaître en premier. Le tri se règle sur la date de publication décroissante par défaut, avec un champ ACF booléen `offre_urgente` qui peut être intégré à une requête `meta_query` pour faire remonter certaines offres en tête de liste, indépendamment de leur date.

## Étape 6 : gérer l'archivage des offres pourvues

Plutôt que de supprimer une offre pourvue, on la bascule dans un statut personnalisé ou une taxonomie `statut_offre` avec la valeur « pourvue », ce qui l'exclut automatiquement de la requête du Loop Grid tout en conservant l'historique pour les statistiques internes du cabinet.

## Étape 7 : ajouter un compteur d'offres par secteur

Un widget Texte placé au-dessus du Loop Grid peut afficher, à côté de chaque bouton de filtre par secteur, le nombre d'offres actuellement publiées dans ce secteur. Ce compteur se calcule via une requête `wp_count_posts` croisée avec la taxonomie `secteur_activite`, ce qui donne au visiteur une idée immédiate du volume d'opportunités avant même de cliquer sur un filtre, un détail qui améliore sensiblement la lisibilité du catalogue quand le nombre d'offres dépasse la vingtaine.

> Le conseil qu'on donne systématiquement à ce stade : ne jamais coupler ce type de job board à un ATS a posteriori sans revoir la structure des champs. Autant partir d'une structure de données simple mais cohérente dès le départ, quitte à la faire évoluer plus tard.

## En résumé

Un job board fonctionnel pour un cabinet de recrutement indépendant se construit avec un type de contenu personnalisé, deux taxonomies bien choisies et un Loop Grid Pro correctement filtré. Cette approche reste largement suffisante tant que le volume d'offres et de candidatures ne justifie pas l'investissement dans un ATS dédié.
