Matrice unique pour des "mini-sites" en sous-rubrique

Bonjour,

Mon problème doit être un cas d'école, mais manque de pot, j'étais absent au cours...

Mon site principale comporte 10 rubriques en racine.

La rubrique N°8 est en fait une sorte de seconde racine pour des "mini-sites" au look and feel différents. Je souhaite donc des matrices personnalisées de type rubrique=8.html et rubrique-8.html pour gérer toutes les rubriques dans cette autre racine. Mais là le bas blesse !

Pour l'instant je suis obligé de créer autant de triplette article-12.html/rubrique-12.html/rubrique= 12.html pour afficher correctement tous les éléments sur les pages. (12 étant la rubrique d'un de ses "mini-sites" dans la rubrique 8).

En effet :

1) les boucles "menus de navigation" doivent commencer à une racine différente (12 dans l'exemple),

2) Les headers de mes pages sont les logos rubriques (12 dans l'exemple),

3) Mon sous-rubriquage dans les "mini-site" est illimité.

Pour restreindre cette hiérarchie j'utilise {id_rubrique=12} dans une boucle englobante. Cela marche, mais je me retrouve avec 50 fichiers de squelette pour gérer l'affaire, et j'hallucine à l'idée de devoir faire une modification.

Je tente de jouer avec les "inclure" et des boucles qui "reconnaîtraient" leur placement dans la hiérarchie, mais pour l'instant j'obtient des résultats abhérent, et plus va, plus je patauge...

Alors, ces trois fichiers magiques article-8.html/rubrique-8.html/rubrique= 8.html à base d'inclure générique pour tout gérer, c'est possible ?

Merci de votre aide.

Bonjour,

Pour ma part j'ai résolu ce problème de deux manière différente sur deux sites différents :

- sur l'un, mes squelettes article.html et rubrique.html ne font que tester la présence d'un mot-clé du groupe "custom_squelette" sur le secteur, puis inclure un squelette {page=custom_squelettes/#TITRE*/article.html} si le mot est présent. => plus propre que le clonage des article-xx et beaucoup plus facile à maintenir

- sur l'autre, les mini-sites sont gérés par le plugin Multidomaine (excellent !) => il fait le même boulot plus simplement moyennant quelques petite limitations. Je te recommande chaudement de te pencher dessus.

A bientôt
    Simon

Frederic Rousseau a écrit :

Bonjour,

Mon problème doit être un cas d'école, mais manque de pot, j'étais absent au cours...

Mon site principale comporte 10 rubriques en racine.

La rubrique N°8 est en fait une sorte de seconde racine pour des "mini-sites" au look and feel différents. Je souhaite donc des matrices personnalisées de type rubrique=8.html et rubrique-8.html pour gérer toutes les rubriques dans cette autre racine. Mais là le bas blesse !

Pour l'instant je suis obligé de créer autant de triplette article-12.html/rubrique-12.html/rubrique= 12.html pour afficher correctement tous les éléments sur les pages. (12 étant la rubrique d'un de ses "mini-sites" dans la rubrique 8).

En effet :

1) les boucles "menus de navigation" doivent commencer à une racine différente (12 dans l'exemple),

2) Les headers de mes pages sont les logos rubriques (12 dans l'exemple),

3) Mon sous-rubriquage dans les "mini-site" est illimité.

Pour restreindre cette hiérarchie j'utilise {id_rubrique=12} dans une boucle englobante. Cela marche, mais je me retrouve avec 50 fichiers de squelette pour gérer l'affaire, et j'hallucine à l'idée de devoir faire une modification.

Je tente de jouer avec les "inclure" et des boucles qui "reconnaîtraient" leur placement dans la hiérarchie, mais pour l'instant j'obtient des résultats abhérent, et plus va, plus je patauge...

Alors, ces trois fichiers magiques article-8.html/rubrique-8.html/rubrique= 8.html à base d'inclure générique pour tout gérer, c'est possible ?

Merci de votre aide.
_______________________________________________
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

Le 27 mai 2010 à 09:54, Simon Camerlo a écrit :

Pour ma part j'ai résolu ce problème de deux manière différente sur deux sites différents :

- sur l'un, mes squelettes article.html et rubrique.html ne font que tester la présence d'un mot-clé du groupe "custom_squelette" sur le secteur, puis inclure un squelette {page=custom_squelettes/#TITRE*/article.html} si le mot est présent. => plus propre que le clonage des article-xx et beaucoup plus facile à maintenir

- sur l'autre, les mini-sites sont gérés par le plugin Multidomaine (excellent !) => il fait le même boulot plus simplement moyennant quelques petite limitations. Je te recommande chaudement de te pencher dessus.

Sinon, le plugin Compositions doit pouvoir aider.

Ou alors, un système de choix dynamique de thème...

Frederic Rousseau a écrit :

Bonjour,

Mon problème doit être un cas d'école, mais manque de pot, j'étais absent au cours...

Mon site principale comporte 10 rubriques en racine.

La rubrique N°8 est en fait une sorte de seconde racine pour des "mini-sites" au look and feel différents. Je souhaite donc des matrices personnalisées de type rubrique=8.html et rubrique-8.html pour gérer toutes les rubriques dans cette autre racine. Mais là le bas blesse !

Pour l'instant je suis obligé de créer autant de triplette article-12.html/rubrique-12.html/rubrique= 12.html pour afficher correctement tous les éléments sur les pages. (12 étant la rubrique d'un de ses "mini-sites" dans la rubrique 8).

