Attention à ne pas avoir les champs clés de plusieurs tables au même nom, un problème de duplicate_names à la génération des fonctions d’autorisation !
utiliser des champs DATETIME (et non pas au format DATE !)
et compléter les fonctions formulaires_editer_objet_verifier()
!
D’après la video montrant version Fabrique 1.13.2 ! . [1]
synthèse initiale
présentation initiale du compagnon
utiliser un répertoire spécifique ./plugins/fabrique_auto
trois onglets : description, sauve-restaur , outils
ergonomie interactive (sur-lignage en rose !), et un fichier
de plugin.xml
à paquet.xml
la Fabrique crée l’ensemble de l’interface privée, mais aucun squelette public (sauf maintenant celui dans ./contenu
[2]). Par contre, les objets éditoriaux déclarés reçoivent un scaffold automatique
la gestion des versions successives : reste à la charge de l’utilisateur [3].
Attention, la version publique de Fabrique utilisait Z , tandis que la version en SVN utilise la nouvelle norme ( spipr ) de Z-core [4]
La préparation du plugin
description : penser aux logos (et activer GD2 dans la configuration de SPIP ! )
paquet
installation : pour prévoir dans prefix_administration.php [5] la gestion-creation de tables, leur mes-à-jour et désinstallation, avc un n° de version de schéma de données, et
configuration pour générer un fichier/formulaire de configuration
fichiers : pour créer automatiquement, (si non indispensables) les autorisations, fonctions, options ou pipelines [6]
insertion de code : rajouter les <utilise nom="z"...
scripts à exécuter
options pour générer plus facilement des exemples de codes dans les fichiers sources du plugin
Reprise d’un objet éditorial
pre construire permet de récupérer depuis une table
description
logos en plusieurs dimensions, générés en PNG et avec les symboles CRUD
table pour la clé primaire, et dans le cas de noms de tables "zarbi", les pluriels/genres depuis le nom de table réelle
champs reprend tous les champs (disponibles, ou nouveaux) : editable / versionné / obligatoire / avec une ponderation-importance ; il vous faut valider les champs éditables, à faire apparaitre dans les formulaires privés.... sinon vos écrans de saisie-modification seront générés, mais vides...
chaque champ saisi peut être proposé pour un type de saisie :input
, textarea
, date
(pour un datetime
)
champs spéciaux identifie des champs de titre, de lien à une rubrique, à une traduction, à une date de publication, un statut (de publication)...
chaines de langues : pré-rempli avec les saisies initiales de Description
Ajout d’un objet editorial
logos
champs
voir les options de saisie (le plugin ! )
chaines de langues : pré-rempli avec les saisies initiales de Description
liaisons
fichiers echaffaudés pour ajouter un formulaire de recherche, et une prévisualisation publique
autorisation
options ajoute des liens dans le menu edition,et dans le menu rapide
récupérer des fichiers dans le backup
désinstaller/ré-installer le plugin a chaque modif...
configurer le droit d’ajout de mots-clés, les révisions, la gestion avancée des URL, les documents joints
Actions évoluées
créer et définir des liens, vers quels objets... (y compris dans l’interface privée)
cela peut porter sur plusieurs objets éditoriaux !
création d’un squelette : chat.html ou contenu/chat.html [7]
insertion de code : à voir...
pour des traitements spécifiques...
Outils
les echappements sur des codes de squelettes....
peupler un objet pour forcer des données à l’installation : crée deux fonctions php dans un source pour mettre en mémoire un tableau de données lues d’une table existente [8] et en déclarer le mappage pour insertion en table SPIP.
Problèmes rencontrés
Tout d’abord, un rappel : la Fabrique étant développée par l’un des les "devs" de la "Team", utilise les dernières possibilités des PHP récents ! Donc, si votre installation ne fonctionne pas bien, essayer avec une version du PHP plus récente (PHP 7.2.x..) pourra sans doute résoudre vos interrogations, car il n’y a pas de messages d’alerte...
des erreurs de gestion dans les Logos(suppression et décalage de leurs index)
la manipulation des tables d’objets editoriaux rajoute facilement des champs SPIP dans les objets ( maj , statut...)
la désinstallation du plugin supprime la table et ses données...
obligatoires : prefix (et catégorie), un logo (traduit en PNG)
paquet-prefix_LG.php => avec nom description slogan
fabrique-prefix.php => (obligatoire) !
l’import de contenu par une table au format CSV (avec le plugin CSVimport) semble nécessiter que l’index exact de la table soit donné en nom de la première colonne du fichier CSV, si les valeurs d’id_xx
doivent être introduites depuis la source CSV, et non en auto-increment...
Article publié le 21 avril 2015, et actualisé en décembre 2020 .
Répondre à cet article