// Ymd -> EEEE d MMMM yyyy
// Exemple d'utilisation : echo cleanDate('20251013');
function cleanDate($date = null, $locale = 'fr_BE', $format = 'EEEE d MMMM yyyy') {
$formatter = new IntlDateFormatter(
$locale,
IntlDateFormatter::FULL,
IntlDateFormatter::NONE,
'EuropeBrussels',
IntlDateFormatter::GREGORIAN,
$format
);
$date = DateTime::createFromFormat('Ymd', $date);
// EXEMPLE AVEC WORDPRESS :
// Récupérer le fuseau horaire défini dans WordPress
$timezone = wp_timezone(); // Retourne un objet DateTimeZone
$date_string = get_field('date_de_levenement'); // Ex: "20251013"
// Créer une date à partir de ACF (format Ymd)
$date = DateTime::createFromFormat('Ymd', $date_string, $timezone);
// Formatter selon la locale WordPress
$locale = get_locale(); // Exemple : fr_BE
$formatter = new IntlDateFormatter(
$locale,
IntlDateFormatter::FULL,
IntlDateFormatter::NONE,
$timezone->getName(),
IntlDateFormatter::GREGORIAN,
'EEEE d MMMM yyyy'
);
echo $formatter->format($date);
if (!$date) {
return false;
}
return $formatter->format($date);
}