En effet :

1) les boucles "menus de navigation" doivent commencer à une racine différente (12 dans l'exemple),

2) Les headers de mes pages sont les logos rubriques (12 dans l'exemple),

3) Mon sous-rubriquage dans les "mini-site" est illimité.

Pour restreindre cette hiérarchie j'utilise {id_rubrique=12} dans une boucle englobante. Cela marche, mais je me retrouve avec 50 fichiers de squelette pour gérer l'affaire, et j'hallucine à l'idée de devoir faire une modification.

Je tente de jouer avec les "inclure" et des boucles qui "reconnaîtraient" leur placement dans la hiérarchie, mais pour l'instant j'obtient des résultats abhérent, et plus va, plus je patauge...

Alors, ces trois fichiers magiques article-8.html/rubrique-8.html/rubrique= 8.html à base d'inclure générique pour tout gérer, c'est possible ?

Merci de votre aide.
_______________________________________________
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

_______________________________________________
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

-Nicolas

--
Nicolas HOIZEY

Imgur

Merci pour vos réponses

Les pistes ouvertes sont très intéressantes, et les plugins cités de vraies perles.

Hélas ils ne répondent pas exactement à ma problématique (cela dit ils vont me servir ailleurs :wink:
A relire ma question il manque un élément décisif (désolé...) .

En effet, les mini-sites ont tous le même design. Là ou je coince c'est sur les boucles, qui doivent répondre aux mêmes questions mais en gérant l'environnement de façon intelligente :

1) Trouver dynamiquement le LOGO_RUBRIQUE
2) Trouver les rubriques enfants en fonction du contexte

Sachant que l'arborescence est

Racine du site
  -rub1
  -rub2
  -etc
  -rub8 (conteneur des mini-sites)
    -rub12 (mini-site 1)
      -rub43
        -rub123
        -rub124
      -rub45
    -rub13 (mini-site 2)
      -rub78
      -rub79
      -rub80
    -rub13 (mini-site 3)
    -etc.
  -rub9
  -rub10

La réponse littérale, que je ne parvient pas à traduire en boucle serait : Mon squelette se rend compte qu'il est dans la sous-rubrique 43, il affiche donc la hiérarchie de la rubrique 12 dans le menu de navigation, et charge en header le logo de la rubrique 12. Bien sur il réagit de la même façon si la rubrique en cours est la 124.

Peut-être cela est il tout bonnement impossible. Mais fainéant comme je suis, j'aurais trouvé hyper-puissant que toute cette seconde arborescence soit gérée en tout et pour tout par 3 squelettes. Le top de l'élégance quoi !

Le 27 mai 10 à 10:06, Nicolas Hoizey a écrit :

Le 27 mai 2010 à 09:54, Simon Camerlo a écrit :

Pour ma part j'ai résolu ce problème de deux manière différente sur deux sites différents :

- sur l'un, mes squelettes article.html et rubrique.html ne font que tester la présence d'un mot-clé du groupe "custom_squelette" sur le secteur, puis inclure un squelette {page=custom_squelettes/#TITRE*/article.html} si le mot est présent. => plus propre que le clonage des article-xx et beaucoup plus facile à maintenir

- sur l'autre, les mini-sites sont gérés par le plugin Multidomaine (excellent !) => il fait le même boulot plus simplement moyennant quelques petite limitations. Je te recommande chaudement de te pencher dessus.

Sinon, le plugin Compositions doit pouvoir aider.

Ou alors, un système de choix dynamique de thème...

Frederic Rousseau a écrit :

Bonjour,

Mon problème doit être un cas d'école, mais manque de pot, j'étais absent au cours...

Mon site principale comporte 10 rubriques en racine.

La rubrique N°8 est en fait une sorte de seconde racine pour des "mini-sites" au look and feel différents. Je souhaite donc des matrices personnalisées de type rubrique=8.html et rubrique-8.html pour gérer toutes les rubriques dans cette autre racine. Mais là le bas blesse !

Pour l'instant je suis obligé de créer autant de triplette article-12.html/rubrique-12.html/rubrique= 12.html pour afficher correctement tous les éléments sur les pages. (12 étant la rubrique d'un de ses "mini-sites" dans la rubrique 8).

En effet :

1) les boucles "menus de navigation" doivent commencer à une racine différente (12 dans l'exemple),

2) Les headers de mes pages sont les logos rubriques (12 dans l'exemple),

3) Mon sous-rubriquage dans les "mini-site" est illimité.

