Au-delà des pages catalogues, WP-Apidae v6 vous permet d’intégrer des fiches Apidae précises directement dans un article de blog ou une page éditoriale. Idéal pour les dossiers thématiques, les articles de recommandation, les pages éditoriales riches.

Cas d’usage

  • Article « Top 10 des restaurants gastronomiques » — insérer la fiche de chaque restaurant dans le corps de l’article
  • Dossier « Randonnées en famille » — embarquer les fiches des itinéraires recommandés
  • Page « Nos coups de cœur » — mise en avant éditoriale de 3-4 fiches avec du contenu rédactionnel autour

Insérer une sélection manuelle de fiches

Le bloc Liste de fiche (wp-apidae/entities-list) permet de choisir individuellement les fiches à afficher, indépendamment d’une sélection globale.

  1. Ouvrez votre article ou votre page dans l’éditeur WordPress.
  2. Insérez un bloc Liste de fiche depuis la catégorie WP Apidae affichage sélection.
  3. Dans le panneau latéral, ajoutez les fiches à afficher (recherche par titre ou ID).
  4. L’aperçu se met à jour en temps réel dans l’éditeur.

Insérer des fiches par critères

Si vous voulez afficher dynamiquement les fiches qui correspondent à certains critères (par exemple « tous les hébergements labellisés Tourisme & Handicap »), utilisez plutôt le bloc Fiches avec critères (wp-apidae/entities-criteria).

La liste se met à jour automatiquement lorsque de nouvelles fiches correspondant aux critères sont importées.

Mise en page éditoriale

Combinez les blocs WP-Apidae avec les blocs WordPress standards pour construire un article riche :

  • Blocs Titre, Paragraphe, Image pour votre contenu rédactionnel
  • Bloc Liste de fiche ou Fiches avec critères pour afficher les fiches Apidae
  • Bloc Séparateur pour structurer visuellement

Chaque fiche affichée dans le bloc conserve son template Apidae (défini dans WP-Apidae → Modèles) — titre, image, extrait, bouton « Voir la fiche complète » qui renvoie vers la page single de la fiche.

SEO

Les fiches insérées sont rendues côté serveur avec leur balisage Schema.org complet (Hotel, Restaurant, Event, TouristAttraction selon le type). Google comprend la relation entre votre contenu éditorial et les fiches Apidae référencées, ce qui renforce le SEO global de votre site.

Aller plus loin

La cartographie est un levier d’engagement fort sur un site touristique. WP-Apidae v6 intègre deux blocs de cartographie qui s’appuient sur Leaflet, la bibliothèque open source de référence : le bloc Carte listing pour cartographier une sélection dans un post/page, et le bloc Carte fiche Apidae pour afficher la carte d’une fiche dans un Modèle.

Pour des besoins avancés (carte globale de toutes vos fiches, Query Builder multi-sélections), voyez le module WP-Apidae Global Map.

Ajouter une carte à un listing

  1. Ouvrez la page où afficher la carte.
  2. Insérez un bloc Carte listing depuis la catégorie WP Apidae affichage sélection de l’inserteur Gutenberg.
  3. Dans le panneau latéral droit, sélectionnez la sélection à cartographier.

Les options de la carte (centre, zoom, options Leaflet) sont configurables depuis ce même panneau latéral.

Cartographie dans les fiches single

Pour afficher une carte dans le modèle d’une fiche (page detail d’un hébergement, d’un restaurant…), utilisez le bloc Carte fiche Apidae disponible dans la catégorie WP Apidae template de l’inserteur. Ce bloc n’est utilisable que dans les Modèles WP-Apidae, pas dans un post ou une page standard.

Synchronisation avec Listing et Filtres

Placée sur la même page qu’un bloc Listing et/ou Filtres listing, la carte se synchronise avec eux. L’utilisateur voit sur la carte le même ensemble de fiches que celles affichées dans le listing, y compris après application de filtres.

Module Global Map — pour aller plus loin

Le bloc Carte listing est conçu pour cartographier une sélection à la fois. Pour des besoins avancés :

  • Carte globale — toutes les fiches Apidae du site sur une seule carte
  • Query Builder — cartes personnalisées construites par requête (multi-sélections, filtrages croisés)
  • Intégrations Elementor pour les sites construits avec ce page builder

