Couteau KISS

Un plugin simple, léger et rapide, pour configurer les réglages cachés de SPIP en une seule page.

Les œufs de pâques de SPIP

SPIP propose un certain nombre de petits réglages configurables simplement par une ligne de code. Le couteau KISS propose une page de configuration pour ce faire.

C’est avant tout un plugin léger, simple et rapide, qui n’alourdira pas votre site, et auquel vous pouvez faire confiance : il ne vous lâchera pas à moitié ouvert.

Les réglages proposés

Vous pouvez accéder à la page de configuration par le menu principal « Configuration » de SPIP. Elle se décompose en 4 sections.

Site public

Vous pouvez définir

  • le dossier où sont rangés vos squelettes ;
  • la suppression automatique des numéros en début de titre (utilisés pour classer vos articles, mais disgracieux sur le site public !) ;
  • le forçage de la langue pour les sites multilingues ;
  • l’interdiction de la directive <base> si vous rencontrez un cas où SPIP l’insère à tort dans vos pages (cas des sites multi-domaines de profondeur différente).

Contrôle du cache

Vous pouvez forcer la mise à jour permanente du cache, ou au contraire forcer le cache à ne jamais se mettre à jour (sauf par un calcul manuel à votre initiative).

Vous pouvez préciser la durée par défaut du cache, ainsi que la durée de mise en cache spécifique aux recherches en base.

Depuis SPIP 2.0, toute publication de nouveau contenu invalide automatiquement toutes les pages du cache. Si cette option vous pose problème vous pouvez ici la désactiver.

Images, logos et documents

Cette partie vous permet de règler les options de taille maximum des images, logo et documents au moment de leur téléchargement. Si la taille maximale est dépassée, le fichier sera refusé.

La première option permet à SPIP de placer automatiquement en mode document les images téléchargées supérieures à une largeur fixée. Si vous laissez cette option vide, les images seront toujours téléchargées en mode image.

Espace privé

La dernière section de la page vous permet de règler la longueur minimale des logins acceptés. Cette option vous permet de renforcer la sécurité de votre site.

Vous pouvez aussi modifier le nombre d’articles et autres objets éditoriaux de SPIP affichés dans les listes de l’espace privé (10 par défaut).

SPIP compresse automatiquement les fichiers javascript et css de l’espace privé, si cela vous pose un problème vous pouvez désactiver cette option, au détriment de la vitesse d’affichage.

Enfin, par défaut, SPIP interdit l’exécution du javascript situé dans les articles quand vous êtes dans l’espace privé. Vous pouvez enlever cette interdiction, mais ne le faites que si vous êtes seul à gérer votre site ou que vous avez entière confiance dans les autres administrateurs du site.

Enregistrement des réglages

Le couteau KISS crée directement un fichier PHP tmp/ck_options.php avec vos réglages. Ce mode de fonctionnement garantit la rapidité de votre site.

Mieux encore, lorsque les réglages que vous avez choisis vous conviennent, vous pouvez copier ce fichier dans dans le répertoire config/ sous le nom mes_options.php et désinstaller le plugin.

Ainsi, les réglages seront figés pour votre site, et vous ne serez plus obligé de garder le plugin sur votre site.

Le fichier que vous avez créé peut être réutilisé sur tous vos sites sans problème !

Par ailleurs, si vous videz brutalement le dossier tmp/ de SPIP, il suffit de passer dans le panneau de configuration du couteau KISS pour que celui-ci restaure vos réglages et regénère le fichier tmp/ck_options.php

updated on 2 April 2020

Discussion