Pour restreindre cette hiérarchie j'utilise {id_rubrique=12} dans une boucle englobante. Cela marche, mais je me retrouve avec 50 fichiers de squelette pour gérer l'affaire, et j'hallucine à l'idée de devoir faire une modification.

Je tente de jouer avec les "inclure" et des boucles qui "reconnaîtraient" leur placement dans la hiérarchie, mais pour l'instant j'obtient des résultats abhérent, et plus va, plus je patauge...

Alors, ces trois fichiers magiques article-8.html/rubrique-8.html/rubrique= 8.html à base d'inclure générique pour tout gérer, c'est possible ?

Merci de votre aide.
_______________________________________________
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

_______________________________________________
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

-Nicolas

--
Nicolas HOIZEY
http://www.gasteroprod.com/
Nicolas Hoizey | Flickr

Personnellement j'avais réglé ce cas avec la boucle suivante :

<BOUCLE_minisite(HIERARCHIE){id_rubrique}{1,1}>#SET{minisite,#ID_RUBRIQUE}</BOUCLE_minisite>

Placée à l'intérieur de la boucle principale de rubrique-8.html :
- si on est dans une sous-rubrique de la rubrique 8, la variable n'est pas chargée et le minisite est la rubrique en cours
- si on est dans une sous-rubrique d'une sous-rubrique de la rubrique 8, l'id de la sous-rubrique "racine" est chargée dans la variable minisite

On se sert de cette variable ensuite en la passant aux squelettes/noisettes à personnaliser, par exemple :
<INCLURE{fond=inc-entete}{minisite=#GET{minisite,#ID_RUBRIQUE}}>
ainsi dans inc-entete on obtient l'identifiant de la rubrique minisite par #ENV{minisite} quelquesoit la profondeur à laquelle on se trouve.

ÉricL

Le 27/05/2010 10:49, Frederic Rousseau a écrit :

Merci pour vos réponses

Les pistes ouvertes sont très intéressantes, et les plugins cités de vraies perles.

Hélas ils ne répondent pas exactement à ma problématique (cela dit ils vont me servir ailleurs :wink:
A relire ma question il manque un élément décisif (désolé...) .

En effet, les mini-sites ont tous le même design. Là ou je coince c'est sur les boucles, qui doivent répondre aux mêmes questions mais en gérant l'environnement de façon intelligente :

1) Trouver dynamiquement le LOGO_RUBRIQUE
2) Trouver les rubriques enfants en fonction du contexte

Sachant que l'arborescence est

Racine du site
    -rub1
    -rub2
    -etc
    -rub8 (conteneur des mini-sites)
        -rub12 (mini-site 1)
            -rub43
                -rub123
                -rub124
            -rub45
        -rub13 (mini-site 2)
            -rub78
            -rub79
            -rub80
        -rub13 (mini-site 3)
        -etc.
    -rub9
    -rub10

La réponse littérale, que je ne parvient pas à traduire en boucle serait : Mon squelette se rend compte qu'il est dans la sous-rubrique 43, il affiche donc la hiérarchie de la rubrique 12 dans le menu de navigation, et charge en header le logo de la rubrique 12. Bien sur il réagit de la même façon si la rubrique en cours est la 124.

Peut-être cela est il tout bonnement impossible. Mais fainéant comme je suis, j'aurais trouvé hyper-puissant que toute cette seconde arborescence soit gérée en tout et pour tout par 3 squelettes. Le top de l'élégance quoi !

Le 27 mai 10 à 10:06, Nicolas Hoizey a écrit :

Le 27 mai 2010 à 09:54, Simon Camerlo a écrit :

Pour ma part j'ai résolu ce problème de deux manière différente sur deux sites différents :

- sur l'un, mes squelettes article.html et rubrique.html ne font que tester la présence d'un mot-clé du groupe "custom_squelette" sur le secteur, puis inclure un squelette {page=custom_squelettes/#TITRE*/article.html} si le mot est présent. => plus propre que le clonage des article-xx et beaucoup plus facile à maintenir

- sur l'autre, les mini-sites sont gérés par le plugin Multidomaine (excellent !) => il fait le même boulot plus simplement moyennant quelques petite limitations. Je te recommande chaudement de te pencher dessus.

Sinon, le plugin Compositions doit pouvoir aider.

Ou alors, un système de choix dynamique de thème...

Frederic Rousseau a écrit :

Bonjour,

Mon problème doit être un cas d'école, mais manque de pot, j'étais absent au cours...

Mon site principale comporte 10 rubriques en racine.

La rubrique N°8 est en fait une sorte de seconde racine pour des "mini-sites" au look and feel différents. Je souhaite donc des matrices personnalisées de type rubrique=8.html et rubrique-8.html pour gérer toutes les rubriques dans cette autre racine. Mais là le bas blesse !

Pour l'instant je suis obligé de créer autant de triplette article-12.html/rubrique-12.html/rubrique= 12.html pour afficher correctement tous les éléments sur les pages. (12 étant la rubrique d'un de ses "mini-sites" dans la rubrique 8).