Ces fonctionnalités sont apportées par le module WP-Apidae Global Map.

Aller plus loin

Les filtres facettés permettent à vos visiteurs d’affiner dynamiquement la liste des fiches selon leurs critères — communes, thèmes, labels, équipements, distinctions, etc. WP-Apidae v6 organise les filtres en groupes de filtres, que vous associez ensuite à vos blocs Listing.

Principe : table d’index facettée

WP-Apidae maintient une table d’index dédiée (wpdae_index) qui stocke, pour chaque fiche importée, les valeurs utiles à la recherche facettée. Cette table dénormalisée est optimisée pour des requêtes rapides, sans surcharger les tables WordPress classiques.

L’index est construit et mis à jour automatiquement à chaque import et chaque réindexation.

Créer un groupe de filtres

  1. Ouvrez WP-Apidae → Filtres — la page Groupes de filtres liste les groupes existants.
  2. Cliquez sur Nouveau groupe de filtres.
  3. Donnez un nom au groupe (libellé interne).
  4. Associez le groupe à une sélection importée — les filtres proposés seront ceux pertinents pour les fiches de cette sélection.
  5. Choisissez les champs de filtrage à exposer (taxonomies, dates, etc.).
  6. Enregistrez.

Un groupe de filtres peut aussi être créé pour un module (par exemple pour le module Global Map qui propose ses propres filtres de carte).

Ajouter un bloc Filtres à une page

  1. Ouvrez une page contenant déjà un bloc Listing.
  2. Insérez un bloc Filtres listing depuis la catégorie WP Apidae affichage sélection.
  3. Dans le panneau latéral, sélectionnez le groupe de filtres à utiliser.
  4. Le bloc Filtres listing communique automatiquement avec le bloc Listing présent sur la page.

Types de facettes supportées

WP-Apidae peut exposer comme filtres :

  • Taxonomies Apidae — communes, thèmes, catégories, types, environnements, services, labels, pratiques, tourisme d’affaire, distinctions, etc.
  • Dates — utiles pour les événements (fêtes, manifestations) et pour l’activité en cours / à venir
  • Coordonnées géographiques — filtrer les fiches dans une zone géographique ou autour d’un point
  • Capacités — spécifique aux hébergements
  • Texte — recherche sur le titre des fiches

Performance

La table d’index facettée est dénormalisée et indexée, ce qui permet à WP-Apidae de filtrer rapidement même sur de gros volumes de fiches, sans passer par des requêtes WP_Query complexes. L’API REST interne traite les filtres de façon transparente pour le visiteur.

Aller plus loin

Une fois vos sélections Apidae importées, affichez-les sur vos pages et articles WordPress grâce aux blocs Gutenberg natifs fournis par WP-Apidae v6. Plus besoin de shortcodes ni de widgets dédiés : tout se fait visuellement depuis l’éditeur.

Les 6 blocs d’affichage

Les blocs d’affichage de sélections apparaissent dans la catégorie WP Apidae affichage sélection de l’inserteur Gutenberg. Ils sont utilisables dans n’importe quel post, page ou contenu géré via Gutenberg.

Listing

Affiche les fiches d’une sélection sous forme de liste paginée. Le bloc le plus polyvalent pour créer une page catalogue (liste d’hébergements, liste de restaurants, etc.).

Liste de fiche

Affiche une sélection manuelle de fiches, choisies individuellement dans l’éditeur. Idéal pour mettre en avant quelques fiches dans un article éditorial — voir Mettre en avant ses fiches.

Fiches avec critères

Affiche les fiches répondant à des critères dynamiques (types, taxonomies, termes…). Utile pour des listings thématiques qui se mettent à jour automatiquement quand de nouvelles fiches correspondent.

Prochains événements

Spécifique aux fiches de type Fête et manifestation : affiche les événements à venir triés par date. Parfait pour une section « Agenda » sur la page d’accueil.

Filtres listing

Ajoute des filtres facettés à un listing de la même page. Ce bloc est détaillé dans Filtrer mes sélections.

Carte listing

Cartographie une sélection. Détaillé dans Afficher ma sélection sur une carte.

