Plugin Identifiants

Donner des identifiants textes uniques aux objets.

Documentation à jour pour la version 2

Objet du plugin

Ce plugin est un outil à destination des intégrateur⋅ices : il permet d’attribuer des identifiants textes, uniques ou non, à tous les types de contenus.

Cela permet de cibler préciséments ces contenus dans vos boucles ou requêtes SQL, sans avoir recours à des méthodes moins fiables ou plus compliquées : n° de clé primaire, champs « détournés », mots-clés, etc.

Il s’agit tout simplement d’un champ identifiant ajouté sur les tables concernées, complété par des vérifications de format et d’unicité.

Fonctionnement

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é

Les identifiants peuvent être uniques ou réutilisables, le fonctionnement peut être changé dans la configuration du plugin.

Lorsque le mode unique est activé, les identifiants ne sont alors utilisables qu’une seule fois pour chaque type d’objet.

Autres plugins

D’autres plugins proposent des objets ayant nativement un champ identifiant, comme les formulaires du plugin Formidable ou les Sélections éditoriales par exemple. On peut utiliser les plugins de concert, leur fonctionnement n’est pas perturbé.

Utilisation dans les squelettes

Critère {identifiant}

Un simple critère qui correspond au nom de la colonne, et s’utilise classiquement :

<BOUCLE_x(ARTICLES) {identifiant = truc}>
<BOUCLE_y(RUBRIQUES) {identifiant?}>
<BOUCLE_z(PATATES) {identifiant = #GET{mon_param}}>
etc.

Balise #IDENTIFIANT

La balise #IDENTIFIANT peut s’utiliser de 2 façons :

  • Sans paramètre si l’on est dans une boucle : #IDENTIFIANTS
  • 2 paramètres objet et id_objet : #IDENTIFIANTS{article, 10}

Utilisation dans l’espace privé

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édacteur⋅ices ni même les administrateur⋅ices.

L’autorisation peut être surchargée au besoin.

Configuration

On peut choisir quels types de contenus peuvent se voir attribuer 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.

La config permet également de choisir si les identifiants peuvent être réutilisables ou non : activer l’option désactive la vérification de l’unicité lors de l’édition.

Capture d'écran de la page de configuration du plugin Identifiants
Configuration du plugin Identifiants

Édition

Lors de l’édition des contenus, le champ identifiant est ajouté sous le titre. À défaut de titre, il sera présent au niveau des champs extras, en bas du formulaire.

Capoture d'écran montrant un formulaire d'édition d'article avec un champ identifiant
Édition d’un identifiant

Aperçu

En mode aperçu, les identifiants sont visibles sous le numéro du contenu, dans la boîte d’infos sur le côté.

Capture d'écran montrant un identifiant texte sous le numéro d'un article
Aperçu d’un identifiant

Page de contrôle

Une page de contrôle vous permet de voir tous les identifiants existants, avec des filtres par type de contenu.

Capture d'écran de la page de contrôle des identifiants
Page de contrôle des identifiants

Technique

À partir de la version 2, les identifiants sont stockés directement dans les tables des objets activés : une colonne identifiant est ajoutée automatiquement lorsqu’on choisit des objets dans la configuration du plugin.

Celle-ci est supprimée lors de la désinstallation ou lorsqu’on déselectionne les contenus dans la config.

Les tables possédant nativement une colonne identifiant ne sont pas concernées : pas de risque de perte de données pour celles-ci (formulaires formidable, sélections éditoriales, etc).

Avant la version 2, les identifiants étaient stockés dans une table auxiliaire spip_identifiants.

Discussion

Aucune discussion

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

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