En effet :

1) les boucles "menus de navigation" doivent commencer à une racine différente (12 dans l'exemple),

2) Les headers de mes pages sont les logos rubriques (12 dans l'exemple),

3) Mon sous-rubriquage dans les "mini-site" est illimité.

Pour restreindre cette hiérarchie j'utilise {id_rubrique=12} dans une boucle englobante. Cela marche, mais je me retrouve avec 50 fichiers de squelette pour gérer l'affaire, et j'hallucine à l'idée de devoir faire une modification.

Je tente de jouer avec les "inclure" et des boucles qui "reconnaîtraient" leur placement dans la hiérarchie, mais pour l'instant j'obtient des résultats abhérent, et plus va, plus je patauge...

Alors, ces trois fichiers magiques article-8.html/rubrique-8.html/rubrique= 8.html à base d'inclure générique pour tout gérer, c'est possible ?

Merci de votre aide.
_______________________________________________
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

_______________________________________________
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

-Nicolas

--
Nicolas HOIZEY
http://www.gasteroprod.com/
Nicolas Hoizey | Flickr

_______________________________________________
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

Waouuu !
Effectivement, très élégant ! Ma connaissance technique de spip n'a jamais été au niveau pour m'attaquer au #set et #env, mais expliqué comme ça, c'est limpide.
Je teste ça dès ce soir, merci beaucoup !

Le 27 mai 10 à 11:10, Eric L a écrit :

Personnellement j'avais réglé ce cas avec la boucle suivante :

<BOUCLE_minisite(HIERARCHIE){id_rubrique}{1,1}>#SET{minisite,#ID_RUBRIQUE}</BOUCLE_minisite>

Placée à l'intérieur de la boucle principale de rubrique-8.html :
- si on est dans une sous-rubrique de la rubrique 8, la variable n'est pas chargée et le minisite est la rubrique en cours
- si on est dans une sous-rubrique d'une sous-rubrique de la rubrique 8, l'id de la sous-rubrique "racine" est chargée dans la variable minisite

On se sert de cette variable ensuite en la passant aux squelettes/noisettes à personnaliser, par exemple :
<INCLURE{fond=inc-entete}{minisite=#GET{minisite,#ID_RUBRIQUE}}>
ainsi dans inc-entete on obtient l'identifiant de la rubrique minisite par #ENV{minisite} quelquesoit la profondeur à laquelle on se trouve.

ÉricL

Le 27/05/2010 10:49, Frederic Rousseau a écrit :

Merci pour vos réponses

Les pistes ouvertes sont très intéressantes, et les plugins cités de vraies perles.

Hélas ils ne répondent pas exactement à ma problématique (cela dit ils vont me servir ailleurs :wink:
A relire ma question il manque un élément décisif (désolé...) .

En effet, les mini-sites ont tous le même design. Là ou je coince c'est sur les boucles, qui doivent répondre aux mêmes questions mais en gérant l'environnement de façon intelligente :

1) Trouver dynamiquement le LOGO_RUBRIQUE
2) Trouver les rubriques enfants en fonction du contexte

Sachant que l'arborescence est

Racine du site
   -rub1
   -rub2
   -etc
   -rub8 (conteneur des mini-sites)
       -rub12 (mini-site 1)
           -rub43
               -rub123
               -rub124
           -rub45
       -rub13 (mini-site 2)
           -rub78
           -rub79
           -rub80
       -rub13 (mini-site 3)
       -etc.
   -rub9
   -rub10

La réponse littérale, que je ne parvient pas à traduire en boucle serait : Mon squelette se rend compte qu'il est dans la sous-rubrique 43, il affiche donc la hiérarchie de la rubrique 12 dans le menu de navigation, et charge en header le logo de la rubrique 12. Bien sur il réagit de la même façon si la rubrique en cours est la 124.

Peut-être cela est il tout bonnement impossible. Mais fainéant comme je suis, j'aurais trouvé hyper-puissant que toute cette seconde arborescence soit gérée en tout et pour tout par 3 squelettes. Le top de l'élégance quoi !

Le 27 mai 10 à 10:06, Nicolas Hoizey a écrit :

Le 27 mai 2010 à 09:54, Simon Camerlo a écrit :

Pour ma part j'ai résolu ce problème de deux manière différente sur deux sites différents :