Ajouter un bloc Listing

  1. Ouvrez (ou créez) la page ou l’article où afficher la sélection.
  2. Cliquez sur le bouton + pour insérer un bloc.
  3. Dans la catégorie WP Apidae affichage sélection, sélectionnez Listing.
  4. Dans le panneau latéral droit, sélectionnez la sélection à afficher.

Les options disponibles (nombre de fiches, pagination, tri…) se configurent depuis ce même panneau latéral. L’éditeur Gutenberg affiche un aperçu en temps réel.

Templates de cards

L’apparence des cartes du listing dépend des modèles (templates) définis dans WP-Apidae → Modèles. Chaque type de fiche peut avoir son propre modèle — un hébergement n’aura pas le même rendu qu’un événement.

Voir Personnaliser mes fiches et listings pour créer vos propres templates.

Combiner plusieurs blocs

Le bloc Listing est conçu pour communiquer avec les blocs Filtres listing et Carte listing sur la même page. Typiquement :

  • Bloc Filtres listing en haut ou en colonne latérale pour filtrer la liste
  • Bloc Listing au centre avec la liste des fiches
  • Bloc Carte listing en parallèle pour la visualisation géographique

Placez simplement les blocs dans la même page — leur communication est gérée automatiquement.

Aller plus loin

Une fois une sélection importée, vous pouvez consulter ses informations depuis l’administration. Les options globales de l’import (types d’objets, fréquence…) se règlent au niveau du plugin dans Réglages WP-Apidae — les sélections individuelles n’ont pas de réglages propres dans WP-Apidae v6.

Accéder aux détails d’une sélection

  1. Ouvrez WP-Apidae → Sélections.
  2. Dans la colonne Actions, cliquez sur l’icône d’engrenage de la sélection concernée.
  3. La page Détails de la sélection s’ouvre sur l’onglet Général.

Informations affichées

L’onglet Général affiche quatre informations en lecture seule :

  • Nom de la sélection — tel que défini côté Apidae
  • Identifiant Apidae — ID numérique unique de la sélection dans votre projet
  • Nombre de fiches — total de fiches présentes dans la sélection côté Apidae
  • Dernière mise à jour — horodatage de la dernière synchronisation réussie

Ces informations sont synchronisées automatiquement à chaque mise à jour de la sélection.

Modifier ce qui est importé

WP-Apidae v6 ne propose pas de réglages par sélection — la configuration est globale :

  • Les types d’objets importés (Activité, Restauration, Hébergement…) se cochent dans Réglages → Objets touristiques.
  • La fréquence de synchronisation est définie dans Réglages → Connexion Apidae.
  • Les langues importées se règlent dans Réglages → Connexion Apidae → Langues à importer.

Pour filtrer finement les fiches d’une sélection à l’affichage (par type, par taxonomie…), utilisez les options des blocs Listing et les groupes de filtres.

Aller plus loin

L’import des données touristiques depuis Apidae se fait par sélections. Une sélection Apidae regroupe des objets (hébergements, activités, événements…) définis dans votre projet sur base.apidae-tourisme.com. Ce guide vous accompagne pour les importer dans votre site WordPress.

Pré-requis

Principe

WP-Apidae utilise votre clé API pour récupérer automatiquement la liste des sélections de votre projet Apidae. Vous n’avez donc pas à saisir manuellement les identifiants de sélection : WP-Apidae vous présente les sélections disponibles et vous choisissez celles à importer en un clic.

Importer une sélection

  1. Dans l’administration WordPress, ouvrez WP-Apidae → Sélections.
  2. Cliquez sur le bouton Importer une sélection en haut à droite.
  3. La page qui s’ouvre affiche un tableau listant toutes les sélections de votre projet Apidae, avec pour chacune : Nom de la sélection, ID Apidae, Nombre de fiches, et un bouton d’action.
  4. À côté de la sélection à importer, cliquez sur Importer (bouton vert).
  5. L’import se lance immédiatement en arrière-plan.

Si la liste ne contient pas une sélection que vous venez de créer côté Apidae, cliquez sur Mettre à jour les sélections en haut de la page — WP-Apidae ré-interroge Apidae pour rafraîchir la liste.

