Plugin Identifiants

Cette contribution ou ce plugin est en phase de test. Des bugs peuvent subsister. N’hésitez pas à les signaler dans le forum ci-dessous.

Donner des identifiants textes uniques aux objets.

Préambule

Lors de l’écriture de squelettes, vous est-il déjà arrivé de devoir sélectionner un article en particulier, ou une rubrique précise ?

Par défaut, le seul champ qui permette d’identifier un objet de façon unique est son numéro : #ID_RUBRIQUE, #ID_ARTICLE, etc.
Mais un numéro, ce n’est pas très parlant !

On peut s’en sortir en choisissant l’objet en fonction d’un mot-clé technique ou de son numéro (la mort dans l’âme !), mais ce ne sont pas des méthodes idéales : un mot-clé n’est pas unique pour un type d’objet, et un numéro ne véhicule aucun sens.

<BOUCLE_x(ARTICLES){id_article=5}>
<BOUCLE_x(ARTICLES){titre_mot=truc}>

Un critère {identifiant}

L’objet de ce plugin est de permettre d’attribuer un identifiant texte unique aux objets, qui pourront ensuite être sélectionnés au moyen du critère {identifiant=x}.

<BOUCLE_x(ARTICLES){identifiant=truc}>
<BOUCLE_y(RUBRIQUES){identifiant=machin}>
<BOUCLE_z(PATATES){identifiant=chose}>
etc.

Format

Un identifiant ne comporte que caractères alphanumériques ou le signe « _ » : pas de majuscule, ni de caractère spécial ou accentué, ni d’espace.
Ex. : Mentions légalesmentions_legales.

Unicité

Un identifiant est unique pour un type d’objet : 2 articles ne peuvent pas avoir le même identifiant toto, mais on peut donner le même identifiant patate à un article et une rubrique par exemple.

Autres plugins

À noter que pour les articles, le plugin Pages uniques utilise le même concept d’identifiant unique avec le champ #PAGE. Cette idée est élargie ici à tout type d’objet.

D’autres plugins proposent des objets ayant déjà un champ #IDENTIFIANT, comme les formulaires du plugin Formidable par exemple. On peut utiliser les plugins de concert, leur fonctionnement n’est pas perturbé.

Utilisation

Par défaut, seuls les webmestres ont la possiblité de voir et modifier les identifiants. C’est une information qui n’a à priori n’a aucun intérêt pour les rédacteurs ni même les administrateurs.
Il est possible que ça évolue par la suite, en attendant, ces 2 autorisations peuvent être surchargées au besoin.

Configurer

Tout d’abord, il faut choisir sur quels types d’objets on peut ajouter des identifiants. Les tables qui possèdent déjà un champ « identifiant » ne sont pas listées, et sont indiquées pour référence dans le descriptif de la saisie.

Configurer
Configuration du plugin Identifiants

Éditer

On peut définir ou modifier les identifiants en éditant les objets : une saisie est ajoutée au formulaire, au niveau des champs extras, en bas.

Éditer
Édition de l’identifiant d’un objet

Voir

Les identifiants sont visibles sous le numéro de l’objet, dans la boîte d’infos à gauche.

Voir
Boîtes infos avec l’identifiant texte sous l’identifiant numérique

Technique

Les identifiants sont stockés dans une table auxiliaire spip_identifiants, qui contient les champs #OBJET, #ID_OBJET, #IDENTIFIANT et #MAJ.

Quand on édite un identifiant et qu’on "l’efface", la ligne correspondante est supprimée dans la table.

Une jointure avec cette table est opérée automatiquement pour tous les objets.

À priori, on utilisera les identifiants avec parcimonie, pour des besoins bien précis.

Discussion

4 discussions

Ajouter un commentaire

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom

Dernière modification de cette page le 9 mai 2018