Bonjour,
sans doute une question toute bête :
je voudrais un squelette spécifique pour un seul article
et je ne trouve pas la combine.
En fait j'utilise le plugin "Pages" pour créer des pages uniques
(ce sont des pages sans rubriques)
et le squelette article.html ne me convient pas tout à fait.
merci Sylvain
Bonjour,
le plugin composition est parfait pour ça :
a+
Le 25 mars 2013 à 16:39, Sylvain Du Pasquier a écrit :
Bonjour,
sans doute une question toute bête :
je voudrais un squelette spécifique pour un seul article
et je ne trouve pas la combine.
En fait j'utilise le plugin "Pages" pour créer des pages uniques
(ce sont des pages sans rubriques)
et le squelette article.html ne me convient pas tout à fait.
merci Sylvain
_______________________________________________
liste spip
spip@rezo.net - désabonnement : envoyer un mail à spip-off@rezo.netInfos et archives : http://listes.rezo.net/mailman/listinfo/spip
Discuter chez rezo.netDocumentation de SPIP : http://www.spip.net/
Irc : de l'aide à toute heure : http://spip.net/irc
Le 25/03/2013 16:39, Sylvain Du Pasquier a écrit :
Bonjour,
sans doute une question toute bête :
je voudrais un squelette spécifique pour un seul article
et je ne trouve pas la combine.
En fait j'utilise le plugin "Pages" pour créer des pages uniques
(ce sont des pages sans rubriques)
et le squelette article.html ne me convient pas tout à fait.
merci Sylvain
Bonjour.
Pour ma part je copie le squelette articles.html, je renome la copie article-<numéro de l'article>.html, et je personnalise ce dernier, le tout dans le répertoire squelettes.
Didier.
pourquoi surcharger le site avec un plugin aloes que c le fonctionnement naturel de spip comme le fait remarquer sylvain
type de page : article-numdeceluici
yo
Envoyé de mon iPhone
Le 25 mars 2013 à 19:38, Didier <d.berland@orange.fr> a écrit :
Le 25/03/2013 16:39, Sylvain Du Pasquier a écrit :
Bonjour,
sans doute une question toute bête :
je voudrais un squelette spécifique pour un seul article
et je ne trouve pas la combine.
En fait j'utilise le plugin "Pages" pour créer des pages uniques
(ce sont des pages sans rubriques)
et le squelette article.html ne me convient pas tout à fait.
merci SylvainBonjour.
Pour ma part je copie le squelette articles.html, je renome la copie article-<numéro de l'article>.html, et je personnalise ce dernier, le tout dans le répertoire squelettes.
Didier._______________________________________________
liste spip
spip@rezo.net - désabonnement : envoyer un mail à spip-off@rezo.netInfos et archives : http://listes.rezo.net/mailman/listinfo/spip
Discuter chez rezo.netDocumentation de SPIP : http://www.spip.net/
Irc : de l'aide à toute heure : http://spip.net/irc
Salut,
Le 26 mars 2013 07:57, yonnel kurtz <yonnel.kurtz@gmail.com> a écrit :
pourquoi surcharger le site avec un plugin aloes que c le fonctionnement naturel de spip comme le fait remarquer sylvain
type de page : article-numdeceluici
Parce que vous faites une confusion entre les variantes de squelettes
qui sont pour les *rubriques* et ce que demande Sylvain qui est pour
un *article*.
cf: Les variantes de squelette - SPIP
article-XX.html est le squelette qui sera affiché pour les articles
présents dans la rubrique XX et ses sous rubriques. Ce n'est pas le
squelette pour l'article XX.
La bonne méthode est bien le plugin composition comme proposé dès le
début par miros.
--
Beurt
Oui tu as raison
j’avais pas poussé plus loin
YO
Le 26 mars 2013 08:13, Beurt <beurt@spip.org> a écrit :
Salut,
Le 26 mars 2013 07:57, yonnel kurtz <yonnel.kurtz@gmail.com> a écrit :
pourquoi surcharger le site avec un plugin aloes que c le fonctionnement naturel de spip comme le fait remarquer sylvain
type de page : article-numdeceluiciParce que vous faites une confusion entre les variantes de squelettes
qui sont pour les rubriques et ce que demande Sylvain qui est pour
un article.cf: http://www.spip.net/fr_article3445.html
article-XX.html est le squelette qui sera affiché pour les articles
présents dans la rubrique XX et ses sous rubriques. Ce n’est pas le
squelette pour l’article XX.La bonne méthode est bien le plugin composition comme proposé dès le
début par miros.–
Beurt
–
adresse mail : yonnel.kurtz@gmail.com
mobile : 07 61 72 79 12
Identifiant de société : Siren : 501 161 384
Code NAF : 722C
Siret : 501 161 384 00018
Code Insee : C75017862440
Oui,
je trouve que le plugin est lourd et compliqué
et il me semble que la solution devrait être simple.
Effectivement artcle-2.html spécifie le squellette
des articles de la rubrique 2.
Je cherche encore
Le 26/03/2013 08:13, Beurt a écrit :
Salut,
Le 26 mars 2013 07:57, yonnel kurtz <yonnel.kurtz@gmail.com> a écrit :
pourquoi surcharger le site avec un plugin aloes que c le fonctionnement naturel de spip comme le fait remarquer sylvain
type de page : article-numdeceluiciParce que vous faites une confusion entre les variantes de squelettes
qui sont pour les *rubriques* et ce que demande Sylvain qui est pour
un *article*.cf: Les variantes de squelette - SPIP
article-XX.html est le squelette qui sera affiché pour les articles
présents dans la rubrique XX et ses sous rubriques. Ce n'est pas le
squelette pour l'article XX.La bonne méthode est bien le plugin composition comme proposé dès le
début par miros.
Le 26 mars 2013 08:33, Sylvain Du Pasquier <syl.dupac@wanadoo.fr> a écrit :
Oui,
je trouve que le plugin est lourd et compliqué
et il me semble que la solution devrait être simple.
Effectivement artcle-2.html spécifie le squellette
des articles de la rubrique 2.
Je cherche encore
Tu peux aussi faire un aiguillage manuel, en mettant dans le squelette
article.html:
----------8<---------------
[(#ID_ARTICLE|=={XX}|?{
<INCLURE{fond=article_XX,env}>,
<INCLURE{fond=article_standard,env}>
)]
----------->8-------------
où XX est le n° de l'article spécifique et où article_XX.html est le
squelette spécifique de cet article et article_standard.html est le
squelette pour les autres.
Après tu peux faire des variantes plus sophistiquées pour que XX soit
variable en utilisant notamment les itérateurs pour lister les
fichiers de type article_numéro.html qui existent.
--
Beurt
tu dis que tu utilise « pages », et sur la doc de ce plugin il y a une solution assez simple, je cite :
Imaginons que l’on ait créé une page « Notice légale » avec le mot « legal » dans le champ « page ». On peut alors :
- Faire une boucle
<BOUCLE_legal(ARTICLES){page=legal}>#TEXTE</BOUCLE_legal> - Et mieux encore, avoir un squelette « legal.html » dédié, dans lequel on n’a plus qu’à faire
<BOUCLE_legal(ARTICLES){page}>
:
salut,
tu dis que tu utilise « pages », et sur la doc de ce plugin il y a une solution assez simple, je cite :
Imaginons que l’on ait créé une page « Notice légale » avec le mot « legal » dans le champ « page ». On peut alors :
- Faire une boucle
<BOUCLE_legal(ARTICLES){page=legal}>#TEXTE</BOUCLE_legal> - Et mieux encore, avoir un squelette « legal.html » dédié, dans lequel on n’a plus qu’à faire
<BOUCLE_legal(ARTICLES){page}>
:
Le 26 mars 2013 08:39, Beurt <beurt@spip.org> a écrit :
Après tu peux faire des variantes plus sophistiquées pour que XX soit
variable en utilisant notamment les itérateurs pour lister les
fichiers de type article_numéro.html qui existent.
Jouons un peu avec les variantes (j'essaie d'imiter denisb...):
ce squelette article.html devrait aiguiller vers des variantes
article_XX.html si elles existent, sinon vers article_standard.html
-------8<--------------
[(#REM)
Aiguille vers la bonne variante de squelette article en fonction de
l'id_article:
Si id_article=XX et qu'un squelette article_XX.html existe, c'est lui
qui s'affiche,
Sinon, c'est article_standard.html qui s'affiche
(penser à bien renseigner le bon répertoire pour les squelettes)
]
#FILTRE{trim}
[(#REM) à renseigner !]
#SET{repertoire_squelettes,squelettes}
<BOUCLE_Liste_Variantes(DATA){source glob,
#GET{repertoire_squelettes}/article_*.html}>
[(#SET{tableau_variantes,[(#GET{tableau_variantes}|sinon{#ARRAY}|push{#VALEUR})]})]
</BOUCLE_Liste_Variantes>
[(#SET{a_tester,[(#GET{repertoire_squelettes})/article_#ID_ARTICLE.html]})]
[(#GET{a_tester}|in_array{#GET{tableau_variantes}}|?{
<INCLURE{fond=article_#ID_ARTICLE,env}>,
<INCLURE{fond=article_standard,env}>
}
)]
---------->8-----------
voir: Exemples de `BOUCLE(DATA)` - SPIP (si SPIP < 3 alors le
plugin itérateurs est nécessaire)
Cette solution devrait être relativement générique...
--
Beurt
Il est aussi possible et éventuellement intéressant
de faire un modele contenant le squelette pour cet article
et de l'appeler dans le TEXTE de l'article
JL
J’utilise aussi quelque fois le plugin champs extras et champs extra interface. J’y ajoute un selecteur (champs maquette dans mon exemple):
choix1|variante A
choix2|variante B
etc…
Puis dans l’article je teste avec un code dans ce genre là :
[(#MAQUETTE|=={choix1}|ou{#MAQUETTE|is_null}|oui)
<INCLURE{fond=inclure/maquetteA}{env}{id_article}>
]
[(#MAQUETTE|=={choix2}|oui)
<INCLURE{fond=inclure/maquetteB}{env}{id_article}>
]
C’est tout.
C’st beaucoup plus léger qu’un plugin usine à gaz juste pour une petite distinction.
(Avant j’utilisais les mots-clés mais j’ai cru comprendre que c’était une mauvaise pratique, champs extra, c’est mieux propre et pas cher
)
Cordialement
Merci à tous,
me voilà pourvu de plusieurs solutions
que je vais examiner à tête reposée…
J’avais lu la notice de « Pages » mais je me demande
si cet article est à jour (ou l’explication un peu succincte)
Je n’ai pas réussi à utiliser la méthode proposée.
Je ferai un retour quand j’aurais avancé sylvain
Merci à tous,
me voilà pourvu de plusieurs solutions
que je vais examiner à tête reposée...
J'avais lu la notice de "Pages" mais je me demande
si cet article est à jour (ou l'explication un peu succincte)
Je n'ai pas réussi à utiliser la méthode proposée.
Je ferai un retour quand j'aurais avancé sylvain
(oups, désolé pour le fond couleur du message précédent....)
Le 26/03/2013 10:00, Fabrice Véronneau a écrit :
J'utilise aussi quelque fois le plugin *champs extras* et*champs extra interface*. J'y ajoute un selecteur (champs *maquette* dans mon exemple):
choix1|variante A
choix2|variante B
etc…Puis dans l'article je teste avec un code dans ce genre là :
[(#MAQUETTE|=={*choix1*}|ou{#MAQUETTE|is_null}|oui)
<INCLURE{fond=*inclure/maquetteA*}{env}{id_article}>
]
[(#MAQUETTE|=={*choix2*}|oui)
<INCLURE{fond=*inclure/maquetteB*}{env}{id_article}>
]
C'est tout.
C'st beaucoup plus léger qu'un plugin usine à gaz juste pour une petite distinction.(Avant j'utilisais les mots-clés mais j'ai cru comprendre que c'était une mauvaise pratique, champs extra, c'est mieux propre et pas cher
)
Cordialement
Fa_b
Le 26 mars 2013 08:39, Beurt <beurt@spip.org <mailto:beurt@spip.org>> a écrit :
Le 26 mars 2013 08:33, Sylvain Du Pasquier <syl.dupac@wanadoo.fr
<mailto:syl.dupac@wanadoo.fr>> a écrit :
> Oui,
> je trouve que le plugin est lourd et compliqué
> et il me semble que la solution devrait être simple.
> Effectivement artcle-2.html spécifie le squellette
> des articles de la rubrique 2.
> Je cherche encore
>Tu peux aussi faire un aiguillage manuel, en mettant dans le squelette
article.html:----------8<---------------
[(#ID_ARTICLE|=={XX}|?{
<INCLURE{fond=article_XX,env}>,
<INCLURE{fond=article_standard,env}>
)]
----------->8-------------où XX est le n° de l'article spécifique et où article_XX.html est le
squelette spécifique de cet article et article_standard.html est le
squelette pour les autres.Après tu peux faire des variantes plus sophistiquées pour que XX soit
variable en utilisant notamment les itérateurs pour lister les
fichiers de type article_numéro.html qui existent.--
Beurt
_______________________________________________
liste spip
spip@rezo.net <mailto:spip@rezo.net> - désabonnement : envoyer un
mail à spip-off@rezo.net <mailto:spip-off@rezo.net>Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Discuter chez rezo.netDocumentation de SPIP : http://www.spip.net/
Irc : de l'aide à toute heure : http://spip.net/irc
Le 26 mars 2013 09:21, Beurt <beurt@spip.org> a écrit :
Le 26 mars 2013 08:39, Beurt <beurt@spip.org> a écrit :
Après tu peux faire des variantes plus sophistiquées pour que XX soit
variable en utilisant notamment les itérateurs pour lister les
fichiers de type article_numéro.html qui existent.Jouons un peu avec les variantes (j'essaie d'imiter denisb...):
ce squelette article.html devrait aiguiller vers des variantes
article_XX.html si elles existent, sinon vers article_standard.html
Encore plus simple et efficace:
-----8<-------------------
[(#REM)
Aiguille vers la bonne variante de squelette article en fonction de
l'id_article:
Si id_article=XX et qu'un squelette article_XX.html existe, c'est lui
qui s'affiche,
Sinon, c'est article_standard.html qui s'affiche
]
#FILTRE{trim}
[(#SET{a_tester,[article_(#ID_ARTICLE).html]})]
[(#GET{a_tester}|find_in_path|?{
<INCLURE{fond=article_#ID_ARTICLE,env}>,
<INCLURE{fond=article_standard,env}>
}
)]
---------->8-------------------
Gros avantage: ça tient compte des surcharges éventuelles et des
éventuels dossiers squelettes différents...
(pas besoin non plus des itérateurs)
Je me demande si je vais pas en faire un mini plugin...
--
Beurt
Le 27/03/2013 10:55, Beurt a écrit :
Le 26 mars 2013 09:21, Beurt <beurt@spip.org> a écrit :
Le 26 mars 2013 08:39, Beurt <beurt@spip.org> a écrit :
Après tu peux faire des variantes plus sophistiquées pour que XX soit
variable en utilisant notamment les itérateurs pour lister les
fichiers de type article_numéro.html qui existent.Jouons un peu avec les variantes (j'essaie d'imiter denisb...):
ce squelette article.html devrait aiguiller vers des variantes
article_XX.html si elles existent, sinon vers article_standard.html-----8<-------------------
[(#REM)Aiguille vers la bonne variante de squelette article en fonction de
l'id_article:Si id_article=XX et qu'un squelette article_XX.html existe, c'est lui
qui s'affiche,
Sinon, c'est article_standard.html qui s'affiche]
#FILTRE{trim}[(#SET{a_tester,[article_(#ID_ARTICLE).html]})]
[(#GET{a_tester}|find_in_path|?{
<INCLURE{fond=article_#ID_ARTICLE,env}>,
<INCLURE{fond=article_standard,env}>
}
)]
---------->8-------------------Gros avantage: ça tient compte des surcharges éventuelles et des
éventuels dossiers squelettes différents...
(pas besoin non plus des itérateurs)
Bravo !
Je me demande si je vais pas en faire un mini plugin...
Ou plutot un article de synthèse des divers moyens
de spécialiser les squelettes, depuis les variantes
(encore mal comprises) les mots-clés techniques
et bien sur Z et Composition signalant l'excellent
article de Joseph (que je viens de decouvrir) :
Je vais aussi en ecrire un sur SPN, avec cette astuce !
(a rajouter aussi dans Astuces courtes pour SPIP )
Une remarque toutefois : avant d'en faire un plugin,
ne faudrait-il pas choisir un separateur (le _ ici)
qui soit compatible avec les normes de nommage,
de Composition et NoiZetier ?
--
YannX
Le 27 mars 2013 11:06, YannX/SPIP <yannx.spip@hotmail.fr> a écrit :
Je me demande si je vais pas en faire un mini plugin...
Ou plutot un article de synthèse des divers moyens
de spécialiser les squelettes, depuis les variantes
(encore mal comprises) les mots-clés techniques
et bien sur Z et Composition signalant l'excellent
article de Joseph (que je viens de decouvrir) :
À propos de Zpip, de Compositions, du noiZetier et d'Aveline - Joseph Larmarange
Je n'ai pas vraiment le temps de faire un tel article. Ça ira plus
vite de faire un petit plugin simple pour ceux qui ont simplement ce
besoin comme Sylvain.
Une remarque toutefois : avant d'en faire un plugin,
ne faudrait-il pas choisir un separateur (le _ ici)
qui soit compatible avec les normes de nommage,
de Composition et NoiZetier ?
Je ne vois pas trop ce que tu veux dire. L'idée est de compléter le
système des variantes proposé par Spip qui porte sur les rubriques en
ajoutant simplement les articles. Le choix du "_" est logique dans la
mesure où "=" et "-" sont pris par les variantes-rubriques. C'est donc
une alternative à ce que propose le plugin Composition, qui est plus
élaboré et permet une configuration plus souple dans la partie privée.
Moi je ne fais qu'étendre l'idée des variantes pour ceux qui veulent
un résultat rapide et qui ont des besoins modestes.
--
Beurt
Le 27 mars 2013 10:55, Beurt <beurt@spip.org> a écrit :
Je me demande si je vais pas en faire un mini plugin...
Voilà c'est fait:
http://files.spip.org/spip-zone/variantes_articles.zip (zip), et
bientôt Variantes Articles - Plugins SPIP (le temps que
le site le prenne en compte)
ça devrait fonctionner sur SPIP 2.1 et 3... J'ai pas testé en dessous
de 2.1.13, mais si quelqu'un veut tester, il suffit de changer les
bornes dans plugin.xml (ça pourrait fonctionner, je ne sais pas à
partir de quelle version le pipeline styliser a été introduit).
Le plugin fonctionne légèrement différemment de ce que je proposais
sous forme de squelette:
*soit un article ayant l'id_article = XX*
S'il existe à la fois "article.html" (limitation introduite depuis au
moins SPIP 2.1 pour les variantes des squelettes dans SPIP, voir:
Les variantes de squelette - SPIP) et "article_XX.html" dans le
même répertoire (de plugin ou celui des squelettes),
alors c'est le squelette "article_XX.html" qui sera affiché.
Sinon, ce sera "article.html".
D'un point de vue technique, il rajoute un traitement en amont du
pipeline styliser dans lequel il vérifie la présence des fichiers
("article.html", "article_XX.html") et aiguille vers le bon fichier.
Les variantes par rubriques et par langues continuent de fonctionner
et sont traitées après (je pense même qu'en théorie elles peuvent se
cumuler: article_XX=42.vi.html est le squelette qui va s'afficher si
id_article=XX, id_rubrique=42 et lang=vi)
--
Beurt
Merci tout plein,
je vois que tu as vraiment compris la demande
qui était en elle même assez simple
(et pas facile à satisfaire) Sylvain
Le 27/03/2013 15:56, Beurt a écrit :
Le 27 mars 2013 10:55, Beurt <beurt@spip.org> a écrit :
Je me demande si je vais pas en faire un mini plugin...
Voilà c'est fait:
http://files.spip.org/spip-zone/variantes_articles.zip (zip), et
bientôt Variantes Articles - Plugins SPIP (le temps que
le site le prenne en compte)ça devrait fonctionner sur SPIP 2.1 et 3... J'ai pas testé en dessous
de 2.1.13, mais si quelqu'un veut tester, il suffit de changer les
bornes dans plugin.xml (ça pourrait fonctionner, je ne sais pas à
partir de quelle version le pipeline styliser a été introduit).Le plugin fonctionne légèrement différemment de ce que je proposais
sous forme de squelette:*soit un article ayant l'id_article = XX*
S'il existe à la fois "article.html" (limitation introduite depuis au
moins SPIP 2.1 pour les variantes des squelettes dans SPIP, voir:
Les variantes de squelette - SPIP) et "article_XX.html" dans le
même répertoire (de plugin ou celui des squelettes),
alors c'est le squelette "article_XX.html" qui sera affiché.
Sinon, ce sera "article.html".D'un point de vue technique, il rajoute un traitement en amont du
pipeline styliser dans lequel il vérifie la présence des fichiers
("article.html", "article_XX.html") et aiguille vers le bon fichier.
Les variantes par rubriques et par langues continuent de fonctionner
et sont traitées après (je pense même qu'en théorie elles peuvent se
cumuler: article_XX=42.vi.html est le squelette qui va s'afficher si
id_article=XX, id_rubrique=42 et lang=vi)