Import asynchrone

L’import est entièrement asynchrone via Action Scheduler (le mécanisme de file d’attente de WooCommerce embarqué dans WP-Apidae). Aucun risque de timeout, même sur de gros volumes de fiches. L’import continue en arrière-plan pendant que vous naviguez sur l’admin.

Sur la liste WP-Apidae → Sélections, la colonne Fiches importées / Total vous indique la progression en temps réel. La Dernière mise à jour est actualisée à chaque synchronisation.

Mises à jour automatiques

Après l’import initial, WP-Apidae synchronise vos sélections avec Apidae selon la fréquence définie dans Réglages → Connexion Apidae → Fréquence de mise à jour des sélections (24 h par défaut).

Pour bénéficier des changements en temps réel, activez Mise à jour en temps réel dans le même onglet, après avoir configuré le webhook côté Apidae. Les modifications Apidae remontent alors immédiatement sans attendre la synchronisation planifiée.

Re-synchroniser manuellement

Une fois une sélection importée, elle apparaît sur la liste WP-Apidae → Sélections. L’icône d’action dans la colonne Actions permet d’accéder à ses détails. Pour forcer une re-synchronisation, le bouton Synchroniser de la page Importer une sélection est disponible sur chaque ligne.

Commandes WP-CLI

Pour les administrateurs système, WP-Apidae expose des commandes WP-CLI pour piloter les imports en ligne de commande :

  • wp wpdae import_selection <selection_id> — lancer ou mettre à jour l’import d’une sélection
  • wp wpdae import_selection <selection_id> --force — forcer un import complet
  • wp wpdae reindex_imported_selections — réindexer toutes les sélections importées

Aller plus loin

WP-Apidae enregistre 14 Custom Post Types (CPT) pour les types d’objets touristiques Apidae et une cinquantaine de taxonomies pour les critères associés (communes, thèmes, distinctions, labels…). Chaque enregistrement expose un filtre d’arguments qui permet de personnaliser labels, slugs et options.

Filtres d’enregistrement des CPT

Pour chaque CPT, WP-Apidae expose un filtre au nom normalisé wpdae_register_post_type_{slug}. La liste complète :

  • wpdae_register_post_type_ad_activite
  • wpdae_register_post_type_ad_commerce_et_servi
  • wpdae_register_post_type_ad_degustation
  • wpdae_register_post_type_ad_domaine_skiable
  • wpdae_register_post_type_ad_equipement
  • wpdae_register_post_type_ad_fete_et_manifesta
  • wpdae_register_post_type_ad_hebergement_colle
  • wpdae_register_post_type_ad_hebergement_locat
  • wpdae_register_post_type_ad_hotellerie
  • wpdae_register_post_type_ad_hotellerie_plein_
  • wpdae_register_post_type_ad_patrimoine_cultur
  • wpdae_register_post_type_ad_patrimoine_nature
  • wpdae_register_post_type_ad_restauration
  • wpdae_register_post_type_ad_sejour_package

Chaque filtre reçoit les arguments passés à register_post_type() et doit les retourner (éventuellement modifiés).

Exemple : personnaliser le slug et les labels d’un CPT

add_filter( 'wpdae_register_post_type_ad_hebergement_locat', function( $args ) {
    // Slug d'URL : /locations/ au lieu de /ad_hebergement_locat/
    $args['rewrite']['slug'] = 'locations';

    // Labels
    $args['labels']['name'] = 'Locations de vacances';
    $args['labels']['singular_name'] = 'Location de vacances';

    // Activer les archives
    $args['has_archive'] = 'locations';

    return $args;
} );

Filtres d’enregistrement des taxonomies

Pour chaque taxonomie Apidae, un filtre similaire est exposé : wpdae_register_taxonomy_{slug} (le slug taxonomie utilise le préfixe at_).

Exemples : wpdae_register_taxonomy_at_communes, wpdae_register_taxonomy_at_themes, wpdae_register_taxonomy_at_distinctions, wpdae_register_taxonomy_at_labels, etc.

Exemple : personnaliser le slug d’une taxonomie

