[spip-dev] autoriser php dans les articles

Bonjour,
  Tout d'abord, comme je viens de m'inscrire à l'instant, j'me
présente : Christian Lefebvre, alias Pif (déjà membre de spip-user y'a
longtemps, mais le projet ayant capoté, j'avais laissé tout ça de coté).
  J'utilise Spip pour le site web d'une association. C'est encore en
dev, mais dès que ça sera officiel, je vous demanderai votre avis :wink:

  En attendant, pour des besoins assez tordus, j'ai voulu autoriser
l'insertion de code php dans le texte des articles et brèves (comment
ça "c'est pas bien" ;-).
  Pour ça, j'ai patché la version que j'utilise de façon à créer une
option "interdire le php dans le texte", à "oui" par défaut, dans
configuration/contenu du site/contenu des articles.

  J'ai cru voir dans les archives de la liste spip-user qu'il y avait
des réticences à autoriser cela (pour des raisons de sécurité que je
comprend tout à fait), mais je trouve que c'est un bon compromis d'en
faire une option qui permette d'autoriser ça "explicitement" dans les
cas où on considère que ça n'est pas trop risqué.

  Si vous êtes d'accord pour "officialiser" cette modif, dites moi quoi,
j'enverrai le code du patch.
  Sinon ... le troll est ouvert :slight_smile:

À+, Pif.

En attendant, pour des besoins assez tordus, j'ai voulu autoriser
l'insertion de code php dans le texte des articles et brèves (comment
ça "c'est pas bien" ;-).
Pour ça, j'ai patché la version que j'utilise de façon à créer une
option "interdire le php dans le texte", à "oui" par défaut, dans
configuration/contenu du site/contenu des articles.

Ton patch m'intéresse. J'ai des besoin similaire pour gérer un diplôme avec
sa propre base de donnée.

J'ai cru voir dans les archives de la liste spip-user qu'il y avait
des réticences à autoriser cela (pour des raisons de sécurité que je
comprend tout à fait), mais je trouve que c'est un bon compromis d'en
faire une option qui permette d'autoriser ça "explicitement" dans les
cas où on considère que ça n'est pas trop risqué.

La limitation de cette possibilité à un ou plusieurs secteurs serait
parfaite pour moi. Les autres secteurs étant 'classique'.

Si vous êtes d'accord pour "officialiser" cette modif, dites moi quoi,
j'enverrai le code du patch.
Sinon ... le troll est ouvert :slight_smile:

Cordialement,

Personellement, ça me plaît assez bien. Dans tous les cas, ça vaut au
minimum une contrib. Quand à l'inclusion dans la branche officielle,
quelle est la taille de ton patch, et son impact sur le reclacul d'une
page ?
Un bafouille dans l'aide de l'espace admin de l'espace privé, non ?
Sinon, une gestion article par article, du même type que pour les
forums, permettrait à un admin d'autoriser ou de bloquer le php dans les
articles au cas par cas, ce qui limiterait la possibilité d'inclusion de
code malicieux par un auteur lambda tout juste inscrit cherchant à
récupérer de l'info ou utiliser spip pour autre chose. De toutes
façons, une fois validé, l'article n'est plus modifiable par l'auteur,
donc il n'y a vraiment que les admins qui puissent faire des bêtises
avec le site.

Enfin bon. Personellement, ça m'aiderait bien. Au moins pour certains
articles.

Salut,

  J'ai cru voir dans les archives de la liste spip-user qu'il y avait
des réticences à autoriser cela (pour des raisons de sécurité que je
comprend tout à fait), mais je trouve que c'est un bon compromis d'en
faire une option qui permette d'autoriser ça "explicitement" dans les
cas où on considère que ça n'est pas trop risqué.

Personellement, ça me plaît assez bien. Dans tous les cas, ça vaut au
minimum une contrib. Quand à l'inclusion dans la branche officielle,
quelle est la taille de ton patch, et son impact sur le reclacul d'une
page ?

Honnêtement, je ne crois pas qu'une fonctionnalité aussi technique
(et dangereuse) ait sa place dans la config de SPIP.

Amicalement

Antoine.

Ton patch m'intéresse. J'ai des besoin similaire pour gérer un diplôme avec
sa propre base de donnée.

Je ne l'ai pas sous la main, mais j'essaye de poster ça dès demain.

La limitation de cette possibilité à un ou plusieurs secteurs serait
parfaite pour moi. Les autres secteurs étant 'classique'.

  Là, je n'ai géré ça que par une variable "meta", c'est donc global à
tout le site.
  Pour restreidre à un article ou une rubrique, il faudrait stocker
l'info dans une des tables spip_article* ou spip_rubrique*, et donc
modifier la structure de la bdd.
  Je laisse ça à ceux qui maîtrise mieux que moi le code de spip :wink:

À+, Pif.

> J'ai cru voir dans les archives de la liste spip-user qu'il y avait
> des réticences à autoriser cela (pour des raisons de sécurité que je
> comprend tout à fait), mais je trouve que c'est un bon compromis d'en
> faire une option qui permette d'autoriser ça "explicitement" dans les
> cas où on considère que ça n'est pas trop risqué.

La bonne solution, à mon avis, est de mettre le php qu'on souhaite dans des
fichiers include(), qu'on appelle sélectivement en ajoutant, par exemple,
des mots-clés aux articles qui ont besoin d'inclure ces fichiers.

Si les scripts php associés sont dans le groupe de mots n°10, une boucle du
genre

<BOUCLE_php(MOTS){id_article}{id_groupe=10}><?php
    include('scripts/#TITRE.php');
?></BOUCLE_php>

sera toujours mieux que de mettre du php dans les articles directement...

-- Fil

Wah ... balaise ça !
  En plus ça permet de n'autoriser ça que là où on veut, selon le
squelette.

  Bon, je remballe mon patch, et j'vais modifier le site.
  Merci du tuyau.

À+, Pif.