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/

Liste des fonctions bibliographiques

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 (/pmb/opac_css/includes/messages/fr_FR.xml)

#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.

Liste des fonctions spécifiques pour les articles, les notices de bulletins et les périodiques

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.

Liste des fonctions des notices liées

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.

Liste des fonctions conditionnelles

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.

Liste des fonctions outils

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.