SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano

273 Plugins, 191 contribs sur SPIP-Zone, 48 visiteurs en ce moment

Accueil du site > Squelettes > Outils pour squelettes > Squelettes selon contexte > Squelettes selon la longueur de l’article

Squelettes selon la longueur de l’article

1er juillet 2007 – par jeanfrancois – <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

1 vote

Choix du squelette selon la longueur de l’article - deux solutions sont proposées : une en php l’autre en SPIP pur

Programmes testés sur SPIP version 1.9.1 et 1.9.2a


Choix du squelette selon la longueur de l’article

Objectif :

Dans un site déjà ancien et donc comprenant un grand nombre d’articles la présentation se fait sur trois colonnes :

-  celle de droite comporte le menu et différents liens ;
-  celle gauche différentes illustrations ;
-  Celle du milieu affiche l’article.

Pour un article court tout est bien équilibré mais pour un article long la page s’étire démesurément. Afin d’éviter cet ennui a été envisagé de faire une présentation en deux colonnes (suppression de la colonne de droite) Mais pour les articles courts la page apparaît plutôt vide. Il faudrait conserver la présentation en trois colonnes beaucoup plus agréable. D’où la nécessité de disposer de 2 types de squelettes : une pour les articles longs l’autre pour les articles courts.

On pouvait choisir le squelettes par mots clefs mais ce n’était pas commode : il fallait attribuer un mot clef à chaque article : quel travail ! ! !

Mieux déterminer automatiquement la longueur de l’article et orienter le choix en fonction du résultat du calcul était évidemment une solution alléchante.

Solutions proposées

Principe

L’article appelle un squelette intermédiaire « article.html » qui calcule la longueur du texte de la page à afficher et choisit en conséquence le squelette : « articlelong.html » ou « articlecourt.html »

Ce traitement peut se faire en php ou en SPIP pur (sans php) Nous proposons donc les deux solutions.

Nous ne donnons ici que les codes pour « article.html » chacun réalisant « articlelong.html » et « articlecourt.html » selon ses besoins et ses goûts.

1 - Solution en PHP

REMARQUES :
-  La modification de $b=3000 change la longueur de l’article qui produit la permutation de squelette
-  Les ordres en php sont classiques et ne demandent pas de commentaires : un calcul de longueur de texte puis un test : if else.

2 - Solution en SPIP

REMARQUES :
-  #SET donne à la valeur N la longueur du texte que la ligne suivante affiche (un contrôle qui peut être supprimé)
-  puis un premier test réalisé par |>{2500}?{' ',''} cf.filtretest
-  puis un second test comparable au premier : le code situé entre ) et ] n’est pris en compte que si la balise renvoie quelque chose ici un espace ’ ’ Ainsi si N>2500 est vrai c’est le premier test qui est valide et le premier INCLURE est pris en considération et pas le second puisque pour le second on n’a pas d’espace : on a '' et non ' ' (idem pour le second)
-  Ici la valeur de changement de squelette est 2500 valeur modifiable.

Ces deux programmes ont été testés avec les versions SPIP 1.9.1 et 1.9.2a ; Ils doivent fonctionner sur toutes les versions qui gèrent les différentes fonctions utilisées.

Retour en haut de la page

Vos commentaires

  • Le 11 mai 2009 à 22:00, par Cedric Morin En réponse à : Squelettes selon la longueur de l’article

    Le Plugin Compositions pour SPIP 2.0 permet maintenant de gérer très facilement les variantes de squelettes en fonction des articles, rubriques etc ...

    Répondre à ce message

  • Le 1er juillet 2007 à 19:52, par Committo Ergo Sum En réponse à : Squelettes selon la longueur de l’article

    Une solution SPIP encore plus simple :

    <BOUCLE1(ARTICLES){id_article}> ....
     <INCLURE{fond=(#TEXTE|textebrut|strlen|>{2500}|?{articlelong,articlecourt})}>
    </BOUCLE1>
    • Le 2 juillet 2007 à 22:16, par aRTHEGONe En réponse à : Squelettes selon la longueur de l’article

      Bonjour a tous,

      Question un petit peu sur le meme principe de variables SET & GET,

      dans mon #TEXTE je veux afficher toutes les images en largeur 400px si leur largeur est > à 400px,sinon en 200px de large si la lageur est < à 400px

      EXEMPLE :

      • image1:largeur 1024px => image_reduire400,0
      • image2:largeur 380px => image_reduire200,0
      • image3:largeur 350px => image_reduire200,0
      • ...

      Je ne vois pas du tout comment faire.

    Répondre à ce message

Répondre à cet article

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d'abord sur gravatar.com (gratuit et indolore) et n'oubliez pas d'indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Zpip-dist en HTML5

    15 juin 2010 – 10 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Une surcharge des squelettes Zpip-dist qui tire parti des nouvelles balises offertes par la spécification HTML5. Attention, ce plugin n’est plus compatible avec les nouvelles versions de Zpip, qui a connu plusieurs incompatibilités de nomenclature (...)

  • Une licence pour un article

    18 avril 2007 – 25 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Sur une idée originale de erational, voici un plugin permettant de lier une licence à un article.

  • Plugin Parrainage

    6 novembre 2011 – <blink style='color:red;'>public|spip|ecrire:commentaire</blink>

    Permettre aux utilisateurs d’inviter leurs contacts à s’inscrire sur le site. Description Vous connaissez le web moderne et son cortège d’applis toujours en version « beta » et de buzz sur le dernier réseau à la mode ? Vous voulez vous aussi vous y (...)

  • Formulaire de contact libre

    27 avril 2011 – 36 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Dans SPIP il n’y a pas un formulaire de contact, mais autant de formulaires de contact que d’auteurs. Cette phrase de Romy, dans son article Une page de contact dans mon SPIP, pointe un petit manque de SPIP. La possibilité d’insérer rapidement un (...)

  • Plugin Mot de Passe Compliqué

    2 novembre 2007 – 16 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Ce plugin ajoute un testeur de complexité de mot de passes dans les formulaires de choix de mot de passe de SPIP.