Fonctions utilisables dans les templates
Les templates sont composés de code HTML et de fonctions spécifiques.
Ces fonctions sont systématiquement définies sous la forme : #nom_de_la_fonction(parametre_1, parametre_2, ...);.
Les paramètres peuvent être eux-mêmes des fonctions imbriquées les unes dans les autres.
Remarque
Certains caractères comme la virgule sont utilisés pour délimiter les fonctions de templates et leurs paramètres éventuels ; pour utiliser ces caractères comme de simples caractères de ponctuation à l'intérieur des fonctions (par exemple pour désigner la virgule comme le séparateur entre des auteurs), ils doivent être immédiatement précédés de \ (anti-slash).
Attention
Les fonctions suivantes sont des fonctions valables pour la version 4.1 de PMB.
Pour connaître l'ensemble des fonctions disponibles sur votre version, vous pouvez ajouter le chemin suivant à la suite de votre url :
/includes/interpreter/doc/
et ensuite cliquer sur le bouton Fonctions de template de notice
.
Par exemple, sur une base dont l'adresse est http://mabibli.fr/pmb/ , l'adresse des fonctions sera alors :
http://mabibli.fr/pmb/includes/interpreter/doc/
Fonction | Commentaires |
---|---|
#author(); | Affiche l'auteur principal de la notice. |
#author_1(); | Affiche les autres auteurs de la notice. |
#author_2(); | Affiche les auteurs secondaires de la notice. |
#authors(param0,param1,param2, param3,param4,param5); | Affiche les auteurs de la notice. param0 = 0=principal seul, 1=principal+autres, 2=tous param1 = nombre maxi d'auteurs à afficher param2 = séparateur entre auteurs param3 = séparateur entre principal/autres/secondaires param4 = afficher la fonction (0=non, 1=toujours) param5 = afficher "et al." si plus d'auteurs que le maxi à afficher fixé en param1 (0=non, 1=oui) |
#authors_by_type(param0, param1,param2,param3, param4,param5,param6); | Affiche les auteurs de la notice en fonction de leur type (physique, collectivités, congrès) en renvoyant la fonction : param0 = 0=principal seul, 1=principal+autres, 2=tous param1 = nombre maxi d'auteurs à afficher param2 = séparateur entre auteurs param3 = séparateur entre principal/autres/secondaires param4 = afficher la fonction (0=non, 1=toujours) param5 = afficher "et al." si plus d'auteurs que le maxi à afficher fixé en param1 (0=non, 1=oui) param6 = 70=physique, 71=collectivités, 72=congrès (séparé par "\,") |
#authors_by_type_dir(param0, param1,param2,param3,param4, param5,param6); | Affiche les auteurs de la notice en fonction de leur type (physique, collectivités, congrès) en renvoyant la mention dir. entre parenthèses pour le ou les directeurs de publication (code 651) : param0 = 0=principal seul, 1=principal+autres, 2=tous param1 = nombre maxi d'auteurs à afficher param2 = séparateur entre auteurs param3 = séparateur entre principal/autres/secondaires param4 = afficher la fonction (0=non, 1=toujours) param5 = afficher "et al." si plus d'auteurs que le maxi à afficher fixé en param1 (0=non, 1=oui) param6 = 70=physique, 71=collectivités, 72=congrès (séparé par "\,") |
#authors_by_type_with_tpl(param0, param1,param2,param3,param4, param5,param6,param7); | Affiche les auteurs de la notice en fonction de leur type (physique, collectivités, congrès), selon une mise en forme à définir : param0 = 0=principal seul, 1=principal+autres, 2=tous param1 = nombre maxi d'auteurs à afficher param2 = séparateur entre auteurs param3 = séparateur entre principal/autres/secondaires param4 = afficher la fonction (0=non, 1=toujours) param5 = afficher "et al." si plus d'auteurs que le maxi à afficher fixé en param1 (0=non, 1=oui) param6 = 70=physique, 71=collectivités, 72=congrès (séparé par "\,") param7 = format d'affichage des auteurs, à définir à partir des éléments suivants : {name} = nom ou élément d'entrée {rejete} = prénom ou élément rejeté {function} = fonction de l'auteur dans la notice {author_comment} = commentaire de l'auteur |
#avis(param0,param1,param2); | Affiche les avis des lecteurs de la notice : param0 = mode d'affichage de la note (0=ne pas afficher, 1=sous forme d'étoiles, 2=sous forme textuelle, 3=sous forme textuelle et étoiles) param1 = affiche le nom du lecteur (0=non, 1=oui) param2 = nombre maxi d'avis à afficher |
#avis_with_tpl(param0,param1,param2); | Affiche les avis des lecteurs de la notice : param0 = nombre maxi d'avis à afficher param1 = séparateur entre les avis param2 = nom des champs à afficher (note, sujet, commentaire, empr_nom...) |
#categories(param0,param1,param2, param3,param4); | Affiche les catégories (descripteurs) issues des thésaurus : param0 = id du ou des thésaurus (séparés par une virgule), 0 pour tous param1 = séparateur entre catégories param2 = séparateur entre thésaurus param3 = langue à prendre en compte param4 = afficher le nom du ou des thésaurus en entête (0=non, 1=oui) |
#collation(); | Affiche les informations de collation ou de pagination de la notice. |
#collection(); | Affiche la collection et l'ISSN de la notice. |
#collection_with_tpl(param0); | Affiche les informations de la collection selon : param0 = nom des champs à afficher (name, editeur, issn, comment...) |
#complement_title(); | Affiche le complément du titre de la notice. |
#contenu(); | Affiche la note de contenu de la notice. |
#cost(); | Affiche le prix de la notice. |
#date_publication(); | Affiche la date de publication de la notice. |
#expl(); | Affiche un tableau HTML contenant les informations des exemplaires de la notice : support, sur-localisation, localisation, section, cote, code-barres, statut |
#expl_by_field(param0,param1,param2, param3); | Affiche les exemplaires de la notice selon : param0 = nombre maxi d'exemplaires à afficher param1 = séparateur entre exemplaires param2 = noms des champs de l'exemplaire à afficher (expl_cote, statut_libelle...) param3 = filtres des exemplaires (location=1) |
#expl_num(); | Affiche les documents numériques associé à la notice. |
#expl_num_with_tpl(param0,param1, param2,param3); | Affiche les documents numériques associé à la notice selon : param0 = nombre maxi de documents numériques à afficher param1 = séparateur entre documents param2 = 0=tous, 1=sans statut, 2=avec statut param3 = format d'affichage des documents numériques |
#get_expl(); | Affiche un tableau composé de clés et de valeurs contenant les informations des exemplaires de la notice : clé = nom du champ de l'exemplaire valeur = valeur du champ de l'exemplaire |
#img(); | Affiche la vignette de couverture de la notice. |
#img_url(); | Affiche le lien vers la vignette de couverture de la notice. |
#indexint(param0,param1,param2, param3,param4,param5); | Affiche l'indexation décimale de la notice param0 = séparateur param1 = afficher le nom du plan de classement (0=non, 1=oui) param2 = séparateur param3 = afficher l'indice (0=non, 1=oui) param4 = séparateur param5 = afficher le commentaire (0=non, 1=oui) |
#isbd(); | Affiche la partie de l'ISBD suivant les auteurs pour la notice. |
#isbn(); | Affiche l'ISBN de la notice. |
#lang (); | Affiche les langues de la notice. |
#lang_or(); | Affiche les langues originales de la notice. |
#mention_edition(); | Affiche la mention d'édition. |
#msg(param0); | Affiche un intitulé de l'OPAC param0 = libellé du message de l'OPAC ( |
#note(); | Affiche la note générale de la notice. |
#notice_field(param0); | Affiche le champ (param0) correspondant de la notice, ce champ étant celui défini dans la table notices. |
#p_perso(param0,param1); | Affiche le champ personnalisé de notice : - param0 = nom du champ personnalisé - param1 = affiche le titre du champ (0=non, 1=oui) |
#page(); | Affiche l'importance matérielle ou la pagination de la notice. |
#parallel_title(); | Affiche le titre parallèle de la notice. |
#permalink(); | Affiche le permalien de la notice dans l'OPAC. |
#publisher(); | Affiche le premier éditeur de la notice. |
#publisher_1(); | Affiche le second éditeur de la notice. |
#publisher_name(); | Affiche le nom du premier éditeur de la notice. |
#publisher_place(); | Affiche le lieu du premier éditeur de la notice. |
#publisher_1_name(); | Affiche le nom du second éditeur de la notice. |
#publisher_1_place(); | Affiche le lieu du second éditeur de la notice. |
#publisher_with_tpl(param0); | Affiche les informations du premier éditeur de la notice selon : param0 = nom des champs à afficher (name, adr1, pays, link, ed_comment...) |
#publisher_1_with_tpl(param0); | Affiche les informations du second éditeur de la notice selon : param0 = nom des champs à afficher (name, adr1, pays, link, ed_comment...) |
#resume(); | Affiche le résumé de la notice. |
#serie_with_tpl(param0); | Affiche les informations de la série selon : param0 = nom des champs à afficher |
#typdoc(); | Affiche l'identifiant du type de document de la notice. |
#title(); | Affiche le titre de la notice. |
#url(); | Retourne l'url associée de la notice. |
#year_publication(); | Affiche l'année de publication de la notice. |
Fonction | Commentaire |
---|---|
#collstate(); | Affiche un tableau HTML contenant les informations des états des collections d'une notice de périodique : sur-localisation, localisation, emplacement, cote, support, statut, origine, collection, lacunes |
#date_bulletin(); | Affiche la date de bulletin de la notice. |
#issn(); | Affiche l'ISSN de la notice. |
#nom_revue(); | Affiche le nom du périodique si la notice est une notice de périodique, de bulletin ou d'article. |
#numero_bulletin() ; | Affiche le numéro de bulletin de la notice. |
#titre_bulletin(); | Affiche le titre du bulletin. |
Fonction | Commentaire |
---|---|
#get_childs_in_tpl(); | Affiche les notices filles de la notice courante. |
#get_parents_in_tpl(); | Affiche les notices mères de la notice courante. |
#linked_id(param0,param1); | Affiche les notices liées selon : param0 = down=descendant, up=ascendant/horizontal param1 = identifiant du type de relation (séparée par ",") |
#parents_authors_by_type_with_tpl( param0,param1,param2,param3, param4,param5,param6,param7); | Affiche les auteurs de la notice mère en fonction de leur type (physique, collectivités, congrès), selon une mise en forme à définir param0 = 0=principal seul, 1=principal+autres, 2=tous param1 = nombre maxi d'auteurs à afficher param2 = séparateur entre auteurs param3 = séparateur entre principal/autres/secondaires param4 = afficher la fonction (0=non, 1=toujours) param5 = afficher "et al." si plus d'auteurs que le maxi à afficher fixé en param1 (0=non, 1=oui) param6 = 70=physique, 71=collectivités, 72=congrès (séparé par "\,") param7 = format d'affichage des auteurs, à définir à partir des éléments suivants : {name} = nom ou élément d'entrée {rejete} = prénom ou élément rejeté {function} = fonction de l'auteur dans la notice {author_comment} = commentaire de l'auteur |
#parents_mention_edition(); | Affiche la mention d'édition de la notice mère. |
#parents_page(); | Affiche l'importance matérielle ou la pagination de la notice mère. |
#parents_publisher_name(); | Affiche le nom du premier éditeur de la notice mère. |
#parents_publisher_place(); | Affiche le lieu du premier éditeur de la notice mère. |
#parents_title(); | Affiche le titre de la notice mère. |
#parents_year_publication(); | Affiche l'année de publication de la notice mère. |
Fonction | Commentaire |
---|---|
#a_empty(param0,param1); | Affiche param1 avant param0 si param0 est vrai sinon n'affiche rien. |
#b_empty(param0,param1); | Affiche param1 après param0 si param0 est vrai sinon n'affiche rien. |
#if(param0,param1,param2); | Affiche param1 si param0 est vrai sinon affiche param2. |
#ifequal(param0,param1,param2,param3); | param0,param1 : chaînes de caractères à comparer param2 = affiche param2 si les valeurs param0 et param1 sont égales param3 = affiche param3 si les valeurs param0 et param1 ne sont pas égales |
#not_empty(param0,param1); | N'affiche rien si param0 est vide, sinon affiche param1. |
Fonction | Commentaire |
---|---|
#ellipse(param0,param1,param2); | Permet de limiter la taille d'une chaîne de caractères: param0 = chaîne de caractères à couper param1 = nombre maxi de caractères à afficher param2 = chaîne de remplacement |
#extract_path(param0,param1); | Extrait une chaîne de caractères dans une expression à partir d'une expression régulière. param0 = expression régulière param1 = expression |
#format_date(param0,param1); | Affiche une date dans une mise en forme spécifiée. param0 = format param1 = date |
#gen_tpl(tableau,param0,option); | Le paramètre tableau est composé d'un ensemble de clés et de valeurs. Pour chaque valeur de tableau, la fonction retourne le param0 après y avoir remplacé : - les motifs !!cle!! par les valeurs correspondantes - les motifs !!p_perso_cle!! par les valeurs de champs personnalisés correspondantes - les motifs !!parity!! par odd ou even |
#gen_plus(param0,param1,param2); | Affiche un bloc dépliable plié ou déplié avec : param0 = titre du bloc (seule partie visible si le bloc est plié) param1 = contenu du bloc (visible si le bloc est déplié) param2 = 0 =bloc plié, 1=bloc déplié |
#get_notice_tpl(param0); | Affiche la notice selon un autre template : param0 = identifiant du template à utiliser pour l'affichage |
#group(param0,param1,param2,#{param3};); | Permet de créer un template d'affiche à l'intérieur d'un template : param0 = identifiant des notices (la fonction #linked_id(); peut être utilisée) param1 = nombre de notices maxi à affichées param2 = séparateur entre notices param3 = template à appliquer sur les notices récupérées avec param0 ; le nouveau template doit être entouré de "#{" devant et doit se conclure par "};". |
#header_link(param0,option); | Affiche un lien vers la notice dans l'OPAC avec : - param0 = titre du lien - option = si 2 affichage de l'url associée |
#is_article(); | Affiche vrai (=1) si la notice est une notice d'article, sinon affiche faux (=0). |
#is_bull(); | Affiche vrai (=1) si la notice est une notice de bulletin, sinon affiche faux (=0). |
#is_mono(); | Affiche vrai (=1) si la notice est une notice de monographie, sinon affiche faux (=0). |
#is_serial(); | Affiche vrai (=1) si la notice est une notice de périodique, sinon affiche faux (=0). |
#lastchr(param0); | Affiche le dernier caractère de la chaîne param0. |
#replace(param0,param1); | Affiche param0 après y avoir remplacé le motif !!param1!! par la valeur du paramètre param1. |
#str_replace(param0,param1,param2); | Remplace une chaîne de caractères par une autre dans une expression. param0 = chaîne à rechercher param1 = chaîne à insérer param2 = expression |
#strtolower(param0); | Affiche la chaîne de caractères param0 en minuscule. |
#strtoupper(param0); | Affiche la chaîne de caractères param0 en majuscule. |
#substr(param0,param1,param2); | Affiche une partie de la chaîne param0. param0 = chaîne de caractères param1 = numéro du caractère de début de la sous-chaîne à extraire param2 = numéro du caractère de fin de la sous-chaîne à extraire. param2 est facultatif, si absent la sous-chaîne aura pour fin le dernier caractère de param0. |
#trim(param0); | Affiche param0 après avoir supprimé les espaces avant et après la chaîne de caractères. |
#ucfirst(param0); | Affiche la chaîne de caractères param0 avec la première lettre en majuscule. |
ExempleTitre : sous-titre / Auteur principal / Editeur / Année d'édition / Résumé⚓
Truc & astuce
Si vous ne maîtrisez pas le langage HTML, n'hésitez pas à vous servir d'un éditeur HTML incorporé à votre navigateur.