- sur l'un, mes squelettes article.html et rubrique.html ne font que tester la présence d'un mot-clé du groupe "custom_squelette" sur le secteur, puis inclure un squelette {page=custom_squelettes/#TITRE*/article.html} si le mot est présent. => plus propre que le clonage des article-xx et beaucoup plus facile à maintenir

- sur l'autre, les mini-sites sont gérés par le plugin Multidomaine (excellent !) => il fait le même boulot plus simplement moyennant quelques petite limitations. Je te recommande chaudement de te pencher dessus.

Sinon, le plugin Compositions doit pouvoir aider.

Ou alors, un système de choix dynamique de thème...

Frederic Rousseau a écrit :

Bonjour,

Mon problème doit être un cas d'école, mais manque de pot, j'étais absent au cours...

Mon site principale comporte 10 rubriques en racine.

La rubrique N°8 est en fait une sorte de seconde racine pour des "mini-sites" au look and feel différents. Je souhaite donc des matrices personnalisées de type rubrique=8.html et rubrique-8.html pour gérer toutes les rubriques dans cette autre racine. Mais là le bas blesse !

Pour l'instant je suis obligé de créer autant de triplette article-12.html/rubrique-12.html/rubrique= 12.html pour afficher correctement tous les éléments sur les pages. (12 étant la rubrique d'un de ses "mini-sites" dans la rubrique 8).

En effet :

1) les boucles "menus de navigation" doivent commencer à une racine différente (12 dans l'exemple),

2) Les headers de mes pages sont les logos rubriques (12 dans l'exemple),

3) Mon sous-rubriquage dans les "mini-site" est illimité.

Pour restreindre cette hiérarchie j'utilise {id_rubrique=12} dans une boucle englobante. Cela marche, mais je me retrouve avec 50 fichiers de squelette pour gérer l'affaire, et j'hallucine à l'idée de devoir faire une modification.

Je tente de jouer avec les "inclure" et des boucles qui "reconnaîtraient" leur placement dans la hiérarchie, mais pour l'instant j'obtient des résultats abhérent, et plus va, plus je patauge...

Alors, ces trois fichiers magiques article-8.html/rubrique-8.html/rubrique= 8.html à base d'inclure générique pour tout gérer, c'est possible ?

Merci de votre aide.
_______________________________________________
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

_______________________________________________
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

-Nicolas

--
Nicolas HOIZEY
http://www.gasteroprod.com/
Nicolas Hoizey | Flickr

_______________________________________________
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

_______________________________________________
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

Le site est encore en production, mais dès qu'il sort, je fais un up sur le sujet.

Le 27 mai 10 à 13:51, Monique AC 61 a écrit :

Bonjour

Pourriez-vous me donner l'adresse du site afin que je vois ce que cela donne?

Merci

M.

Le 27 mai 2010 à 11:41, Frederic Rousseau a écrit :

Waouuu !
Effectivement, très élégant ! Ma connaissance technique de spip n'a jamais été au niveau pour m'attaquer au #set et #env, mais expliqué comme ça, c'est limpide.
Je teste ça dès ce soir, merci beaucoup !

Le 27 mai 10 à 11:10, Eric L a écrit :

Personnellement j'avais réglé ce cas avec la boucle suivante :

<BOUCLE_minisite(HIERARCHIE){id_rubrique}{1,1}>#SET{minisite,#ID_RUBRIQUE}</BOUCLE_minisite>

Placée à l'intérieur de la boucle principale de rubrique-8.html :
- si on est dans une sous-rubrique de la rubrique 8, la variable n'est pas chargée et le minisite est la rubrique en cours
- si on est dans une sous-rubrique d'une sous-rubrique de la rubrique 8, l'id de la sous-rubrique "racine" est chargée dans la variable minisite

On se sert de cette variable ensuite en la passant aux squelettes/noisettes à personnaliser, par exemple :
<INCLURE{fond=inc-entete}{minisite=#GET{minisite,#ID_RUBRIQUE}}>
ainsi dans inc-entete on obtient l'identifiant de la rubrique minisite par #ENV{minisite} quelquesoit la profondeur à laquelle on se trouve.

ÉricL

Le 27/05/2010 10:49, Frederic Rousseau a écrit :

Merci pour vos réponses

Les pistes ouvertes sont très intéressantes, et les plugins cités de vraies perles.

Hélas ils ne répondent pas exactement à ma problématique (cela dit ils vont me servir ailleurs :wink:
A relire ma question il manque un élément décisif (désolé...) .

En effet, les mini-sites ont tous le même design. Là ou je coince c'est sur les boucles, qui doivent répondre aux mêmes questions mais en gérant l'environnement de façon intelligente :

1) Trouver dynamiquement le LOGO_RUBRIQUE
2) Trouver les rubriques enfants en fonction du contexte

Sachant que l'arborescence est

Racine du site
-rub1
-rub2
-etc
-rub8 (conteneur des mini-sites)
     -rub12 (mini-site 1)
         -rub43
             -rub123
             -rub124
         -rub45
     -rub13 (mini-site 2)
         -rub78
         -rub79
         -rub80
     -rub13 (mini-site 3)
     -etc.
-rub9
-rub10

La réponse littérale, que je ne parvient pas à traduire en boucle serait : Mon squelette se rend compte qu'il est dans la sous-rubrique 43, il affiche donc la hiérarchie de la rubrique 12 dans le menu de navigation, et charge en header le logo de la rubrique 12. Bien sur il réagit de la même façon si la rubrique en cours est la 124.