add_filter( 'wpdae_register_taxonomy_at_communes', function( $args ) {
    $args['rewrite']['slug'] = 'ville';
    $args['labels']['name'] = 'Villes';
    $args['labels']['singular_name'] = 'Ville';
    return $args;
} );

Options depuis l’admin

Plusieurs options de configuration des CPT et taxonomies sont accessibles directement depuis WP-Apidae → Réglages → Objets touristiques :

  • Afficher les fiches dans le back office — masquer ou non les CPT du menu admin
  • Objets touristiques à importer — activer/désactiver chaque type
  • Permaliens — slug d’URL par défaut pour chaque type
  • Options des types de post personnalisésshow_in_nav_menus, has_archive globaux

Les filtres PHP wpdae_register_post_type_* interviennent après ces options admin et peuvent donc les surcharger.

Taxonomies Apidae principales

Rappel des taxonomies les plus utiles côté frontal (toutes préfixées at_) :

  • at_selectionids — sélections d’appartenance
  • at_communes — communes
  • at_departements — départements
  • at_themes — thèmes
  • at_categories — catégories
  • at_types — types
  • at_environnements — environnements
  • at_services — services
  • at_labels — labels
  • at_pratiques — pratiques
  • at_tourisme_affaire — aspects tourisme d’affaire
  • at_distinctions — distinctions (hiérarchique depuis v6.3)

Filtres liés aux distinctions

Les distinctions (étoiles hôtel, clés Clévacances, épis Gîtes de France…) ont leur propre API de filtres depuis v6.3 :

  • wpdae/distinctions/get_data — modifier les données d’une distinction
  • wpdae/distinctions/legacy_reference — fournir une référence legacy
  • wpdae/distinctions/before_process — pré-traitement
  • wpdae/distinctions/before_create_term — avant création du terme associé
  • wpdae/distinctions/enable_dual_write — activer la double écriture v5/v6

Aller plus loin

Les callbacks dynamiques sont le mécanisme d’extension recommandé en v6 pour injecter des données custom dans les templates de fiches sans modifier le code des blocs natifs. Ils remplacent les hooks de rendu apidae_template_* de la v5.

Le filtre custom-callback

wp-apidae/blocks-views/dynamic-content/custom-callback

Filtre principal qui permet d’enregistrer de nouveaux slugs de contenu dynamique utilisables dans le bloc Contenu dynamique.

$custom_callback = apply_filters( 'wp-apidae/blocks-views/dynamic-content/custom-callback', array() );
// Retour attendu : array associatif slug => callable

Chaque callable reçoit l’ID de la fiche courante et doit retourner le contenu HTML à afficher.

Enregistrer un callback dynamique

add_filter( 'wp-apidae/blocks-views/dynamic-content/custom-callback', function( $callbacks ) {
    $callbacks['ma-distance-depuis-centre'] = function( $post_id ) {
        // Calculer la distance depuis le centre-ville
        $coords = get_post_meta( $post_id, '_coordinates', true );
        $centre = array( 43.7667, 5.8833 ); // Gréoux-les-Bains
        $distance = haversine( $coords, $centre );
        return sprintf( '%s km du centre', round( $distance, 1 ) );
    };
    return $callbacks;
} );

Une fois le callback enregistré, le slug ma-distance-depuis-centre est disponible dans le bloc Contenu dynamique des templates.

Utiliser le callback dans un Modèle

Dans l’éditeur d’un Modèle WP-Apidae :

  1. Insérez un bloc Contenu dynamique depuis la catégorie WP Apidae template.
  2. Dans le panneau latéral droit, sélectionnez le slug du callback à utiliser.
  3. Le rendu apparaît en aperçu dans l’éditeur.

Périodes d’ouverture

wp-apidae/dynamic-content-periode-ouverture/date-format

Filtre le format de date des blocs de périodes d’ouverture.

$date_format = apply_filters(
    'wp-apidae/dynamic-content-periode-ouverture/date-format',
    get_option( 'date_format' )
);

wp-apidae/dynamic_content_element_reference/slug

Filtre un slug d’élément référencé dans le contenu dynamique.

$slug = apply_filters( 'wp-apidae/dynamic_content_element_reference/slug', $slug );

Galerie et médias

wp-apidae/gallery/attached-media-order

