// JLM phrase dans binding_dev function acces_notes_dev($acces_externe,$acces_url,$issn,$nul,$tit1) { global $iremweb,$codesirem,$lien_acces,$txt_acces,$lien_apmep,$txt_apmep,$rub_apmep; $style_a=''; // if ($acces) // élimination blancs parasites // $acces=preg_replace("/ /"," ",$acces); $mess=""; // changement message 2016-06-10 // $mess_ressources = " Ressources numérisées des IREM et de leurs partenaires"; $mess_ressources = "Bibliothèque numérique des IREM et de l'APMEP"; // codes A C E F R S T X = type de lien // $c=strtoupper(substr($acces,0,1)); // if (array_key_exists($c,$mess_internet)) // $suite=substr($acces,2); // lien codé et/ou adresse explicite // cas 1 : 2 caractères X YY ou X NU GR pour Grand N ou Petit x // cas 2 supprimé // cas 3 : code+http X YY http://... $code_acces=strtoupper($acces_externe); // if (strlen($suite) == 2 or $suite == "NU GR") // cas 1 : lien codé 2 caractères = taxo fich_acces_externe if ($acces_url == '') { $code_externe=$code_acces; if ($code_acces == "GN" or $code_acces == "PX") $code_externe="GR"; // lien vers un serveur IREM if (array_key_exists($code_externe,$iremweb)) { $nomirem=ucfirst(array_search($code_externe,$codesirem)); // cas petit x / grand n // $test_GR=0; if (preg_match("/N°/",$tit1)) { // extraction numéro $numero=$nul; if ($code_acces == "PX") $rep="petit-x"; if ($code_acces == "GN") $rep="grand-n"; if ($numero) { // 2019-07-15 changement référencement => lien sur sommaire if ($numero == "HSA4") $adr_numero="hors-serie-activites-"; else $adr_numero="numero-$numero-$rep"; $adr="https://irem.univ-grenoble-alpes.fr/revues/$rep/consultation/$adr_numero/"; } else $adr=$iremweb[$code_externe]; } else $adr=$iremweb[$code_externe]; // $mess .= $mess_internet[$c]; if (substr($code_externe,0,1)!="W") // cas des IREM { $mess .= " de l'IREM"; if ($code_externe != "PN") { if ($code_externe == "BO") $mess .= " d'"; else $mess .= " de"; } } else // cas CII $mess .= " de la "; $mess .= " $nomirem"; // 2021-12-03 lien bibli numérique après TIT1 } // fin cas IREM else // autres cas { // cas APMEP : AP 5 fiches AA AI PL disparus if ($code_acces == "AP") { $lien_AP="http://www.apmep.fr/Les-brochures-de-l-APMEP"; $txt_AP=" de l'APMEP en consultant la rubrique "; $rub_AP="\"Les brochures\""; $mess .= "$txt_AP $rub_AP"; } // autres cas : liste fi_acces if (array_key_exists($code_acces,$lien_acces)) { $l=$lien_acces[$code_acces]; $t=$txt_acces[$code_acces]; $mess .= " $t"; } } // fin autres cas } // fin cas 1 else // cas 3 code + http { // codes NU UE VS $adr=$acces_url; // $mess .= $mess_internet[$c]; if ($code_acces == "UE") // remplace cas 2 $mess .=" $adr"; else if ($code_acces == "NU") { if (preg_match("/^http/",$adr)) // lien si adresse correcte { $mess .= " $mess_ressources"; $mess .=" et sur le site "." $adr"; } else // cas brochures APMEP codage "_ NU AP" pour cohérence codage "_ AP" if (substr($adr,0,2) == "AP") { $a="http://www.apmep.fr/Les-brochures-de-l-APMEP"; $mess .=" de l'APMEP"; } } else { // autres cas : VS if (array_key_exists($code_acces,$lien_acces)) { $l=$lien_acces[$code_acces]; $t=$txt_acces[$code_acces]; $mess .= " $t"; } if (preg_match("/^http/",$adr)) // lien si adresse correcte $mess .=" et sur le site "." $adr"; } } return $mess; } /** * Callback pour le traitement du binding sur les données ACCES dans notes * * @return mixed */ function publimath_callback_acces_notes_dev($source_args, $post) { global $link_wcdb; if (!function_exists('get_field')) { return ''; // ACF n'est pas disponible } // $id_cpt = get_field('cpt_id_unique'); $post_id=get_post_field('ID'); $sql="select * from wp_postmeta where post_id=$post_id and meta_key='fich_acces_phrase'"; $r_p=mysqli_query($link_wcdb,$sql); if (mysqli_num_rows($r_p) > 0) { $term_phrase=mysqli_fetch_array($r_p)['meta_value']; $r_t=mysqli_query($link_wcdb,"select * from wp_terms where term_id=$term_phrase"); $acc_phrase=mysqli_fetch_array($r_t)['name']; $term_externe= get_field('fich_acces_externe'); if (!empty($term_externe)) $acc_externe=$term_externe->slug; else $acc_externe=''; $acc_url= get_field('fich_acces_url'); // $acc_titre = get_field('fich_acces_titre'); $issn = get_field('fich_issn'); // pour Grand N Petit x $collection_num=get_field('fich_collection_num'); $title=get_the_title(); // Vérifie si $acc_phrase et $acc_code existent et ne sont pas vides if (empty($acc_phrase)) { return ''; // Retourne une chaîne vide si l'un des champs est vide } else { $acces_notes = acces_notes_dev($acc_externe,$acc_url,$issn,$collection_num,$title); if ($acces_notes) $return="".$acc_phrase.$acces_notes; else $return=''; return $return; } } else return ''; } /** * Callback pour afficher les notices du glossaire ORT * * @return mixed */ function publimath_callback_glossaire_ort_dev($source_args,$post) { global $link_wcdb; // Vérification de la disponibilité de la fonction get_field de ACF if (!function_exists('get_field')) { return ''; // Retourner une chaîne vide si ACF n'est pas disponible } $return=''; $comment=''; $title=get_the_title(); // traitement apostrophe html => ' $title=preg_replace("/’/","'",$title); $title_e=mysqli_real_escape_string($link_wcdb,$title); $r_t=mysqli_query($link_wcdb,"select * from wp_terms where name='$title_e'"); if (mysqli_num_rows($r_t)==1) { $l_t=mysqli_fetch_array($r_t); $term_id=$l_t['term_id']; $slug=$l_t['slug']; $comment .= ""; if ($slug) { $sql="select group_concat(term_id) from wp_termmeta where meta_value=\"$slug\""; $comment .= ""; $r_m=mysqli_query($link_wcdb,"select group_concat(term_id) from wp_termmeta where meta_value=\"$slug\""); $group_terms=mysqli_fetch_array($r_m)[0]; $tab_terms=explode(',',$group_terms); foreach ($tab_terms as $term_renvoi) { $r_r=mysqli_query($link_wcdb,"select * from wp_terms where term_id=$term_renvoi"); if (!empty($r_r)) { $name_renvoi=mysqli_fetch_array($r_r)['name']; $return .= "$name_renvoi
"; } } $glossaire_ort=$return; } // else $glossaire_ort = get_field('gloss_ort'); // Obtenir la valeur du champ ACF } // Vérifier si le champ est vide if (empty($glossaire_ort)) { return ''; // Retourner une chaîne vide si le champ est vide } // Afficher ORT return $comment.wp_kses_post($glossaire_ort); } /** * Callback pour afficher les notices du glossaire MCL * * @return mixed */ function publimath_callback_glossaire_mcl_dev($source_args,$post) { global $link_wcdb; // Vérification de la disponibilité de la fonction get_field de ACF if (!function_exists('get_field')) { return ''; // Retourner une chaîne vide si ACF n'est pas disponible } $return=''; $gloss_mcl=get_field('gloss_mcl'); $term=get_term($gloss_mcl); if (!empty($term)) $return=$term->name; return $return; } /** * Affiche la liste des termes pour la taxonomie `fi_class` pour le post type `fiche`. * * @param array $source_args Arguments de la source. * @return string Liste HTML des termes. */ function publimath_callback_class_dev($source_args) { // Vérifier si ACF est actif if (!function_exists('get_field')) { return ''; // Retourner une chaîne vide si ACF n'est pas actif } // Obtenir les termes associés au post courant pour la taxonomie `fi_mot_cle` $terms = get_the_terms(get_the_ID(), 'fi_class'); // Vérifier si des termes ont été trouvés if (empty($terms) || is_wp_error($terms)) { return ''; // Retourner une chaîne vide si aucun terme n'a été trouvé ou en cas d'erreur } // Initialiser une variable pour stocker la liste HTML $output = '
'; $output .= '

Classification

'; $output .= '
'; // Retourner la liste HTML return $output; } /** * Callback pour afficher bibnum * * @return mixed */ function publimath_callback_get_title($source_args, $post) { global $link_wcdb; // Vérification de la disponibilité de la fonction get_field de ACF if (!function_exists('get_field')) { return ''; // Retourner une chaîne vide si ACF n'est pas disponible } $return=''; $value = get_field('fich_acces_phrase'); if (!empty($value)) $return = ' '; $annee_publi=get_field('fich_annee_edi'); if (!empty($annee_publi)) $return .= "$annee_publi  "; $link=get_permalink(); $a=""; $return .= $a.get_the_title()."\n"; return $return; } function publimath_callback_domaines_glossaire($source_args, $post) { global $link_wcdb; // Vérification de la disponibilité de la fonction get_field de ACF if (!function_exists('get_field')) { return ''; // Retourner une chaîne vide si ACF n'est pas disponible } $sql="select name,slug from wp_terms t join wp_term_taxonomy c on t.term_id=c.term_id where taxonomy='glo_domaine'"; $r_t=mysqli_query($link_wcdb,$sql); $return="