Du PHP dans les boucles SPIP : c'est cadeau

Bonjour,

non je ne cherche pas d'aide cette fois, je partage juste ma stupéfaction en reprenant un petit projet SPIP. Et que vois-je au milieu des boucles (en plus de commentaires mal gérés et un css/HTML qui fait peur) du PHP dans les boucles Oo Alors celle-là je l'avais jamais vu. Un petit aperçu!!!

Pour le menu!
<BOUCLE_couleur(RUBRIQUES){id_secteur}{0,1}>
            <?php
  $couleur_rub = "#[(#DESCRIPTIF|textebrut)]";
         if($couleur_rub == "#") $couleur_rub = "#333";
       ?>
</BOUCLE_couleur>

Il aurait été tellement plus intéressant et simple de créer une classe="color#ID_RUBRIQUE" et attribuer au numéro une couleur… C'était la note rigolote du jour!

Sur ce bonne journée :smiley:

Teenoo

Le 28 octobre 2013 12:25, Laetitia Boiron <boiron.laetitia@gmail.com> a
écrit :

Bonjour,

non je ne cherche pas d'aide cette fois, je partage juste ma stupéfaction
en reprenant un petit projet SPIP. Et que vois-je au milieu des boucles (en
plus de commentaires mal gérés et un css/HTML qui fait peur) du PHP dans
les boucles Oo Alors celle-là je l'avais jamais vu. Un petit aperçu!!!

Pour le menu!
<BOUCLE_couleur(RUBRIQUES){id_secteur}{0,1}>
            <?php
        $couleur_rub = "#[(#DESCRIPTIF|textebrut)]";
         if($couleur_rub == "#") $couleur_rub = "#333";
             ?>
</BOUCLE_couleur>

Il aurait été tellement plus intéressant et simple de créer une
classe="color#ID_RUBRIQUE" et attribuer au numéro une couleur… C'était la
note rigolote du jour!

Peut être après tout dépend du besoin pour ce projet mais bon le code en
SPIP serait :