Personnalise l’ordre des médias attachés dans le bloc Gallerie d’images.

$attached_media = apply_filters( 'wp-apidae/gallery/attached-media-order', $attached_media, $post_id );

Templates (overrides thème)

wpdae_get_template / wpdae_locate_template

Filtres de localisation des templates PHP, permettant à un thème de surcharger le rendu de certains éléments.

$filter_template = apply_filters( 'wpdae_get_template', $template, $template_name, $args, $template_path, $default_path );
$template = apply_filters( 'wpdae_locate_template', $template, $template_name, $template_path );

Pattern classique : placer le template surchargé dans {votre-theme}/wp-apidae/{template_name}.

Exemple complet : callback pour un label custom

add_filter( 'wp-apidae/blocks-views/dynamic-content/custom-callback', function( $callbacks ) {
    $callbacks['label-qualite'] = function( $post_id ) {
        $note = (int) get_post_meta( $post_id, '_note_qualite', true );
        if ( $note >= 4 ) {
            return 'Excellence';
        } elseif ( $note >= 3 ) {
            return 'Qualité';
        }
        return '';
    };
    return $callbacks;
} );

Aller plus loin

Cette référence couvre les hooks et filtres invoqués lors de l’indexation des fiches dans la table wpdae_index et lors du rendu des listings côté front (blocs Listing, API REST).

Indexation

À chaque import ou mise à jour de fiche, WP-Apidae met à jour la table dénormalisée wpdae_index qui sert aux recherches facettées. Les hooks suivants permettent d’observer et d’intervenir dans ce processus.

wp-apidae/indexer/before_insert

Déclenchée avant l’insertion d’une fiche dans l’index.

do_action( 'wp-apidae/indexer/before_insert', $post_id, $lang );

wp-apidae/indexer/end_index_post

Déclenchée après l’indexation complète d’une fiche (toutes langues confondues).

do_action( 'wp-apidae/indexer/end_index_post', $post_id );

Listings et requêtes

Les blocs Listing et l’API REST utilisent WP_Query avec des arguments construits spécifiquement. Les filtres ci-dessous permettent de les modifier.

wp-apidae/listing/block/query_args

Filtre les arguments WP_Query utilisés par le bloc Listing.

$query_args = apply_filters( 'wp-apidae/listing/block/query_args', array(
    // ...args WP_Query générés par le bloc...
) );

Cas d’usage : restreindre automatiquement un listing à une commune précise, ajouter une meta_query custom, modifier le posts_per_page selon le device, etc.

wp-apidae/listing/query_args

Filtre les arguments WP_Query utilisés par les listings côté API REST (endpoints généraux).

$args = apply_filters( 'wp-apidae/listing/query_args', array( /* args */ ) );

wp-apidae/listing/before_render

Action déclenchée juste avant le rendu d’un listing. Permet d’effectuer des préparations (cache warm-up, logging…).

do_action( 'wp-apidae/listing/before_render', $query, $lang );

Filtres facettés (Groupes de filtres)

Les groupes de filtres (cf. Filtrer mes sélections) exposent plusieurs hooks d’extension.

wp-apidae/filters-manager/get-filters-options/term

Filtre une option de filtre lors de sa génération à partir d’un terme de taxonomie.

$term = apply_filters( 'wp-apidae/filters-manager/get-filters-options/term', $term, $selection_id_slug );

wp-apidae/facet-filters/get-filters-set/bypass

Permet de contourner la logique standard de résolution du groupe de filtres pour une sélection donnée (utile pour les modules comme Global Map qui injectent leur propre filter set).

$bypass = apply_filters( 'wp-apidae/facet-filters/get-filters-set/bypass', false, $selection_id );

wp-apidae/admin/filter-set/add-option

Ajouter des options custom à l’écran d’édition d’un groupe de filtres dans l’admin.

$extra_options = apply_filters( 'wp-apidae/admin/filter-set/add-option', array(), $current_selection );

Exemple pratique : restreindre un listing par défaut

