corrections envoi langues perma

This commit is contained in:
theShlavuk 2026-01-21 21:19:24 +01:00
parent 80618e0b96
commit f31fa748b1

View File

@ -1153,13 +1153,34 @@ class CRVI_Event_Controller {
} }
// Nettoyer et valider les langues (slugs de la taxonomie) // Nettoyer et valider les langues (slugs de la taxonomie)
// Accepter soit des slugs soit des IDs (convertir les IDs en slugs)
$langues_valides = []; $langues_valides = [];
if (!empty($langues)) { if (!empty($langues)) {
foreach ($langues as $langue_slug) { foreach ($langues as $langue_value) {
$langue_slug = sanitize_text_field($langue_slug); $langue_value = sanitize_text_field($langue_value);
// Vérifier que la langue existe dans la taxonomie if (empty($langue_value)) {
$term = get_term_by('slug', $langue_slug, 'langue'); continue;
}
$term = null;
$langue_slug = null;
// Si c'est un nombre, essayer de récupérer par ID
if (is_numeric($langue_value)) {
$term = get_term((int)$langue_value, 'langue');
if ($term && !is_wp_error($term)) { if ($term && !is_wp_error($term)) {
$langue_slug = $term->slug;
}
} else {
// Sinon, essayer par slug
$term = get_term_by('slug', $langue_value, 'langue');
if ($term && !is_wp_error($term)) {
$langue_slug = $term->slug;
}
}
// Ajouter le slug si la langue existe
if ($langue_slug) {
$langues_valides[] = $langue_slug; $langues_valides[] = $langue_slug;
} }
} }