[(#DESCRIPTIF|textebrut|?{[#(#DESCRIPTIF|textebrut)],#333})]

Sur ce bonne journée :smiley:

à toi aussi.

Teenoo

kent1

Le 28/10/2013 12:33, Quentin Drouet a écrit :

Peut être après tout dépend du besoin pour ce projet mais bon le code en
SPIP serait :

[(#DESCRIPTIF|textebrut|?{[#(#DESCRIPTIF|textebrut)],#333})]

Rien que pour m'amuser, moi j'aurais écrit plus simplement :

#[(#DESCRIPTIF|textebrut|sinon{333})]

Voilou :slight_smile:

MM

Le 28/10/13 12:25, Laetitia Boiron a écrit :

<BOUCLE_couleur(RUBRIQUES){id_secteur}{0,1}>
             <?php
  $couleur_rub = "#[(#DESCRIPTIF|textebrut)]";
          if($couleur_rub == "#") $couleur_rub = "#333";
       ?>
</BOUCLE_couleur>

surtout que là, si un plaisantin malicieux met :
   ";echo 'truc'; //
dans le champ descriptif de la rubrique...

boum.

:smiley:

*TOUJOURS* (toujours !) passer *in fine* le filtre |texte_script
(|texte_script - SPIP) sur des balises
utilisées dans des scripts (php ou js) à l'intérieur des squelettes.

toujours.

Bonjour,

J'ai moi aussi mis du php dans mes boucles du temps de spip 1.7 / 1.8.
J'avais besoin d'une sorte de #COMPTEUR_BOUCLE.

Le 28/10/2013 12:25, Laetitia Boiron a écrit :

non je ne cherche pas d'aide cette fois, je partage juste ma stupéfaction en reprenant un petit projet SPIP. Et que vois-je au milieu des boucles (en plus de commentaires mal gérés et un css/HTML qui fait peur) du PHP dans les boucles Oo Alors celle-là je l'avais jamais vu. Un petit aperçu!!!

Pour le menu!
<BOUCLE_couleur(RUBRIQUES){id_secteur}{0,1}>
             <?php
  $couleur_rub = "#[(#DESCRIPTIF|textebrut)]";
          if($couleur_rub == "#") $couleur_rub = "#333";
       ?>
</BOUCLE_couleur>

Il aurait été tellement plus intéressant et simple de créer une classe="color#ID_RUBRIQUE" et attribuer au numéro une couleur… C'était la note rigolote du jour!

--
Stéphane

Les Voisins Spipeurs : http://www.voisins-spipeurs.net

Bonjour,

Le 28 oct. 2013 à 12:25, Laetitia Boiron <boiron.laetitia@gmail.com> a écrit :

Bonjour,

non je ne cherche pas d’aide cette fois, je partage juste ma stupéfaction en reprenant un petit projet SPIP. Et que vois-je au milieu des boucles (en plus de commentaires mal gérés et un css/HTML qui fait peur) du PHP dans les boucles Oo Alors celle-là je l’avais jamais vu. Un petit aperçu!!!

Pour le menu!
<BOUCLE_couleur(RUBRIQUES){id_secteur}{0,1}>

<?php $couleur_rub = "#[(#DESCRIPTIF|textebrut)]"; if($couleur_rub == "#") $couleur_rub = "#333"; ?>

</BOUCLE_couleur>

Il aurait été tellement plus intéressant et simple de créer une classe=« color#ID_RUBRIQUE » et attribuer au numéro une couleur… C’était la note rigolote du jour!

Oui sauf que dans ta méthode on dépend de l’id de la rubrique ce qui en soit n’est pas très bon (imagine que la personne détruise par erreur sa rubrique puis la re-crée, nouvel id, classe HS), ça oblige par ex le jour ou on crée une nouvelle rubrique à créer dans la css une nouvelle classe … pas très souple . Je pense que le but originel était d’offrir la possibilité de changer de couleur soit en la spécifiant dans le descriptif de la rubrique soit en spécifiant une classe dans ce même descriptif.
Par contre le PHP n’était pas nécessaire, par ex, en considérant qu’on est dans un attribut:

[style=« color: (#DESCRIPTIF|textebrut|?{[(#DESCRIPTIF|textebrut)],#333}); »]

ou

[classe="(#DESCRIPTIF|textebrut|?{[(#DESCRIPTIF|textebrut)],classedefaut}) »]

Peut-être créé à une époque ou les filtres n’étaient pas encore dispos ?

Sur ce bonne journée :smiley:

Teenoo


Pierre.

Bonjour,
oui mais… cette technique aussi malpropre soit elle permettait d obtenir un menu avec des couleurs configurables par les redacteurs… Je suppose qu il suffisait aux redacteurs de remplir le champ #descriptif de l article avec une valeur hexa et ensuite la boucle spip exploitait la valeur php genre : <a style=« color:'<?php echo $couleur_rub?> » et hop ! le titre de la rubrique s affichait dans la couleur choisie par le redacteur, et ce, sur toutes les rubriques existantes ou a venir… manip qu’il n est pas possible a faire en simple css puisqu on ne connait pas a priori les id_rubrique qui vont etre créés par la suite sur le site en prod…
Bien sur, c est pas (plus) comme ca qu il faut faire, on peut utiliser des SET et GET pour remplacer le php, créer une balise dynamique pour ajouter un champ couleur, créer une feuille de style dynamique (ca c est chouette !) et je pense qu il y a 2 ou 3 plugins qui permettent egalement d attribuer une couleur aux differents objets spip, certain meme avec une roue chomatique clicable…
cet exemple permet de mesurer l evolution de spip en quelques années…
triton

Le 28/10/2013 15:28, triton a écrit :

oui mais... cette technique aussi malpropre soit elle permettait d
obtenir un menu avec des couleurs configurables par les redacteurs... Je
suppose qu il suffisait aux redacteurs de remplir le champ #descriptif
de l article avec une valeur hexa et ensuite la boucle spip exploitait
la valeur php genre : <a style="color:'<?php echo $couleur_rub?>" et hop
! le titre de la rubrique s affichait dans la couleur choisie par le
redacteur, et ce, sur toutes les rubriques existantes ou a venir...

D'ailleurs, il existe le plugin Couleur de rubrique

Hier, j'ai eu besoin de l'étendre à "Couleur d'article", j'ai dupliqué tous les fichiers _rubrique en _article, qq remplacements, et ça roule.

Ne pourrait-on pas facilement étendre ce plugin à couleur_objet pour tout objet éditorial ?

--
Stéphane

Les Voisins Spipeurs : http://www.voisins-spipeurs.net

Le truc dans ce site c’est que c’est un bête site vitrine qui n’est pas dynamique… Enfin ça m’a fait un choc! J’avais jamais vu ça :slight_smile: Bon le pire là-dedans a été également l’insertion d’images directes en balises img sans passer par le css pour faire le background, les cadres div. Mes yeux sont tombés!

Teenoo

* Laetitia Boiron tapuscrivait, le 28/10/2013 18:15:

Le truc dans ce site c'est que c'est un bête site vitrine qui n'est pas dynamique… Enfin ça m'a fait un choc! J'avais jamais vu ça :slight_smile: Bon le pire là-dedans a été également l'insertion d'images directes en balises img sans passer par le css pour faire le background, les cadres div. Mes yeux sont tombés!

Méfie-toi de la critique des autres, car celle-ci pourrait
rebondir et revenir à toi et aux sites que tu développent.
Au hasard :
- respect de la hiérarchie de la titraille : http://checklists.opquast.com/fr/accessibilityfirststep/criteria/19248/
- validité du code HTML

Bref, tout ça pour dire qu'il est facile de trouver des défauts au travail des autres.
Est-ce la peine de s'épancher à ce sujet ?

PS : sinon, j'ai vu que tu étais basée non loin de chez moi, faudrait organiser un apéro SPIP, non ?

:wink:
--
RealET

Le 28/10/2013 18:53, RealET a écrit :

* Laetitia Boiron tapuscrivait, le 28/10/2013 18:15:

Le truc dans ce site c'est que c'est un bête site vitrine qui n'est pas dynamique… Enfin ça m'a fait un choc! J'avais jamais vu ça :slight_smile: Bon le pire là-dedans a été également l'insertion d'images directes en balises img sans passer par le css pour faire le background, les cadres div. Mes yeux sont tombés!

Méfie-toi de la critique des autres, car celle-ci pourrait
rebondir et revenir à toi et aux sites que tu développent.
Au hasard :
- respect de la hiérarchie de la titraille : http://checklists.opquast.com/fr/accessibilityfirststep/criteria/19248/
- validité du code HTML

Bref, tout ça pour dire qu'il est facile de trouver des défauts au travail des autres.
Est-ce la peine de s'épancher à ce sujet ?

PS : sinon, j'ai vu que tu étais basée non loin de chez moi, faudrait organiser un apéro SPIP, non ?

:wink:

pas d'accord au départ l'idée est peu être facile mais a l'arrivé on a appris beaucoup
si vous voyez encore des trucs qui vous choque parlez en , ça aide les débutants

moi qui use et abuse encore du html dans les articles

--

Merci beaucoup de vous intéresser à ma problématique
Je suis réceptif à un tuto, une idée, une piste, un bout de code
----
http://spipfactory.com/ (Mutualisation Spip sous Escal)
http://contrib.spip.net/Et-si-on-automatisait-tout-ca

Le 28.10.13 16:33, Stéphane Santon a écrit :

Hier, j'ai eu besoin de l'étendre à "Couleur d'article", j'ai dupliqué
tous les fichiers _rubrique en _article, qq remplacements, et ça roule.

Ne pourrait-on pas facilement étendre ce plugin à couleur_objet pour
tout objet éditorial ?

si, mais faudrait aussi prévoir une interface de conf (et puis bien sûr rompre la compat avec version < 3.0, si compat il y avait)

--
Maïeul

je serais pour avoir un nouveau plugin genre couleur_objet
et laisser couloeur_rubrique comme il est…

une technique simple consiste à avoir plusieurs feuilles de styles

un mot clé pour chaque feuille de style : style-motcle.css

dans la page rubrique on appelle la feuille de style correspondant au mot clé sélectionné pour la rubrique ou la feuille par défaut

Message du 28/10/13 16:33
De : « Stéphane Santon »
A : spip@rezo.net
Copie à :
Objet : [Spip] Couleur de Rubrique [Was:] Du PHP dans les boucles SPIP : c’est cadeau

Le 28/10/2013 15:28, triton a écrit :

oui mais… cette technique aussi malpropre soit elle permettait d
obtenir un menu avec des couleurs configurables par les redacteurs… Je
suppose qu il suffisait aux redacteurs de remplir le champ #descriptif
de l article avec une valeur hexa et ensuite la boucle spip exploitait
la valeur php genre : > > ! le titre de la rubrique s affichait dans la couleur choisie par le
redacteur, et ce, sur toutes les rubriques existantes ou a venir…

D’ailleurs, il existe le plugin Couleur de rubrique
Couleur de rubrique - Plugins SPIP

Hier, j’ai eu besoin de l’étendre à « Couleur d’article », j’ai dupliqué
tous les fichiers _rubrique en _article, qq remplacements, et ça roule.

Ne pourrait-on pas facilement étendre ce plugin à couleur_objet pour
tout objet éditorial ?


Stéphane

Les Voisins Spipeurs : http://www.voisins-spipeurs.net


liste spip
spip@rezo.net - désabonnement : envoyer un mail à spip-off@rezo.net

Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Discuter chez rezo.net

Documentation de SPIP : http://www.spip.net/

Irc : de l’aide à toute heure : http://spip.net/irc

Bonjour
autre technique simple et qui permet a un redacteur de gerer les couleurs de ses rubriques ou articles : un groupe de mots clés nommés "couleurs" avec dedans des mots clés genre "vert" "bleu" et comme champ texte la valeur en hexadécimal de la couleur... Il suffit aux redacteurs d'associer un des ces mots clés à son article/rubrique, de creer/modifier ces mots clés de couleurs... Bien sur, il faut aussi au préalable, une feuille de style dynamique bouclant sur tous les mots clés du groupe "couleurs" et générant les class dynamiquement pour chacun des mots clés...
Alors apres, la vraie question, dans tous les cas, avec des mots clés, avec une roue chromatique, est il bien raisonnable de laisser les redacteurs/adminsitrateurs créer eux même leurs couleurs pour leur articles ? Quand on connait le pouvoir de nuisance naturel d un rédacteur de base on se dit que non... de plus, généralement, il y a un fainéant de graphiste qui a déjà été honteusement surpayé pour élaborer une charte graphique contenant une palette de couleurs prédéfinies...
triton

justement, le plugin couleur_rubrique gère quelques autorisations : ne choisir une couleur que dans les secteurs, interdire les changements de couleurs…
mais ça ne présage pas de l’utilisation de ces couleurs, ça c’est chacun fait comme il veut…

Bonjour,

Le 29/10/2013 11:11, Maïeul a écrit :

Ne pourrait-on pas facilement étendre ce plugin à couleur_objet pour
tout objet éditorial ?

si, mais faudrait aussi prévoir une interface de conf (et puis bien sûr
rompre la compat avec version < 3.0, si compat il y avait)

Et si l'on réduit l'interface de conf à une déclaration de fonction_dist dans mes_options ou mes_fonctions?

--
Stéphane

Les Voisins Spipeurs : http://www.voisins-spipeurs.net

Bonjour,

Le 29/10/2013 11:43, chankalan a écrit :

je serais pour avoir un nouveau plugin genre couleur_objet
et laisser couloeur_rubrique comme il est...

Oui, en effet ce serait plus clair pour le chercheur de plugin...

Le 29/10/2013 11:11, Maïeul a écrit :

Ne pourrait-on pas facilement étendre ce plugin à couleur_objet pour
tout objet éditorial ?

si, mais faudrait aussi prévoir une interface de conf (et puis bien
sûr rompre la compat avec version < 3.0, si compat il y avait)

--
Stéphane

Les Voisins Spipeurs : http://www.voisins-spipeurs.net

Le 29.10.13 19:17, Stéphane Santon a écrit :

Bonjour,

Le 29/10/2013 11:11, Maïeul a écrit :

Ne pourrait-on pas facilement étendre ce plugin à couleur_objet pour
tout objet éditorial ?

si, mais faudrait aussi prévoir une interface de conf (et puis bien sûr
rompre la compat avec version < 3.0, si compat il y avait)

Et si l'on réduit l'interface de conf à une déclaration de fonction_dist
dans mes_options ou mes_fonctions?

ca peut l'être. Pour le plugin "menu accordéon" j'ai fait les deux :
1) une constante qui defini la conf
2) si cette constante est nulle, on affiche le formulaire de conf, sinon on le gère

--
Maïeul