Peut-être cela est il tout bonnement impossible. Mais fainéant comme je suis, j'aurais trouvé hyper-puissant que toute cette seconde arborescence soit gérée en tout et pour tout par 3 squelettes. Le top de l'élégance quoi !

Le 27 mai 10 à 10:06, Nicolas Hoizey a écrit :

Le 27 mai 2010 à 09:54, Simon Camerlo a écrit :

Pour ma part j'ai résolu ce problème de deux manière différente sur deux sites différents :

- sur l'un, mes squelettes article.html et rubrique.html ne font que tester la présence d'un mot-clé du groupe "custom_squelette" sur le secteur, puis inclure un squelette {page=custom_squelettes/#TITRE*/article.html} si le mot est présent. => plus propre que le clonage des article-xx et beaucoup plus facile à maintenir

- sur l'autre, les mini-sites sont gérés par le plugin Multidomaine (excellent !) => il fait le même boulot plus simplement moyennant quelques petite limitations. Je te recommande chaudement de te pencher dessus.

Sinon, le plugin Compositions doit pouvoir aider.

Ou alors, un système de choix dynamique de thème...

Frederic Rousseau a écrit :

Bonjour,

Mon problème doit être un cas d'école, mais manque de pot, j'étais absent au cours...

Mon site principale comporte 10 rubriques en racine.

La rubrique N°8 est en fait une sorte de seconde racine pour des "mini-sites" au look and feel différents. Je souhaite donc des matrices personnalisées de type rubrique=8.html et rubrique-8.html pour gérer toutes les rubriques dans cette autre racine. Mais là le bas blesse !

Pour l'instant je suis obligé de créer autant de triplette article-12.html/rubrique-12.html/rubrique= 12.html pour afficher correctement tous les éléments sur les pages. (12 étant la rubrique d'un de ses "mini-sites" dans la rubrique 8).

En effet :

1) les boucles "menus de navigation" doivent commencer à une racine différente (12 dans l'exemple),

2) Les headers de mes pages sont les logos rubriques (12 dans l'exemple),

3) Mon sous-rubriquage dans les "mini-site" est illimité.

Pour restreindre cette hiérarchie j'utilise {id_rubrique=12} dans une boucle englobante. Cela marche, mais je me retrouve avec 50 fichiers de squelette pour gérer l'affaire, et j'hallucine à l'idée de devoir faire une modification.

Je tente de jouer avec les "inclure" et des boucles qui "reconnaîtraient" leur placement dans la hiérarchie, mais pour l'instant j'obtient des résultats abhérent, et plus va, plus je patauge...

Alors, ces trois fichiers magiques article-8.html/rubrique-8.html/rubrique= 8.html à base d'inclure générique pour tout gérer, c'est possible ?

Merci de votre aide.
_______________________________________________
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

_______________________________________________
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

-Nicolas

--
Nicolas HOIZEY
http://www.gasteroprod.com/
Nicolas Hoizey | Flickr

_______________________________________________
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

_______________________________________________
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

_______________________________________________
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

Le 27/05/2010 08:49, Frederic Rousseau a écrit :

Merci pour vos réponses

Les pistes ouvertes sont très intéressantes, et les plugins cités de
vraies perles.

Hélas ils ne répondent pas exactement à ma problématique (cela dit ils
vont me servir ailleurs :wink:
A relire ma question il manque un élément décisif (désolé...) .

En effet, les mini-sites ont tous le même design. Là ou je coince c'est
sur les boucles, qui doivent répondre aux mêmes questions mais en gérant
l'environnement de façon intelligente :

1) Trouver dynamiquement le LOGO_RUBRIQUE
2) Trouver les rubriques enfants en fonction du contexte

Sachant que l'arborescence est

Racine du site
-rub1
-rub2
-etc
-rub8 (conteneur des mini-sites)
-rub12 (mini-site 1)
-rub43
-rub123
-rub124
-rub45
-rub13 (mini-site 2)
-rub78
-rub79
-rub80
-rub13 (mini-site 3)
-etc.
-rub9
-rub10

La réponse littérale, que je ne parvient pas à traduire en boucle serait
: Mon squelette se rend compte qu'il est dans la sous-rubrique 43, il
affiche donc la hiérarchie de la rubrique 12 dans le menu de navigation,
et charge en header le logo de la rubrique 12. Bien sur il réagit de la
même façon si la rubrique en cours est la 124.

Peut-être cela est il tout bonnement impossible. Mais fainéant comme je
suis, j'aurais trouvé hyper-puissant que toute cette seconde
arborescence soit gérée en tout et pour tout par 3 squelettes. Le top de
l'élégance quoi !

Pour le fil d'ariane, il est possible de faire quelque chose comme :