19 discussions

  • 4

    Le CS a une lame pour désactiver le jquery de SPIP sur le public. J’étais persuadé de la trouver dans ce plugin aussi...

    • Enlever le jQuery de SPIP est un besoin extrêmement marginal, et pas du tout du niveau du webmestre SPIP débutant voire bricoleur a qui s’adresse le plugin.

      Cela suppose de gérer ensuite les problèmes de compatibilité avec les plugins qui la plupart s’appuient dessus. Si le webmestre n’est pas capable de faire la première opération à la main, je doute qu’il s’en tire avec la suite.

      Ce serait donc faire croire à tort que c’est une intervention bénigne, et assez peu cohérent avec l’objectif du plugin, qui n’est pas d’être une usine à gaz à réglages (ça existe déjà).

    • Ah bin moi ça m’intéresserait de savoir comment virer le jQuery de SPIP. C’est une option activable avec un define() dans mes_options.php ?

    • Et hop :

      Spip 1.9.2 désactiver jQuery dans #INSERT_HEAD : http://www.weblog.eliaz.fr/article38.html

      ++

    Reply to this message

  • Bonjour,

    Si j’ai bien compris le principe du contrôle du cache, en activant l’option “cache à durée limitée”, il n’y a plus besoin de mettre #CACHE... dans le squelette ?

    Merci

    Reply to this message

  • 7

    C’est vrai que MOI, j’ai vite relié ce nouveau plugin Couteau Kiss au très connu Couteau Suisse, dès que j’ai atterri sur la page de Kiss.

    Je pense d’ailleurs que ce dernier utilise en terme de concept, l’idée du couteau suisse, même s’il peut ne partager avec lui aucune ligne de code, cependant il reprend l’essentiel des fonctionnalités intéressantes à paramétrer dans SPIP (chose que fait aussi couteau suisse) sans être une usine à gaz (pour ça c’est vrai !! le KISS c’est plus simple, à la limite pédagogue).

    Je dirais que les deux plugins sont destinés à un public à la fois semblable (des spipeurs! lol) et différent (des néophytes -Suisse - et des utilisateurs plus curieux - Kiss -).

    Ceci dit c’est vrai qu’en terme de logo choisi, c’est assez gênant... c’est presque pareil, y a que le drapeau suisse qui manque !! Il faudrait trouvé un autre logo ou en faire un nouveau (je suis ok pour en faire un pour le Kiss).

    J’espère que tous les développeurs et autres continuerons à faire de leur mieux pour améliorer SPIP directement (core) ou indirectement (Plugins, Squelettes, Thèmes, ...), au lieu de gaspiller de l’énergie à ruiner ou dé-classifier le travail de l’un ou de l’autre.

    @+ et vive SPIP !

    PS : ceci dit, le seul reproche à faire à l’auteur du couteau suisse, c’est qu’il a améliorer certains plugins dans le sien, qu’il utilise comme lame ayant repris leur code, sans permettre à ces derniers d’en bénéficier à leur tour de ses améliorations...là c’est un autre débat !

    Bizarre j’ai posté en réponse à la discussion entre Patrice Vanneufville et Cedric Morin, mais cela est passé comme si j’avais entamé une nouvelle !

    • le seul reproche à faire à l’auteur du couteau suisse, c’est qu’il a améliorer certains plugins dans le sien, qu’il utilise comme lame ayant repris leur code, sans permettre à ces derniers d’en bénéficier à leur tour de ses améliorations...

      Ceci est dû à plusieurs raisons, notamment :

      -  Le cadre du Couteau Suisse formant une certaine API et offrant un confort certain pour les différents outils (mode impression, compilation des traitements et des pipelines, hiérarchisation des options, nombreuses autorisations sur les outils/variables/valeurs par défaut, actions rapides, compatibilité SPIP en multi-version, facilités typographiques, icônes en barre typo, lames persos, etc., etc.).
      -  La volonté d’une vraie description des fonctionnalités dans l’intérêt des néophytes et intégrant en son sein une configuration facile des différentes variables utiles, incompatible avec CFG.
      -  De vraies divergences dans les concepts entre certaines lames du Couteau Suisse et les plugins autonomes (ex. : En Travaux).
      -  Le refus de la multiplication des plugins induisant une interface ingérable (SPIP 2.1 ne me convainc qu’à moitié).
      -  Une totale liberté laissée aux utilisateurs de modifier le code d’un plugin qu’ils préfèrent autonome, en fonction (ou non!) de l’évolution qui peut avoir lieu au sein du Couteau Suisse.
      -  Le refus d’une pensée unique.
      -  Et enfin, une volonté personnelle à circonscrire mon travail, notamment le SAD.

      • Le cadre du Couteau Suisse formant une certaine API et offrant un confort certain

        La sélection naturelle ne semble pas donner à cette API au confort certain le succès qu’elle mérite ...

      • une vraie description des fonctionnalités

        Pourquoi ne pas enrichir et améliorer la documentation commune et collective ?

      • Le refus de la multiplication des plugins induisant une interface ingérable

        Depuis le debut du couteau suisse je regrette que tu ne proposes qu’une surcouche usine à gaz plutot qu’une amélioration de l’existant

      • Une totale liberté laissée aux utilisateurs de modifier le code d’un plugin qu’ils préfèrent autonome

        Langue de bois pour ne pas prononcer le mot fork

      Bref, la vraie volonté de faire un truc tout seul dans ton coin qui améliore le monde selon ta vision plutôt que de partager et enrichir la communauté par un travail collectif, comme tu le reconnais à la fin. Avec par dessus tout une notion assez approximative du droit d’auteur.

    • C’est dommage, ce dénigrement public du travail d’autrui caractérise aujourd’hui l’ensemble de tes interventions sur un plugin que tu n’utilises même pas, tout en créant dans ton coin un plugin doublon. Je ne vois pas beaucoup l’intérêt de cet archarnement qui frise effectivement le comique.

      Le Couteau Suisse s’adresse à des utilisateurs souvent débutants qui n’ont pas (encore) les moyens que tu as, et qui peut-être dans quelque temps, pourront se passer de ce plugin en mettant à leur tour les mains dans le camboui, comme l’oblige SPIP le plus souvent. Je suis en relation avec beaucoup d’entre eux, dont la plupart ne savent même pas ce qu’est SVN [1]. Alors je contribue à ce que ces personnes très respectables ne se détournent pas de SPIP, mais pensent plutôt à l’adopter à leur rythme.

      Bref, un Couteau Suisse compilé n’est pas du tout une usine à gaz et les auteurs sont respectés et cités dans chaque lame du plugin et dans toutes les docs. Je respecte ton travail, merci de faire de même.

    • Patrice : honnetment je te dis mon opinion. J’étais très content du projet initial de tweak qui permettait d’activer des fonctions cachés de spip qu’on ne pouvait activer que via mes_options.php

      force est de constatet que le couteau suisse est devenue une uzine à gaz bien loin du projet initial. Le couteau kiss, en dehors du choix du nom, reprend ce projet initial.

      Point. pour les reste, a vrai dire je m’en fiche. Mais je n’utilise plus le couteau suisse, qui me semble être une vértiable usine à gaz.

    • Bon, tout le monde est d’accord (y compris son auteur !) pour dire que le couteau suisse est un ensemble de codes (lames) issus à l’origine de plugins préexistants, auxquels, il ne contribue pas en retour de ses propres améliorations et modifications, en gros oui c’est un fork, mais je dirais et alors où est le problème ? un fork peut exister...a lui de faire ses preuves !

      Son auteur a choisi une voie qui n’est pas celle d’autres développeurs, certes partageant moins que les autres (un peu quand même), s’isolant (ce dont j’en déduit des remarques des autres développeurs), mais moi ce qui m’intéresse c’est que les SPIPEURS eux, puissent continuer à utiliser SPIP, avec ou sans couteau suisse !

      J’espère que tout le monde est d’accord que la primeur est à SPIP, après les utilisateurs choisiront d’eux même d’adopter ou pas tel ou autre plugin.

      J’aurai aimé néanmoins que l’auteur du couteau suisse, puisse un jour apporter des améliorations aux plugins originaux (et non similaires ! même si similaire en terme de fonctionnalités !) de ses lames, ainsi ça serait un juste retour des choses !

      @+

    • @Maïeul : merci pour ton opinion, nous avions déjà discuté du sujet. Pour rappel, le couteau suisse compile deuis ses 3 ans d’existence, mes_options, mes_fonctions, tout comme les CSS, les scripts JS et JQ, les traitements de balises et les pipelines. Cela lui permet de créer toutes sortes de lames, nous sommes bien d’accord. Le couteau kiss (que l’on devrait sûrement appeler «Options SPIP») semble se contenter pour l’instant d’une seule compilation du fichier mes_options. L’avenir dira si cela suffira, mais personnellement, j’en doute déjà. A quand «Fonctions SPIP» ou «Trousse à Fonctions» ?

      @SuperYMS : Oui, la primeur est à SPIP et ses utilisateurs sauront faciement faire les choix qui correspondent à leurs intérêts. Sur les 65 lames du Couteau Suisse, il y en a une vingtaine qui sont basées sur des travaux antérieurs ou contemporains à des plugins autonomes. Auxquels penses-tu lorsque tu me demandes de reverser des améliorations ?

    • Je pense aux lames suivantes :

      -  Blocs dépliables (cette lame est vraiment super)
      -  Balises #TITRE_PARENT/OBJET
      -  Sommaire pour les articles (même si je n’utilise jamais cette fonction !)

      @+

    Reply to this message

  • 1
    djinnoll

    Cela risque tout de même de boguer la trousse à Tetue

    • Non, ces deux plugins cohabitent en harmonie. Par contre certains réglages sont surchargés par la Trousse à Têtue qui a le dernier mot. Je ne sais pas ce qui aurait préférable, ni s’il y a grand intérêt à utiliser ces deux plugins en même temps.

    Reply to this message

  • 3

    Donc...

    Pourquoi la contrib originale de ce «projet clone» n’est-elle pas citée ?

    Je répare ce très regrettable oubli : Le Couteau Suisse.

    • Parce qu’elle ne reprend aucune ligne de code et que j’ai bien compris que dans ton esprit le plagiat se mesurait au nombre de lignes de code recopiées.

      Par ailleurs le seul point commun avec la contribution que tu cites est le terme “couteau” dans le nom du plugin.

      Enfin, on ne peut pas dire que le couteau Kiss ait copié le côté usine à gaz de ta contribution, qui en garde la primeure et toute son originalité.

    • Rires... Je vois que ton honnêteté est sélective, tes arguments sont tellement surprenants. En effet, tu aurais quand même pu trouver un nom de plugin plus original....Allez, je n’alimente donc pas ce vilain troll et je laisse les lecteurs juger, tout en tenant néanmoins à la citation du projet original.

    • C’est toi qui a ouvert la porte à cette position : en t’indignant que je fasse tant de cas sur les crédits d’une contribution au prétexte qu’elle ne faisait qu’une seule ligne de code, passant par là même à la trappe tout le reste (l’idée, le nom, le principe ...), tu m’a autorisé implicitement à inverser la situation.

      Je suis donc pleinement dans le cadre de la jurisprudence PatV et du peu de cas que tu fais des droits d’auteur : je n’ai copié aucune ligne de code, ma contribution est donc tout aussi originale que la tienne.

      Et même bien plus, puisqu’elle apprend au webmestre à s’en passer, au lieu de le rendre esclave d’une boite noire, poursuivant là un vrai but pédagogique.

    Reply to this message

  • 2
    StephBretagne

    Bonjour Cédric,

    J’utilise ton super plugin sur les conseils d’Eric de Sarka.

    Mon but unique : garder le cache vide pendant la phase de dév. Mais chez moi cela ne fonctionne malheureusement pas... :
    -  j’active “pas de cache” et enregistre
    -  je vide le cache spip
    -  je fais des modifs
    -  je retourne sur le cache spip, il s’est rempli :-(

    Je suis sous SPIP 2.0.10 [14698] | Sarka-SPIP 3.0.3 [36479] .

    Saurais-tu pourquoi j’ai ce problème ?

    Un grand merci pour ta réponse !!!

    • Oui il y a des fichiers stockés dans le répertoire tmp/cache mais c’est normal. Ce sont des caches intermédiaires de travail (chargement des plugins, liste des tables sql disponibles, ...) ainsi que les squelette compilés.

      Cela ne remet pas en cause l’inhibition du cache des pages du site public, qui sont bien mises à jour à chaque vue. A noter que le couteau Kiss ne désactive le cache que pendant 24h, par sécurité, pour éviter un oubli sur un site en production.

    • StephBretagne

      Bonjour,

      Je te remercie beaucoup pour ta réponse aussi rapide que complète !!!

      Tu as raison, on peut faire des changements sur les pages publiques et ils sont pris en compte malgré la charge indiquée dans “vider le cache”.

      Merci encore !

    Reply to this message

  • Excellent ! le KISS ya pas mieux !

    J en ai reve , tu l as fait ;)

    bonux : pouvoir renommer le fichier et desinstaller le plugin, la c est la noisette sur le cheese cake !

    Reply to this message

  • 1

    Excellent plugin. Il y a là toutes les options que j’utilise généralement avec le couteau suisse!

    Cédric écrit:

    Mieux encore, lorsque les réglages que vous avez choisis vous conviennent, vous pouvez copier ce fichier dans dans le répertoire config/ sous le nom mes_options.php et désinstaller le plugin.

    Est-ce que le fait de désinstaller le plugin et de copier/coller le fichier mes_options est une meilleure solution ?? L’installation de ce plugin n’allourdi pas vraiment spip, non ?

    Merci pour le plugin

    • Copier les réglages dans le fichier mes_options.php et désinstaller le plugin permet de figer la configuration pour que d’autres admin n’y touchent plus, et ça allège donc SPIP d’un plugin.

      Le plugin a un impact minimal en terme de performance car il est vraiment optimisé et réduit à sa plus simple expression, mais un impact tout de même comme tout plugin. Donc dans certains contextes ce peut être utile de pouvoir l’enlever.

      Mais le garder installé est tout aussi possible et défendable.

    Reply to this message

  • Stanislas

    J’apprécie beaucoup le concept du plugin qui aide à se passer du plugin... ef-fi-cace... décidément très fort Cédric Morin.

    Reply to this message

Comment on this article

Who are you?
  • [Log in]

To show your avatar with your message, register it first on gravatar.com (free et painless) and don’t forget to indicate your Email addresse here.

Enter your comment here

This form accepts SPIP shortcuts {{bold}} {italic} -*list [text->url] <quote> <code> and HTML code <q> <del> <ins>. To create paragraphs, just leave empty lines.

Add a document

Follow the comments: RSS 2.0 | Atom