add_filter( 'wp-apidae/listing/block/query_args', function( $args ) {
    // Toujours filtrer par une commune précise
    $args['tax_query'] = isset( $args['tax_query'] ) ? $args['tax_query'] : array();
    $args['tax_query'][] = array(
        'taxonomy' => 'at_communes',
        'field'    => 'slug',
        'terms'    => 'greoux-les-bains',
    );
    return $args;
} );

Aller plus loin

Cette référence recense les hooks et filtres invoqués par le pipeline d’import de WP-Apidae v6. Utilisez-les pour réagir à l’insertion / mise à jour / suppression d’une fiche Apidae, ou pour modifier les données importées avant persistance.

Cycle d’import d’une fiche

À chaque fiche Apidae importée, WP-Apidae :

  1. Récupère les données JSON de la fiche depuis l’API Apidae
  2. Parse et normalise ces données
  3. Crée ou met à jour le post WordPress correspondant
  4. Importe les médias associés (images, vidéos, documents)
  5. Applique les taxonomies (communes, thèmes, distinctions…)
  6. Réindexe la fiche dans la table wpdae_index

À chaque étape, des hooks sont disponibles.

Actions principales

wp-apidae/create_post/after_insert_post

Déclenchée après l’insertion ou la mise à jour d’un post généré à partir d’une fiche Apidae (v6).

do_action( 'wp-apidae/create_post/after_insert_post', $insert_post_id, $selection_id );

Paramètres : $insert_post_id (int, ID du post WordPress) et $selection_id (int, ID de la sélection Apidae d’origine).

Remplace l’ancien hook v5 apidae_after_resolve_content, désormais déprécié.

wp_apidae/entity_manager/end_process_post

Déclenchée à la fin complète du traitement d’un post (avec ou sans succès).

do_action( 'wp_apidae/entity_manager/end_process_post', $apidae_id, $selection_id, $insert_post_id );

apidae_imported_selection

Déclenchée une fois que tous les posts d’une sélection ont été importés.

do_action( 'apidae_imported_selection', $selection_id, $objects_ids );

$objects_ids est le tableau des IDs Apidae traités dans cette sélection.

apidae_remove_object_terms

Déclenchée avant la suppression des termes d’un post (par exemple lors d’un ré-import).

do_action( 'apidae_remove_object_terms', $post_id, $selection_slug );

Filtres principaux

wp-apidae/entity_manager/get_json

Modifier le JSON d’une fiche avant sa persistance en base. Permet d’enrichir, nettoyer ou transformer les données reçues d’Apidae.

$content = apply_filters( 'wp-apidae/entity_manager/get_json', $content, $this );

Paramètres : $content (array, données JSON de la fiche), $this (instance de WPDAE_Create_Post).

wp-apidae/images-manager/illustrations

Filtrer la liste des illustrations (images principales) à importer pour une fiche.

$filtered_images = apply_filters( 'wp-apidae/images-manager/illustrations', $filtered_images, $this->post_id );

wp-apidae/multimedia-manager/multimedias

Filtrer la liste des médias multimédia (vidéos, documents) à importer.

$filtered_multimedias = apply_filters( 'wp-apidae/multimedia-manager/multimedias', $filtered_multimedias, $this->post_id );

wp-apidae/aspects

Filtrer la configuration des aspects Apidae (Hiver, Été, Handicap…) pour une fiche.

$configured_aspects = apply_filters( 'wp-apidae/aspects', $this->settings );

Hooks legacy (v5)

Certains hooks v5 restent fonctionnels en v6 via do_action_deprecated, mais génèrent un avertissement :

  • apidae_after_resolve_content → remplacé par wp-apidae/create_post/after_insert_post

Migrez votre code vers les équivalents v6 dès que possible pour ne pas subir de rupture lors d’une évolution majeure.

Exemple pratique : enrichir une fiche à l’import

add_action( 'wp-apidae/create_post/after_insert_post', function( $post_id, $selection_id ) {
    // Exemple : ajouter une meta custom avec la région déduite de la commune
    $commune_terms = get_the_terms( $post_id, 'at_communes' );
    if ( $commune_terms && ! is_wp_error( $commune_terms ) ) {
        $region = wp_get_post_term_region( $commune_terms[0] );
        update_post_meta( $post_id, '_region_apidae', $region );
    }
}, 10, 2 );

Aller plus loin