<BOUCLE_ariane(HIERARCHIE){id_rubrique}>
   [(#COMPTEUR_BOUCLE|>{2})
     > <a href="#URL_RUBRIQUE">[(#TITRE|couper{80})]</a>
   ]
</BOUCLE_ariane>

Autrement dit, on affiche tout sauf les deux premières rubriques. Ca affichera rub12 > rub43 > rub123

Pour le logo, on utilise le même type de truchement. Une première boucle pour récupérer l'id de la rub12 (une boucle hiérarchie dont on récupère que le troisième élément), puis une boucle pour récupérer son logo.

<BOUCLE_id_racine_minisite(HIERARCHIE){id_rubrique}{2,1}>
   <BOUCLE_logo(RUBRIQUES){id_rubrique}>
     #LOGO_RUBRIQUE
   </BOUCLE_logo>
</BOUCLE_id_racine_minisite>

On joue sur le fait que l'on sait que la racine du minisite est toujours le troisième élément de la boucle hiérarchie.

Cordialement

Joseph

oups

j'avais pas chargé le fil de discussion complet

Désolé pour les doublons

Petit retour d'expérience sur mon problème, qui est grâce à vous tous résolu.
Au passage un grand merci à la communauté Spip qui décidément est le bien le plus précieux de ce CMS.

J'ai retenu la solution de EricL pour réduire mon nombre de squelette de 60 fichiers à 3.html et 4 inc. Inutile de dire que je lui dois une fière chandelle.

Une autre solution, proposée par Joseph était assez astucieuse aussi, et tablait sur l'utilisation d'un compteur de boucle. Je n'ait pas testé, mais a priori elle me semble efficace. la voici histoire de compiler dans le même thread toutes les infos :

--------------------------------------------------------------------
Pour le fil d'ariane, il est possible de faire quelque chose comme :

<BOUCLE_ariane(HIERARCHIE){id_rubrique}>
  [(#COMPTEUR_BOUCLE|>{2})
    > <a href="#URL_RUBRIQUE">[(#TITRE|couper{80})]</a>
  ]
</BOUCLE_ariane>

Autrement dit, on affiche tout sauf les deux premières rubriques. Ca affichera rub12 > rub43 > rub123

Pour le logo, on utilise le même type de truchement. Une première boucle pour récupérer l'id de la rub12 (une boucle hiérarchie dont on récupère que le troisième élément), puis une boucle pour récupérer son logo.

<BOUCLE_id_racine_minisite(HIERARCHIE){id_rubrique}{2,1}>
  <BOUCLE_logo(RUBRIQUES){id_rubrique}>
    #LOGO_RUBRIQUE
  </BOUCLE_logo>
</BOUCLE_id_racine_minisite>

On joue sur le fait que l'on sait que la racine du minisite est toujours le troisième élément de la boucle hiérarchie.

Cordialement

Joseph
--------------------------------------------------------------------

Pour finir, grâce au plug-in Composition (mais alors vraiment excellentissime celui là !) , j'ai pu proposer un slider Jquery sur le sommaire des mini-sites. Un grand merci à Simon pour la découverte de cette perle.

Comme promis, je fais un up final sur le sujet dès le site mis en ligne.

Fred

Le 27 mai 10 à 20:38, Frederic Rousseau a écrit :

Le site est encore en production, mais dès qu'il sort, je fais un up sur le sujet.

Le 27 mai 10 à 13:51, Monique AC 61 a écrit :

Bonjour

Pourriez-vous me donner l'adresse du site afin que je vois ce que cela donne?

Merci

M.

Le 27 mai 2010 à 11:41, Frederic Rousseau a écrit :

Waouuu !
Effectivement, très élégant ! Ma connaissance technique de spip n'a jamais été au niveau pour m'attaquer au #set et #env, mais expliqué comme ça, c'est limpide.
Je teste ça dès ce soir, merci beaucoup !

Le 27 mai 10 à 11:10, Eric L a écrit :

Personnellement j'avais réglé ce cas avec la boucle suivante :

<BOUCLE_minisite(HIERARCHIE){id_rubrique}{1,1}>#SET{minisite,#ID_RUBRIQUE}</BOUCLE_minisite>

Placée à l'intérieur de la boucle principale de rubrique-8.html :
- si on est dans une sous-rubrique de la rubrique 8, la variable n'est pas chargée et le minisite est la rubrique en cours
- si on est dans une sous-rubrique d'une sous-rubrique de la rubrique 8, l'id de la sous-rubrique "racine" est chargée dans la variable minisite

On se sert de cette variable ensuite en la passant aux squelettes/noisettes à personnaliser, par exemple :
<INCLURE{fond=inc-entete}{minisite=#GET{minisite,#ID_RUBRIQUE}}>
ainsi dans inc-entete on obtient l'identifiant de la rubrique minisite par #ENV{minisite} quelquesoit la profondeur à laquelle on se trouve.

ÉricL

Le 27/05/2010 10:49, Frederic Rousseau a écrit :

Merci pour vos réponses

Les pistes ouvertes sont très intéressantes, et les plugins cités de vraies perles.

Hélas ils ne répondent pas exactement à ma problématique (cela dit ils vont me servir ailleurs :wink:
A relire ma question il manque un élément décisif (désolé...) .

En effet, les mini-sites ont tous le même design. Là ou je coince c'est sur les boucles, qui doivent répondre aux mêmes questions mais en gérant l'environnement de façon intelligente :

1) Trouver dynamiquement le LOGO_RUBRIQUE
2) Trouver les rubriques enfants en fonction du contexte

Sachant que l'arborescence est

Racine du site
-rub1
-rub2
-etc
-rub8 (conteneur des mini-sites)
    -rub12 (mini-site 1)
        -rub43
            -rub123
            -rub124
        -rub45
    -rub13 (mini-site 2)
        -rub78
        -rub79
        -rub80
    -rub13 (mini-site 3)
    -etc.
-rub9
-rub10

La réponse littérale, que je ne parvient pas à traduire en boucle serait : Mon squelette se rend compte qu'il est dans la sous-rubrique 43, il affiche donc la hiérarchie de la rubrique 12 dans le menu de navigation, et charge en header le logo de la rubrique 12. Bien sur il réagit de la même façon si la rubrique en cours est la 124.

Peut-être cela est il tout bonnement impossible. Mais fainéant comme je suis, j'aurais trouvé hyper-puissant que toute cette seconde arborescence soit gérée en tout et pour tout par 3 squelettes. Le top de l'élégance quoi !

Le 27 mai 10 à 10:06, Nicolas Hoizey a écrit :

Le 27 mai 2010 à 09:54, Simon Camerlo a écrit :

Pour ma part j'ai résolu ce problème de deux manière différente sur deux sites différents :

- sur l'un, mes squelettes article.html et rubrique.html ne font que tester la présence d'un mot-clé du groupe "custom_squelette" sur le secteur, puis inclure un squelette {page=custom_squelettes/#TITRE*/article.html} si le mot est présent. => plus propre que le clonage des article-xx et beaucoup plus facile à maintenir

- sur l'autre, les mini-sites sont gérés par le plugin Multidomaine (excellent !) => il fait le même boulot plus simplement moyennant quelques petite limitations. Je te recommande chaudement de te pencher dessus.

Sinon, le plugin Compositions doit pouvoir aider.

Ou alors, un système de choix dynamique de thème...

Frederic Rousseau a écrit :

Bonjour,

Mon problème doit être un cas d'école, mais manque de pot, j'étais absent au cours...

Mon site principale comporte 10 rubriques en racine.

La rubrique N°8 est en fait une sorte de seconde racine pour des "mini-sites" au look and feel différents. Je souhaite donc des matrices personnalisées de type rubrique=8.html et rubrique-8.html pour gérer toutes les rubriques dans cette autre racine. Mais là le bas blesse !

Pour l'instant je suis obligé de créer autant de triplette article-12.html/rubrique-12.html/rubrique= 12.html pour afficher correctement tous les éléments sur les pages. (12 étant la rubrique d'un de ses "mini-sites" dans la rubrique 8).

En effet :

1) les boucles "menus de navigation" doivent commencer à une racine différente (12 dans l'exemple),

2) Les headers de mes pages sont les logos rubriques (12 dans l'exemple),

3) Mon sous-rubriquage dans les "mini-site" est illimité.

Pour restreindre cette hiérarchie j'utilise {id_rubrique=12} dans une boucle englobante. Cela marche, mais je me retrouve avec 50 fichiers de squelette pour gérer l'affaire, et j'hallucine à l'idée de devoir faire une modification.

Je tente de jouer avec les "inclure" et des boucles qui "reconnaîtraient" leur placement dans la hiérarchie, mais pour l'instant j'obtient des résultats abhérent, et plus va, plus je patauge...

Alors, ces trois fichiers magiques article-8.html/rubrique-8.html/rubrique= 8.html à base d'inclure générique pour tout gérer, c'est possible ?

Merci de votre aide.
_______________________________________________
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

_______________________________________________
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

-Nicolas

--
Nicolas HOIZEY
http://www.gasteroprod.com/
Nicolas Hoizey | Flickr

_______________________________________________
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

_______________________________________________
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

_______________________________________________
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

_______________________________________________
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

Pour finir, grâce au plug-in Composition (mais alors vraiment excellentissime celui là !) , j'ai pu proposer un slider Jquery sur le sommaire des mini-sites. Un grand merci à Simon pour la découverte de cette perle.

Rendons à César : c'est Nicolas qui a cité le plugin Compositions, je ne le connaissais pas non-plus :wink:

++
    Simon

Simon Camerlo a écrit :

Pour finir, grâce au plug-in Composition (mais alors vraiment excellentissime celui là !) , j'ai pu proposer un slider Jquery sur le sommaire des mini-sites. Un grand merci à Simon pour la découverte de cette perle.

Rendons à César : c'est Nicolas qui a cité le plugin Compositions, je ne le connaissais pas non-plus :wink:

++
   Simon
_______________________________________________

et le résultat de tous ça et visible ou ?

--
- Association B@CH@NT -

Président & Responsable Administratif : Mr. Stéphane POUPARD
Tel 06 79 64 42 12
http://bachant.pierre-kuhn.org/