post_title . " | " . $chantier_name;
if ($localisation && isset($localisation['city'])) {
$title .= " | " . $localisation['city'];
}
if ($date) {
$title .= " | " . $date;
}
$my_post['post_title'] = $title;
wp_update_post($my_post);
}
add_action('acf/save_post', 'metiers_patrimoine_chantiers_post_updater', 20);
/* ---------------------------
CUSTOM CODE FOR TITLE
---------------------------*/
add_action('edit_form_after_title', function () {
// Vérifie si on est sur le bon post type
$screen = get_current_screen();
if ($screen && $screen->post_type === 'artisans') {
echo '
' . get_the_title() . '
';
}
});
/* ---------------------------
CUSTOM CHANTIER META BOX AT THE END OF THE PAGE
---------------------------*/
add_action('add_meta_boxes', function () {
// Ajout de la metabox uniquement pour le post type 'artisans'
add_meta_box(
'admin_artisan_chantier_list', // ID de la metabox
'Chantiers réalisé par l\'entreprise', // Titre de la metabox
'render_custom_chantier_box_content', // Fonction de rendu
'artisans', // Post type
'normal', // Contexte
'low' // Priorité
);
});
/**
* Fonction de rendu du contenu de la metabox.
*/
function render_custom_chantier_box_content($post)
{
$args = array(
'post_type' => 'chantiers',
'posts_per_page' => -1,
'post_status' => 'publish',
'meta_query' => array(
array(
'key' => 'artisan',
'value' => $post->ID,
'compare' => '=',
),
),
);
$chantiers = new WP_Query($args);
// Afficher les chantiers
if ($chantiers->have_posts()) {
echo ' Chantiers réalisé par l\'entreprise
';
echo '';
while ($chantiers->have_posts()) {
$chantiers->the_post();
$chantier_name = get_field('chantier_name');
echo '-
' . $chantier_name . ' ';
}
echo '
';
} else {
echo ' Chantiers réalisé par l\'entreprise
';
echo 'Aucun chantier pour cette entreprise.
';
}
}