Champs Extras — introduction

Il est possible d’ajouter des champs supplémentaires aux objets SPIP : les « Champs Extras ».

Principe

Depuis SPIP 3.0.0, l’ajout de champs supplémentaires (Champs Extra) aux objet SPIP est séparée en quatre composants :

  • Un plugin pour déclarer les champs en PHP, objet du présent article.
  • Un plugin, s’appuyant sur le précédent, pour créer et gérer ces champs dans une interface graphique.
  • Deux plugins sur lesquels l’on s’appuie :
    • L’un permettant de gérer les saisies de formulaires liées aux champs extra : « Saisies pour formulaires ».
    • L’un permettant de vérifier les données saisies par le rédacteur ou la rédactrice : « Vérifier »

Déclarer ses champs

Deux possibilités s’offrent à vous :

Utiliser ses champs dans les squelettes

Lire « Champs extras — utilisation dans les squelettes ».

Créer de nouveaux types de saisies

Lire « Créer ses propres saisies ».

Xdebug et Nesting Level

Si vous rencontrez cette erreur : Fatal error : Maximum function nesting level of ’100’ reached c’est que xdebug est actif. Il faut augmenter sa profondeur d’exécution. Par exemple en mettant dans votre config/mes_options.php l’instruction suivante (pensez à ouvrir <?php sur la première ligne et caractère du fichier si ce n’est pas fait, et pas la peine de le fermer)

<?php
ini_set('xdebug.max_nesting_level', 200);

Discussion

Une discussion

  • Bonjour,
    dans l’espace privé, il y a le groupe « Contenu éditorial » avec le champ « Article ». Je l’ai ajouté à un objet « événement ». Comment afficher dans un squelette le résultat de ce champ ? Quand je l’appelle directement pour tester, j’ai bien « article|xxxx » qui s’affiche. Ce que je cherche à faire, c’est récupérer l’ID de cet article pour afficher une partie de son contenu dans mon squelette événement. Ce n’est p-e pas possible ?
    Actuellement, j’utilise des mots-clés pour ça. Mais j’aimerais simplifier les liaisons entre ces objets.
    Le site est ici : https://www.jeunes-talents.org (les événements à venir sont en page d’accueil)

    Merci pour votre aide,
    Rémy

    Répondre à ce message

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