Découper un article en plusieurs pages

Un filtre pour découper l’affichage public d’un article en plusieurs pages.
Pour SPIP 1.7, voir Découper un article en plusieurs pages et lui ajouter un sommaire.
Pour les versions plus récentes de SPIP, voir Découper un texte en pages et/ou en onglets et En onglets dans le texte de SPIP, ou ailleurs....

Marche à suivre

1. Ajouter la fonction qui suit dans mes_fonctions.php3 :

/*
 *   +----------------------------------+
 *    Nom du Filtre : decouper_en_page                                               
 *   +----------------------------------+
 *    Date : mardi 28 janvier 2003
 *    Auteur :  "gpl"  : gpl@macplus.org                                      
 *   +-------------------------------------+
 *    Fonctions de ce filtre :
 *     Il sert a présenter un article sur plusieurs pages
 *   +-------------------------------------+ 
 *  
 * Pour toute suggestion, remarque, proposition d'ajout
 * reportez-vous au forum de l'article :
 * http://www.uzine.net/spip_contrib/article.php3?id_article=62
*/


function decouper_en_page($texte) {
        global $artsuite, $var_recherche;
        
        if (empty($artsuite)) $artsuite = 0;
        
        $page = split('-----', $texte);
        
        $num_pages = count($page);

        // Si une seule page ou numéro illégal, alors retourner tout le texte.
        // Cas spécial : si var_recherche positionné, tout renvoyer pour permettre à la surbrillance
	// de fonctionner correctement.
        if ($num_pages == 1 || !empty($var_recherche) || $artsuite < 0 || $artsuite > $num_pages) {
                return $texte;
        } 

        $p_prec = $artsuite - 1;
        $p_suiv = $artsuite + 1;
        $uri_art = generer_url_article($GLOBALS['id_article']);
        $uri_art .= strpos($uri_art, '?') ? '&' : '?';
        
        switch (TRUE) {
                case ($artsuite == 0):
                        $precedent = "";
                        $suivant = "<A HREF='" . $uri_art . "artsuite=" . $p_suiv . "'>&gt;&gt;</A>";
                        break;
                case ($artsuite == ($num_pages-1)):
                        $precedent = "<A HREF='" . $uri_art . "artsuite=" . $p_prec . "'>&lt;&lt;</A>";
                        $suivant = "";
                        break;
                default:
                        $precedent = "<A HREF='" . $uri_art . "artsuite=" . $p_prec . "'>&lt;&lt;</A>";
                        $suivant = "<A HREF='" . $uri_art . "artsuite=" . $p_suiv . "'>&gt;&gt;</A>";
                        break;
        }
        
        for ($i = 0; $i < $num_pages; $i++) {
                $j = $i;
                if ($i == $artsuite) {
                        $milieu .= " <B>" . ++$j . "</B> ";
                } else {
                        $milieu .= " <A HREF='" . $uri_art . "artsuite=$i'>" . ++$j . "</A> ";
                }
        }

        // Ici, on peut personnaliser la présentation
        $resultat = "<P><DIV CLASS='pagination'>$precedent $milieu $suivant</DIV></P>";
        $resultat .= $page[$artsuite];
        $resultat .= "<P CLASS='pagination'><DIV CLASS='pagination'>$precedent $milieu $suivant</DIV></P>";
        return $resultat;
}
// FIN du Filtre decouper_en_page

2. Remplacer le [(#TEXTE)] présent dans article.html (ou dans votre propre squelette, bien sûr) par :

[(#TEXTE*|decouper_en_page|propre)]

Notez bien l’astérisque après #TEXTE ! Cette astérisque permet de désactiver les traitements par défaut de Spip sur le champ #TEXTE : c’est nécessaire ici parce que je veux traiter cinq traits d’union consécutifs qui sont transformés en <hr> normalement.

3. Rédigez vos articles en utilisant cinq traits d’union consécutifs à l’endroit qui doit recevoir la coupure.

À noter

Pour obtenir une ligne horizontale, la documentation de Spip stipule qu’une succession de quatre traits d’union ou plus est nécessaire. Avec ce filtre, c’est différent : quatre traits d’union provoque une ligne horizontale, cinq provoquent un saut de page. J’ai choisi ceci pour permettre d’avoir, dans l’hypothèse d’un autre squelette avec #TEXTE et non #TEXTE*, une ligne horizontale qui signale le découpage en pages.

Un exemple ?

Voyez http://alor.univ-montp3.fr/c.renais... pour un exemple sur un site existant.

Discussion

49 discussions

  • Bonjour,

    J’avais cette modif sur une vers 1.9 de spip et j’ai appliqué la modif de votre dernier message suite à la mise à jour en version 2. Cependant, maintenant que spip est passé en version 3, le paramètre $id_article n’est pas transmis à « mes_fonctions/php » et me génère donc des messages d’erreurs.

    Comment corriger ce problème ?

    Merci d’avance.

    Répondre à ce message

  • 1
    bdegoy

    Vin’S a écrit : « Il faut donc passer en paramètre #ID_ARTICLE et #ENVartsuite lors de l’appel de la fonction decouper_en_page() dans le squelette, pour que la fonction php connaisse la valeur de ces deux variables. Après ça miracle, tout roule ! »

     

    Pour que cela fonctionne avec SPIP 2.x, il faut :
    -  appeler le filtre sous la forme : decouper_en_page{#ID_ARTICLE}
    -  changer la fonction pour function decouper_en_page($texte, $id_article)
    -  supprimer les globales, et les remplacer par $artsuite = $_GET['artsuite'];
    -  remplacer $uri_art = generer_url_article($GLOBALS['id_article']); par :  $uri_art = generer_url_entite($id_article', "article");

     

    Voilà ce que cela donne :

    function decouper_en_page($texte,  $id_article) {
            //[spip20]global $artsuite, $var_recherche, $num_pages;
            $artsuite = $_GET['artsuite'];  //[spip20]
            if (empty($artsuite)) $artsuite = 0;
    	
    		// on divise la page (séparateur : "-----")        
            $page = split('-----', $texte);
            // Nombre total de pages
            $num_pages = count($page);
    
            // Si une seule page ou numéro illégal, alors retourner tout le texte.
            // Cas spécial : si var_recherche positionné, tout renvoyer pour permettre à la surbrillance de fonctionner correctement.
            if ($num_pages == 1 || !empty($var_recherche) || $artsuite < 0 || $artsuite > $num_pages) {
    			// On place les ancres sur les intertitres
    			$texte = preg_replace("|\{\{\{(.*)\}\}\}|U","<a id=\"sommaire_#NB_TITRE_DE_MON_ARTICLE#\"></a>$0", $texte);
    			$array = explode("#NB_TITRE_DE_MON_ARTICLE#" , $texte);
    			$res =count($array);
    			$i =1;
    			$texte=$array[0];
    			while($i<$res){
    				$texte=$texte.$i.$array[$i];
    				$i++;
    			}
    			return $texte;
            } 
    
            $p_prec = $artsuite - 1;
            $p_suiv = $artsuite + 1;
            //[spip20]$uri_art = generer_url_article($id_article);
            $uri_art = generer_url_entite($id_article, "article"); //[spip20] 
            $uri_art .= strpos($uri_art, '?') ? '&' : '?';
    
    		// On place les ancres sur les intertitres
    		$page[$artsuite] = preg_replace("|\{\{\{(.*)\}\}\}|U","<a id=\"sommaire_#NB_TITRE_DE_MON_ARTICLE#\"></a>$0", $page[$artsuite]);
    		$array = explode("#NB_TITRE_DE_MON_ARTICLE#" , $page[$artsuite]);
    		$res =count($array);
    		$i =1;
    		$page[$artsuite]=$array[0];
    		while($i<$res){
    			$page[$artsuite]=$page[$artsuite].$i.$array[$i];
    			$i++;
    		}
    		// Pagination
    	    switch (TRUE) {
    			case ($artsuite == 0):
    				$precedent = "";
    				$suivant = "<a href='" . $uri_art . "artsuite=" . $p_suiv . "'>&gt;&gt;</a>";
    				break;
    			case ($artsuite == ($num_pages-1)):
    				$precedent = "<a href='" . $uri_art . "artsuite=" . $p_prec . "'>&lt;&lt;</a>";
    				$suivant = "";
    				break;
    			default:
    				$precedent = "<a href='" . $uri_art . "artsuite=" . $p_prec . "'>&lt;&lt;</a>";
    				$suivant = "<a href='" . $uri_art . "artsuite=" . $p_suiv . "'>&gt;&gt;</a>";
    				break;
            }
        
            for ($i = 0; $i < $num_pages; $i++) {
    			$j = $i;
    			if ($i == $artsuite) {
    				$milieu .= " <strong>" . ++$j . "</strong> ";
                } 
    			else {
    				$milieu .= " <a href='" . $uri_art . "artsuite=$i'>" . ++$j . "</a> ";
    			}
            }
    
            // Ici, on peut personnaliser la présentation
            $resultat .= $page[$artsuite];
            $resultat .= "<div class='pagination' style='text-align:center'>pages : $precedent $milieu $suivant</div>";
            return $resultat;
    }
    // FIN du Filtre decouper_en_page

    Il est vrai que j’ai omis de régler le problème du surlignage des mots de la recherche, je réfléchis à cela.

    Bien cordialement à tous.

    • Je fais suite à mon précédent message dans lequel j’ai oublié de préciser quelquechose. Je dis :« appeler le filtre sous la forme : decouper_en_page#ID_ARTICLE ».

      Il faut donc modifier aussi la fonction sommaire_article :

      //[spip2]function sommaire_article($texte)
      function sommaire_article($texte, $id_article)     //[spip2]
      {
              $artsuite = 0;
              $page = split('-----', $texte);
              //[spip20]$uri_art = generer_url_article($GLOBALS['id_article']);
              $uri_art = generer_url_entite($id_article, "article"); //[spip2]
              $uri_art .= strpos($uri_art, '?') ? '&' : '?';
      
          $i=0;
          $texte="";
          while($page[$i]){
              // On ajoute une ancre aux intertitres "{{{ }}}" que l'on utilise pour créer le sommaire
              preg_match_all("|\{\{\{(.*)\}\}\}|U",$page[$i], $regs);
               $nb=1;
              for($j=0;$j<count($regs[1]);$j++){
                  $p=$i+1;
                  $texte=$texte."<li><a href=\"". $uri_art . "artsuite=" .$i. "#sommaire_".$nb."\" title=\"".$regs[1][$j]."\">".$regs[1][$j]."</a>,&nbsp;p$p</li>\n";
                  $nb++;
              }
              $i++;
          }
              if (empty($texte)) $texte="";
              else $texte="<ul>\n".$texte."</ul>\n";
              return $texte;
      }
      // Fin du filtre sommaire

    Répondre à ce message

  • Bonjour,
    j ai mis spip 2,0,5 et je n arrive pas a faire marcher le script, comment passer en parametre #Id_ARTICLE et #ENV_artsuite ??
    la fonction decouper_en_page() ne veux pas accepter 2arguments ?
    J’ai essayer pleins de possibilités ?? As tu renommez le .php3 en .php ou laisser comme ca ??

    Merci pour vos furtures reponses.

    Répondre à ce message

  • Vin’S

    Personnellement j’ai utilisé deux astuces de derrière les fagots pour faire marcher cette contrib’ sous la 2.0.5.
    Comme je ne suis pas un as du .php, j’ai pu identifier d’où venaient les problèmes mais je ne sais pas pourquoi ça marchait dans les vieilles version de Spip et pas dans la nouvelle.
    Les deux soucis viennent des variables globales.
    Je ne sais pas par quelle magie la déclaration « global $artsuite » récupérait le numéro généré dans l’URL, mais ça ne marche plus dans la 2.0.x.
    Idem pour GLOBALS[’id_article’] qui ne marche plus dans les nouvelles versions de Spip.
    Il faut donc passer en paramètre #ID_ARTICLE et #ENVartsuite lors de l’appel de la fonction decouper_en_page() dans le squelette, pour que la fonction php connaisse la valeur de ces deux variables.
    Après ça miracle, tout roule !

    Si certains ont des questions et ont besoin de ce script, je peux répondre ici.

    Répondre à ce message

  • Bonjour, quelqu’un aurait-il une solution pour faire marcher cette contrib sous spip 2.0.x ?

    Répondre à ce message

  • bonjour. g un petit souci,
    en faite je souhaite découper mon site en page ; c un long bandeau de 1000px(ou +) de largeur(chaque page est dc l’une a coté de l’autre) et chaque page est une rubrique. on peut naviguer par scrooling, mais je souhaiterai ajouter un menu rapide qui permettrai d’acceder directement a tel ou tel page en un clic.
    je pense que c la même chose que de découper un article en page, sauf que c’est sur la largeur, est ce que c’est possible en css ?
    help !

    Répondre à ce message

  • 1

    comment insérer des séparateurs entre les numéros de pages en bas de l’article ? Soit 1. 2. 3. .. soit 1 | 2 | 3 ... je ne sais pas ou placer ca dans le code

    Répondre à ce message

  • 2

    Bonjour,
    Comment modifier la fonction pour que la découpe des pages se fasse de façon automatique par rapport à un nombre de caractère par exemple.
    Je me doute que c’est « $page = split(’-----’, $texte) ; » qu’il faut remplacer cependant je ne vois pas comment.

    Je sais bien qu’une telle découpe automatique n’est pas conseillé mais je souhaite juste savoir comment est il possible de le faire. Merci de vos réponses.

    • J’ai enfin trouvé la réponse sur un forum php : l’utilisation de wordwrap().
      Wordwrap() permet nottament d’insérer un séparateur tous les n caractères en revenant au mot précédent pour ne pas le couper.

      j’ai pu ainsi intégrer automatiquement des ’-----’ à partir de x caractères et laisser ainsi le « split » fonctionner normalement.

      Donc : en fait, pour un découpage automatique :
      je remplace : $page = split(’-----’, $texte) ;
      par $texte2 = wordwrap($texte, 2000, ’-----’, 1) ;
      $page = split(’-----’, $texte2) ;
      voila ^^

    • cedricici

      Bonjour sur le même principe, j’ai modifié le filtre pour qu’il découpe l’article en ’n’ paragraphes entiers, la somme des caractères de ces paragraphes par pages étant inférieurs à la limite ajouté en argument du filtre (=2000 par defaut)

      // $page = split(’-----’, $texte) ;

      devient : avec $limite =2000 par defaut

      // on coupe tous les paragraphes et on regroupe ceux < $limite caractères

      $paragraphe = split(’’\n\n’’, $texte) ;

      $page[] = ’’’’ ;

      foreach($paragraphe as $par)

       if((strlen($page[sizeof($page)-1])+strlen($par)) <= $limite)

         $page[sizeof($page)-1] = $page[sizeof($page)-1].’’\n\n’’.$par ;

         else

          $page[]=’’\n\n’’.$par ;

        

      // $page = split(’-----’, $texte)

    Répondre à ce message

  • 1

    Je viens de l’installer sur une 1.9.2, ça marche parfaitement du premier coup.

    Par contre cela semble assez difficile à personnaliser. N’y a-t-il pas d’autres moyens ou plugins ? Cette fonction n’est pourtant pas si exotique pour un logiciel de publication d’articles.

    Merci en tous cas, ça fonctionne très bien.

    Répondre à ce message

  • Jérémy Zucchi

    Bonjour, et tout d’abord bravo pour ce filtre très pratique ! J’utilise le squelette EGT et sous Firefox il y a un problème au niveau du menu dépliable depuis que j’ai ajouté le fitre pour découper les articles (voir exemple). Par contre le découpage marche même sous Firefox, c’est juste le menu qui bugue. Si quelqu’un a une idée...

    Répondre à ce message

  • bonjour

    le script fonctionne tres bien , mais je voudrais simplement deplacer le menu de navigation en dessous de l’article pour qu’il garde la meme place ,,ce qui n’est pas le cas actuellement ,car l’article est decouper avec un nombre different de carateres a chaque page.

    merci...........

    Répondre à ce message

  • 5

    Dites-moi...
    Ce filtre ne pourrait-il pas fonctionner dans un tableau sur une même page ?
    Si oui, on tiendrait enfin LA solution pour publier des textes sur plusieurs colonnes.
     :-o

    • Après quelques modifications du code, il est maintenant possible d’avoir le texte sous forme de tableau ET sur plusieurs pages.

      La variable $nb_colonne indique le nombre de colonne à afficher par page.

      exemple :
      -  $nb_colonne = 2
      -  un texte qui tenait auparavant sur 5 pages

      -  résultat : la première page affiche les pages 1 et 2 sur deux colonnes. La page deux affiche les pages 3 et 4 et la dernière page, la 5.


      function decouper_en_page($texte) {
      global $artsuite, $var_recherche, $nb_colonnes;

      if (empty($artsuite)) $artsuite = 0;

      $nb_colonne = 2; // Nombre de Colonne pour l'affichage

      $page = split('-----', $texte);

      $num_pages = count($page);

      // Si une seule page ou numéro illégal, alors retourner tout le texte.
      // Cas spécial : si var_recherche positionné, tout renvoyer pour permettre à la surbrillance
      // de fonctionner correctement.
      if ($num_pages == 1 || !empty($var_recherche) || $artsuite < 0 || $artsuite > $num_pages) {
      return $texte;
      }

      if ($num_pages <= $nb_colonne || !empty($var_recherche) || $artsuite < 0 || $artsuite > $num_pages) {
      $resultat = "

      ".$page[0]."

      $resultat .= "

       ";

      $resultat .= "

      ".$page[$i]."";
      }

      $resultat .= "

      ";
      return $resultat;
      }

      $p_prec = $artsuite - $nb_colonne;
      $p_suiv = $artsuite + $nb_colonne;
      $uri_art = generer_url_article($GLOBALS['id_article']);
      $uri_art .= strpos($uri_art, '?') ? '&' : '?';

      switch (TRUE) {
      case ($artsuite == 0):
      $precedent = "";
      $suivant = ">>";
      break;
      case ($artsuite == ($num_pages-1)):
      $precedent = "<<";
      $suivant = "";
      break;
      default:
      $precedent = "<<";
      $suivant = ">>";
      break;
      }

      $j=0;
      for ($i = 0; $i < $num_pages;
      $i=$i+$nb_colonne) {
      if ($i == $artsuite) {
      $milieu .= " " . ++$j . " ";
      } else {
      $milieu .= " " . ++$j . " ";
      }
      }

      // Ici, on peut personnaliser la présentation
      $resultat = "

      ";

      $resultat .= "

      ".$page[$artsuite]."

      $resultat .= "

       ";

      $resultat .= "

      ".$page[$i]."";
      }

      $resultat .= "

      ";

      $resultat .= "

      ";
      return $resultat;
      }
      // FIN du Filtre decouper_en_page

      J’espère que cela vous conviendra. ;-)

      Et bien sur, un grand merci au script de GPL.

      Nicolas

    • bonjour,
      le script fonctionne chez moi, la page est bien découpée, mais apparait l’erreur suivante sur chaque debut de page :

      Missing argument 2 for decouper_en_page() in /var/www/spip3/mes_fonctions.php3 on line 37

    • sugardaddy

      je n’obtiens pas les 2 colonnes...
      juste une lettre bizarre au moment de la separation et plus de texte apres, la 2e colonne est zappée.
      mais keskispass ?
      merci de votre aide.

    • Salut !

      J’ai installé la version découper l’article en plusieures pages sans soucis mais quand je tente de mettre en oeuvre la découpe dans un tableau je n’obtiens rien après les 5 - ...

      Y’a t’il quelque chose à mettre en oeuvre afin de faire apparaître la seconde partie du texte ?

      En effet j’aimerais que mes articles soient coupés pour rentrer dans une mise en page (squelette) un peu spécifique avec le début de l’article à gauche de la page et le reste sur la partie droite de la page ...

    • Après bien des tests, je constate que cette contrib remarquable pose un pb avec une boucle document ...

      • Prenons la page article.html de la dist 1.8.2.g
      • Ajoutons *|decouper_en_page|propre à la balise #TEXTE
      • Ajoutons le filtre qui va bien dans mes_fonctions.php3

      Ecrivons un article avec un document joint inséré dans l’article type <docXX|center>( inséré dans le formulaire pas simplement joint...). Je ne saisis même pas les 5 tirets, je fais au plus simple, un article basique avec un doc joint dans le formulaire...

      Alors, la boucle documents-joints avec {mode=document]{doublons} est en échecet renvoie quand meme en double le document inséré dans le texte :(

      C’est possible d’y remédier ?
      ps : j’ai le même pb avec la 1.9

    Répondre à ce message

  • Bonjour

    Magnifique, le filtre. Je suis sous spip 1.9 et ça marche a merveille. Mais j’aimerais savoir si je peux inclure le numéro de la page dans le titre. Dans le fichier article.html qui contient

    ....#TITRE... et je voudrais faire ...#TITRE(page XX)...
    Merci

    Répondre à ce message

  • Juste merci pour la contrib. C’est très pratique.

    Répondre à ce message

  • D’abord merci pour cette merveilleuse contribution.
    Je voudrais placer le menu de navigation (pages 1,2 >>) ailleurs que sous le texte de l’article, comment faire ?

    Répondre à ce message

  • 1

    Salut,

    Certains d’entre vous ont peut-être connu ce problème, avec le filtre « decouper_en_page » : lorsque je clique sur « Page suivante » (ou « Page précédente »), l’affichage de l’article ne se met pas à jour. Je suis obligé de « recalculer » la page à chaque fois pour accéder aux parties successives de l’articles.

    Auriez-vous une idée pour régler ce problème ?

    Merci d’avance !

    Répondre à ce message

  • 1

    Bonjour à tous,

    Ce filtre est l’un des plus puissants que j’utilise. Avant tout, merci à ses auteurs.

    Seulement voilà, depuis que j’utilise les « urls propres » (1.8.1), il ne fonctionne plus...

    aie, aie, aie... je crains, en effet, qu’ils ne soient pas compatibles. J’ai retiré les « urls propres » et, là, tout a fonctionné. Les articles étaient à nouveau découpés...

    Quelqu’un a t il une idée pour avoir des urls propres tout en faisant fonctionner le script « découpés en page » ?

    Merci encore

    Répondre à ce message

  • 2

    Bonjour,

    Tout me paraissait si simple que tout finit par se compliquer...

    J’ai créé et placé à la racine du site le fichier mes_fonctions.php3 en ne faisant qu’un simple copier/coller du code proposé.

    Ensuite, dans article.html, j’ai remplacé (#TEXTE) par[(#TEXTE*|decouper_en_page|propre)]

    Erreur : filtre « decouper_en_page » non défini.

    Une solution pour me permettre d’utiliser ce superbe script ?
    Merci par avance

    • Cette fonction est du php, as-tu mis les balises :

         <?php
      et
         ?>

      au début et à la fin de ton fichier mes_fonctions.php3 ?

    • j’ai exactement le même problème..

      filtre « decouper_en_page » non défini, _reportages

      Et ou i j’ai mis les balises ou du moins j’a laissé les balises ouvrantes et fermantes de la page config-fonctions.php3 d’origine

      kelkun pourrait-m’aider ????

      merci

    Répondre à ce message

  • Bonjour,

    Première chose, merci beaucoup pour ce filtre :-) C’est vraiment bien de pouvoir découper les articles pour un meilleur confort de lecture.

    Avec les différentes interventions, j’ai pu déjà le modifier comme je le souhaitais, je bute cependant sur un truc.
    J’ai découpé mon article en plusieurs pages, à chaque page j’ai pu faire en sorte que le chapo, le titre, etc... n’apparaissent pas.
    Dans le même esprit j’aimerais que les champs Extras que j’ai rajouté ne s’affiche que sur la dernière page et pas sur toutes les pages... Vous avez une solution pour ça ?

    Merci d’avance :-)

    Répondre à ce message

  • 1

    Bonjour,

    sur mon poste local (Windows XP) ca fonctionne très bien. Par contre, sur mon serveur Linux, le découpage fonctionne mais, la mise en cache ne se fait pas (une seule page est cachée). Donc lorsque je clique pour aller sur la page suivante, il faut que je recalcule la page, ensuite pour aller encore à la suivante, il faut aussi recalculer la page (et ainsi de suite)....

    J’utilise spip agora.

    Des idées ?

    • Je suis débutant sur spip et je cherche à faire la chose suivante :

      Imaginons une rubrique qui contient 200 articles. J’aimerais afficher mes articles par pages de 10 ou 20, en les classant au choix par date, par auteur ou theme...

      Est-ce possible ? Merci !

    Répondre à ce message

  • 3

    Je teste actuellement SPIP avec la version 1.7

    J’ai ajouté le fichier mes_fonctions.php3 contenant le code de la fonction. Dans une page de test j’ai appelé un article avec une boucle de type :

    <BOUCLE_texte_article(ARTICLES){id_article=4}>
          [(#TEXTE*|decouper_en_page|propre)]
            </BOUCLE_texte_article>

    Le résultat est le suivant :
    -  en haut de la page apparait le code de la fonction (ce n’est pas très joli...)
    -  à l’endroit où le texte devrait apparaître il y a le message : Erreur : filtre « decouper_en_page » non défini

    Quelqu’un peut-il m’aider ??

    Michaël

    • Il faut placer le code suivant dans le fichier mes_fonctions.php3 :

      <?php
      
      mes fonctions....
      
      ?>

      J’espère avoir répondu à ta question.

      Olivier

    • ça marche !!

      merci m’sieur.

      michaël

    • Merci de cette réponse, j’ai eu le même problème.

      Cependant, j’obtient maintenant un superbe Parse error ligne X unexpected T_function. une idée ?

      Merci !

    Répondre à ce message

  • Sansnom

    Script excellent qui remplace avantageusement la fonction couper plutôt encore sévèrement buguée.

    Juste un blème. Je l’utilise sur un squelette sommaire qui fonctionne comme un blog, cad qui ramène tous les articles, quelle que soit leur catégorie. Mon problème est que lorsque l’on change de page dans un article découpé en page, il n’y a pas de système d’ancre nommée, et donc on est renvoyé systématiquement au haut de la page sommaire et il faut rescroller pour retrouver l’article dans le défilé, ce qui est peu ergonomique.

    Quelqu’un sait-il modifier la fonction pour pallier cet inconvénient ?

    Répondre à ce message

  • Bonjour,

    Comme je n’avais pas le fichier mes_fonctions.php3 dans l’arborescence de spip je l’ai créé (renommé en php pour les besoins de l’hébergement). Ensuite, j’ai reporté dans article .html la ligne de code que vous proposez. Quel bazar, j’ai des messages d’erreur partout. Précision : le site est en php (nécessité de l’hébergeur). Je désespère de voir marcher ce sript qui m’intéresse pourtant dans la réalisation d’un projet pédagogique. Quelqu’un propose t’il une méthodo pas à pas : quelquechose de plus didactique avec ??? copies écran ?
    Si ça existe ?

    Répondre à ce message

  • Lestrade

    Bonjour,

    Tout fonctionne pour le mieux, sauf que, les renvois en bas de page (1), (2) etc ne fonctionnent plus sur les pages, sauf sur la dernière.
    Voir ici : http://www.oulala.net/Portail/article.php3?id_article=1283&artsuite=0

    Une idée docteur ?

    Merci

    Lestrade

    Répondre à ce message

  • sugardaddy

    je n’obtiens pas les 2 colonnes... juste une lettre bizarre au moment de la separation et plus de texte apres, la 2e colonne est zappée. mais keskispass ? merci de votre aide.

    Répondre à ce message

  • 1

    bonjour,

    le script fonctionne chez moi, la page est bien découpée, mais apparait l’erreur suivante sur chaque debut de page :

    Missing argument 2 for decouper_en_page() in /var/www/spip3/mes_fonctions.php3 on line 37

    • c’est bon :

      [(#TEXTE*|decouper_en_page{article}|propre)]

    Répondre à ce message

  • 4

    Bonjour à Tous est merci pour ce filtre qui marche bien à une petite exception près.

    En effet, le filtre ne permet pas de conserver la mise en page de l’article grâce au raccourci spip ( Mise en gros avec et mise en italiquen, H1, puce, etc...). Berf, on perd d’un côté ce que l’on gagne de l’autre.

    Si j’ai bien compris, cette désactivation fait suite à l’* après TEXTE, sinon, on aurait non pas un saut de page, mais une ligne horizontale. (-----) .

    Pour pouvoir conserver les deux (mise en page et article en plusieurs page), ne faudrait-il pas remplacer la combinaison des cinq ----- par une autre combinaison qui ne serait pas du tout vu par SPIP comme par exemple —saut_de_page—, qui a fort peux de chance de se trouver dans un article pour signifier autre chose. Et ainsi, si on enlève le filtre decouper_en_page, il y a toujours une logique avec TEXTE.

    Voilà, maintenant, je n’ai pas encore essayé de modifier la fonction. Je n’y connais rien en PHP. Je vais donc tatonner.

    Si quelqu’un à déjà la réponse, je suis preneur.

    Et merci encore pour tout.

    Romain

    • « « 
      En effet, le filtre ne permet pas de conserver la mise en page de l’article grâce au raccourci spip ( Mise en gros avec et mise en italiquen, H1, puce, etc...). Berf, on perd d’un côté ce que l’on gagne de l’autre.
       » »

      Si c’est le cas, c’est qu’il y a un problème. Le #TEXTE* supprimer, en effet, le traitement par défaut. Mais le dernier « filtre » appliqué à #TEXTE* est « propre » : celui-ci rétablit donc les traitements typo de Spip (H1, gras, etc.). Si ça ne marche pas dans votre cas, c’est qu’il y a un problème.

      « « 
      Si quelqu’un à déjà la réponse, je suis preneur.
       » »

      Merci de me dire si ça marche.

      « « 
      Et merci encore pour tout.
       » »

      De rien,

      gpl

    • Oups !! mon erreur est indépendante de SPIP et de la fonction. Désolé ..

      En fait, c’est un style gras qui s’appliquant à la cellule accueillantla balise TEXTE, modifait le résultat (il met tout en gras, so ... je ne voyais pas la différence gras / pas_gras.

      Par contre, l’astuce consistant à remplacer les 5 tiret par une autre expression (dans mon cas sautdepage) fonctionne et l’on peut alors mettre comme balise (TEXTE tout simplement.

      Merci pour ces aides

      Romain

    • « propre » marche donc. :-)

      Mais en utilisant une autre notation que cinq traits d’union, on perd la possibilité d’avoir un autre squelette pour le même article qui n’utilise pas decouper_page. En effet, sans decouper_page, cinq traits d’union font une ligne horizontale alors que tout autre choix du type —sautdepage— reste —sautdepage—. Imaginez faire un sqelette pour imprimer l’article complètement : il faudrait alors faire un filtre pour enlever le —sautdepage—...

      gpl

    • je n’ai pas trouvé un exemple pour enlever les symboles « §§ » de mon squellette d’impression « article-imp.html ».

      vous pourriez m’aider ?

      merci,
      tiago

    Répondre à ce message

  • 1

    Ce script est fonctionnel et très utile ... mais uniquement dans un squelette article(-dist).html.

    J’affiche dans certaines rubriques un article intégral (parfois long). Si j’utilise les filtres sommaire et/ou decouper_page dans le squelette d’une rubrique, ils fonctionnent pour la première page mais les liens générés (ancres et pages suivantes) sont incohérents.

    Je n’ai pas la compétence pour modifier ce script php : une idée ? une solution ?

    Merci pour cette contribution et votre aide.

    • Sauf erreur de ma part, je pense que ce problème peut-être résolu en modifiant uniquement cette ligne :

      $uri_art = generer_url_article($GLOBALS['id_article']);

    Répondre à ce message

  • 1
    Thebigkiller

    voila chui un noob et je vois pas trop ou mettre le fameux [(#TEXTE*|decouper_en_page|propre)] dans mon squelette personne pour m’aider ? (je l’ai mis au hasard a une ligne blanche mais cela ne fonctionne pas et le fichier mes_fonctions.php3 a bien été mis en place)

    • Dans la boucle qui concerne l’affichage de l’article et bien sur de son texte :

      Exemple très rudimentaire :

      <B_un_article>
      	<BOUCLE_un_article(ARTICLES){id_article='n'}
      	[(#TEXTE*|decouper_en_page|propre)]
      	</BOUCLE_un_article>
      </B_un_article>

      En fait :

      [(#TEXTE*|decouper_en_page|propre)]

      remplace simplement dans ton squelette

      [(#TEXTE)]

    Répondre à ce message

  • 2

    Bonjour,

    Il faudrait rendre ce filtre compatible xhtml 1.0,
    préciser dans les commentaires du code que la variable des pages est « artsuite ».

    La documentation officielle (http://www.php.net/manual/fr/functi...) indique « Notez bien que si vous n’avez pas besoin de la puissance des expressions régulières, il est plus rapide d’utiliser explode(), qui n’utilise pas le moteur d’expressions régulières. »

    • > Il faudrait rendre ce filtre compatible xhtml 1.0,

      En l’état, les squelettes standards de Spip ne sont pas en XHtml 1.0 (il me semble). Sinon, c’est faisable très rapidement. Je le laisse comme « exercice au lecteur ».

      > préciser dans les commentaires du code que la variable des pages est « artsuite ».

      Oui mais pourquoi ?

      >La documentation officielle (http://www.php.net/manual/fr/functi...) indique

      > « Notez bien que si vous n’avez pas besoin de la puissance des expressions régulières,

      > il est plus rapide d’utiliser explode(), qui n’utilise pas le moteur d’expressions régulières. »

      Certes, mais on n’utilise pas d’expression rationnelle dans ce filtre, non ? Attention, on est le 5 janvier et mon cerveau n’est pas encore au clair. :-)

    • Bonjour,

      >> préciser dans les commentaires du code que la variable des pages est « artsuite ».

      > Oui mais pourquoi ?

      Pour savoir que « artsuite » est envoyé en GET dans la requète http, au cas où du php utiliserait une variable « artsuite » (cas rare mais non impossible).

      >> « Notez bien que si vous n’avez pas besoin de la puissance des expressions régulières,

      >> il est plus rapide d’utiliser explode(), qui n’utilise pas le moteur d’expressions régulières. »

      > Certes, mais on n’utilise pas d’expression rationnelle dans ce filtre, non ?
      > Attention, on est le 5 janvier et mon cerveau n’est pas encore au clair.

      Il suffit de relire à tête reposée :
      « [si vous n’utilisez pas d’] expressions régulières, il est plus rapide d’utiliser explode ».

    Répondre à ce message

  • 2
    Jean-Marc Tourreilles

    Bravo pour ce filtre, très élégant.

    Pourquoi ne pas le faire dériver vers un script similaire permettant de découper un article en plusieurs colonnes ? J’avoue que je ne vois pas comment le faire.

    • Bonjour,
      je suis un nouvel utilisateur mais cependant un peu habitué aux cms en général.
      Ce que je ne comprends pas c’est où est le fichier mes_fonctions.php3 ?
      J’ai beau cherché je ne le trouves pas !
      Faut-il le créer et le mettre à la racine du site ?

    • Bon en fait j’ai compris quand j’ai installé un squelette.
      Maintenant j’ai le fichier : que du bonheur.
      Spip me plait déjà beaucoup ^_^

    Répondre à ce message

  • 2

    Bonjour je n’arrive pas a afficher de tableau apres les 5- .... :-/ Une solution.. ;-) merci.

    • J’avais le même problème que j’ai réglé comme suit :

      remplacer les cinq tirets par un autre ensemble de signes, non utilisés par Spip (pour ma part, j’ai choisi §§.

      Modifier le script en conséquence :

      $page=split(’§§’,$texte) ;

      Comme cela, on peut appeler le script sans désactiver les fonctions SPIP avec :

      [(#TEXTE|decouper_en_page|propre)]

      Chez moi cela fonctionne très bien

    • Je ne comprends pas pourquoi, j’ai fait cette manip et chez moi ca ne passe pas.

      Ce que j’ai fait : remplacer dans le fichier mes_fonctions.php3 les deux occurences de :

      $page = split(’-----’, $texte) ;

      par $page = split(’§§’, $texte) ;

      et ensuite j’ai modifié les séparateurs dans mon articel (donc en mettant des §§ au lieu de ----- à chaque fois que je voulais un saut de page)

      et enfin j’ai appelé
      (#TEXTE
      dans mon squelette.

      Résultat : j’ai mon sommaire qui est bien découpé mais par contre dans mon texte, au lieu d’avoir un beau saut de page, j’ai un malheurexu §§ :-((

      Je n’arrive pas à voir ce que je fais de pas correct.
      Si l’un de vous voit mon erreur, please let me know.

      Mercu d’avance,
      steevy.

    Répondre à ce message

  • 2

    Super ce script !
    Une question : coment éviter que le CHAPO revienne à chaque page ?

    Exemple du problème

    Merci de votre aide.

    • tu peux compléter le filtre avec une fonction de ce style :

      function cacher_decouper_en_page($texte)
      global $artsuite ;

      if ($artsuite>0)
      $texte=’’ ;

      return $texte ;

      et ajouter ceci dans ton squelette :

      (#CHAPO

      Le chapo n’apparaitra que sur la première page.

    • Super !

      Merci beaucoup de ton aide :-)

    Répondre à ce message

  • Stéphane VANPOPERYNGHE

    Le script désactive la transformation des tableaux avec SPIP. Existe-t-il un moyen (filtre SPIP ?) pour réactiver cela ?

    Répondre à ce message

  • Bonjour et félicitations pour ce script qui s’avère plutôt utile !

    Je suis débutant sur spip et je cherche à faire la chose suivante :

    Imaginons une rubrique qui contient 200 articles. J’aimerais afficher mes articles par pages de 10 ou 20, en les classant au choix par date, par auteur ou theme...

    Est-ce possible ? Merci !

    Répondre à ce message

  • J’ai proposé un article où J’ai couplé les scripts « sommaire » et « découper un article en plusieurs pages ».

    Il est en attente de validation

    Répondre à ce message

  • Salut !

    C’est vrai, il est top ton filtre, mais il ne marche pas avec des squelette de EVA, pour des raisons que j’ignore. Essaie-le, tu verras. Je ne suis pas le seul à le constater.

    Si tu a trouve une solution, fais le savoir s.v.p.

    André

    Répondre à ce message

  • Bonjour à tous les spipeurs

    ok ce code marche impec je remercie le spipmaster car ce code est vraiment important pour donner à un article un effet de livre contenant plusieur pages.

    Je le recommande car cela permet aux visiteurs d’un article de ne pas être découragés à lire vos articles par l’aspect interminable de votre page.
    Je ne suis pas un spécialiste que du contraire je suis même assez nul pour la prog. et là j’ai réalisé sa mise en ligne sans mentir en 2 minutes, et l’effet super. voir exemple : voir exemple ici
    Merci à vous

    Répondre à ce message

  • 2

    Le problème que pose ce script, c’est qu’il faut sans cesse revenir dans l’article pour ajuster là où l’on va couper, ce n’est jamais très régulier...etc., c’est domage, ce fonctionnement à « tatonnements », il faudrait quelquechose de plus automatique...

    • Le problème, c’est qu’aucun algorithme ne permet de découper « intelligemment »... On pourrait prévoir de découper tous les cinq paragraphes, ou tous les 5 000 caractères. Mais je n’écrirai pas ce filtre : trop systématique !

      Un candidat ? ;-)

    • J’insiste (oui c’est ma nature :-D) mais il faut que je précise ma réflexion : Bien souvent lorsque l’on écrit un article, il se décompose en plusieurs paragraphes... pourquoi alors ne pas laisser la possibilité avec un truc comme (texte de tranformer ces paragraphes en plusieurs pages différentes, avec en bas de page un petit menu qui reprend chaque titre de paragraphe pour pouvoir naviguer aisément...actuellement la solution c’est d’écrire plusieurs articles...mais en terme de lisibilité c’est moyen...

      Il me semle (je ne suis pas dévelopeur) que c’est assez facile, il suffit de tester le

      non ?

      j’espère avoir été clair, voici ci dessous un petit explicatif :

      PAGE 1

      Titre article

      titre paragraphe1

      texte paragraphe 1


      Titre article :

      page 1 : titre paragraphe 1 (pas de lien puisque l’on est dessus)

      page 2 : titre paragraphe 2 (lien)

      page 3 : titre paragraphe 3 (lien)
      etc...

      PAGE 2

      Titre article

      titre paragraphe2

      texte paragraphe 2


      Titre article :

      page 1 : titre paragraphe 1 (lien)

      page 2 : titre paragraphe 2 (pas de lien puisque l’on est dessus)

      page 3 : titre paragraphe 3 (lien)
      etc..

      ETC...

      Merci @+

    Répondre à ce message

  • Y a-t’il un filtre pour imprimer une seule page sur 2 ?

    Répondre à ce message

  • 6

    Est-ce que je peux mettre des images a la place << 1 2>> ?

    • Dans le script, trouve le texte suivant :

      &gt;&gt;

      (c’est pour « >> ») et :

      &lt;&lt;

      (pour « << », donc). Tu peux alors changer et mettre

      <img src='mon_image_qui_dit_page_suivante.gif' width='largeur_pixel' height='hauteur_pixel' alt='&gt;&gt;'>

      (en changeant, bien sûr, largeur_pixel et hauteur_pixel et le nom de l’image).

      gpl

    • J’ai :Erreur : filtre « decouper_en_page » non défini
      Est-ce que je dois mettre Img src=... chaque fois qu’il y a << et >> ?
      Comme je mets des images est-ce que je peux enlever les chiffres 1 et 2 (je n’ai besoin de plus decouper le texte)

    • Erreur : filtre « decouper_en_page » non défini

      veut dire le plus souvent qu’il y a une erreur dans le filtre.

      La ligne originale :

      $suivant = "<A HREF='" . $uri_art . "artsuite=" . $p_suiv . "'>&gt;&gt;</A>";

      est-elle devenue quelque chose comme :

      $suivant = "<A HREF='" . $uri_art . "artsuite=" . $p_suiv . "'><img src='suiv.gif' alt='suivant'></A>";

       ?

      Il faut bien vérifier qu’on utilise «  » et non « " » dans les balises !

    • Genial. Merci.
      Comme je n’ai besoin de decouper le texte qu’en 2 parties et que je mets des images est-ce que je peux enlever le 1 et 2 entre les 2 images.

    • Pour éviter les numéros de pages, remplace :

      for ($i = 0; $i < $num_pages; $i++) {
          $j = $i;
          if ($i == $artsuite) {
             $milieu .= " <B>" . ++$j . "</B> ";
          } else {
             $milieu .= " <A HREF='" . $uri_art . "artsuite=$i'>" . ++$j . "</A> ";
          }
      }

      par :

         $milieu = '';

      Et ça devrait marcher.

      Sinon, dis-moi. ;-)

    • Ca marche.Merci.

    Répondre à ce message

  • 1
    Hammerhead

    Salut tout le monde,

    J’ai un petit problème avec ce filtre. Il convient parfaitement à mes besoins (encore merci à GPL), mais la page des liens ne correspond pas avec le restant de mon site.
    En effet j’utilise un squelette spécial que j’utilise pour afficher les dossier (ou de très longs articles si vous préférez).

    En gros, au lieu que ça pointe vers article.php ?id_article=numArticle, je voudrais un truc du style articleDossier.php ?id_article=numArticle où numArticle est le numéro de l’article.

    Je suis pas un pro du PHP, donc si vous connaissez la combine, ça m’aiderait bien.

    Merci d’avance :-)

    • Non testé !

      Repère la ligne :

              $uri_art = generer_url_article($GLOBALS['id_article']);

      Cette ligne récupère normalement quelque chose comme article.php3?id_article=3.

      Tu la changes alors pour quelque chose comme :

              $uri_art = "dossier_perso?id_article=".$GLOBALS['id_article'];

      À tester avant mise en production ! J’écris ça sans vérifier mais ça devrait fonctionner... Soyons optimiste. :-)

      gpl

    Répondre à ce message

  • J’utilise conjointement les fonctions de « sommaire » et de « découper » l’article. :-D

    Mon souci est que les liens fonctionnent bien sur les éléments pris dans le sommaire qui renvoient à la page actuelle, mais qu’ils sont inopérants pour renvoyer à des éléments des pages précédantes ou suivantes... Avez vous une soluce ?

    Répondre à ce message

  • Bravo pour ce petit script. J’ai juste un petit souci, les images que je mets dans le texte apparaissent en document joint lorsqu’elles sont en page suivante ou précédent. Y’ t-il un moyen de remédier à ça ?

    MERCI

    B-)

    Répondre à ce message

  • 2

    Je suis débutante avec spip et je travaille sous la version 1.4.2. Je ne parviens pas à mettre en place correctement ce filtre. N’ayant pas trouvé, le fichier "mes_fonctions.php3", j’ai incorporé le code dans config-fonctions.php3. Et j’ai incorporer dans le squelette d’article.html le code indiquer.

    Maintenant dès que je veux ouvrir un article le message suivant m’est délivré : Erreur : filtre « decouper_en_page » non défini.

    Je ne comprends pas vez-vous une solution ?

    • Il faut copier le filtre dans un fichier mes_fonctions.php3 que vous créez à la racine du site spip (pas dans le répertoire écrire). Il ne faut surtout pas modifier les fichiers existants.

    • il faut aussi ne pas oublier de mettre en début et en fin du fichier mes_fonctions.php3 les balises php suivantes :

      <?php
      
      ici vos fonctions
      
      
      ?>

      Et là plus d’erreur du style, je ne trouve pas le filtre machin ...

      A bientôt

      Romain

    Répondre à ce message

  • Pour changer les chevrons (<<>>) en ’précedent’ et ’suivant’, il convient de le faire là :

    -  Avant :

            switch (TRUE) {
                    case ($artsuite == 0):
                            $precedent = "";
                            $suivant = "<A HREF='" . $uri_art . "artsuite=" . $p_suiv . "'>&gt;&gt;</A>";
                            break;
                    case ($artsuite == ($num_pages-1)):
                            $precedent = "<A HREF='" . $uri_art . "artsuite=" . $p_prec . "'>&lt;&lt;</A>";
                            $suivant = "";
                            break;
                    default:
                            $precedent = "<A HREF='" . $uri_art . "artsuite=" . $p_prec . "'>&lt;&lt;</A>";
                            $suivant = "<A HREF='" . $uri_art . "artsuite=" . $p_suiv . "'>&gt;&gt;</A>";
                            break;
            }

    -  Après :

            switch (TRUE) {
                    case ($artsuite == 0):
                            $precedent = "";
                            $suivant = "<A HREF='" . $uri_art . "artsuite=" . $p_suiv . "'>Suivant</A>";
                            break;
                    case ($artsuite == ($num_pages-1)):
                            $precedent = "<A HREF='" . $uri_art . "artsuite=" . $p_prec . "'>Precedent</A>";
                            $suivant = "";
                            break;
                    default:
                            $precedent = "<A HREF='" . $uri_art . "artsuite=" . $p_prec . "'>Precedent</A>";
                            $suivant = "<A HREF='" . $uri_art . "artsuite=" . $p_suiv . "'>Suivant</A>";
                            break;
            }

    Mais cela risque de faire un peu beaucoup au dessus du texte au niveau esthétique :)

    Répondre à ce message

  • Bonsoir

    Encore merci pour ce filtre très utile !
    En local je développe un site sous spip 1.5.1. Il s’avère que le filtre fonctionne mais pour les pages suivantes chaque premier paragraphe de la page commence par l’affichage de la puce par défaut.
    J’ai bien regardé dans l’article ou le squelette je n’ai placé aucun « - ».
    Avez vous déjà rencontré un souci similaire ?

    De plus je ne connais pas grand chose au php mais toujours dans l’idée de personnaliser la présentation où remplacer les « <<" ou ">> » par précèdent ou suivant ?

    encore merci et à très bientôt

    annabelle paillery

    Répondre à ce message

  • Pour aligner les liens a droite il suffit simplement de changer les lignes à la fin

    // Ici, on peut personnaliser la présentation

    $resultat = « <(P)><(DIV CLASS=’pagination’)>$precedent $milieu $suivant<(/DIV)><(/P)> » ;

    $resultat .= $page[$artsuite] ;

    $resultat .= « <(P CLASS=’pagination’)><(DIV CLASS=’pagination’)>$precedent $milieu $suivant<(/DIV)><(/P)> » ;

    return $resultat ;

    par

    // Ici, on peut personnaliser la présentation

    $resultat = « <(P)><(DIV CLASS=’pagination’)><(div align=’right’)>$precedent $milieu $suivant<(/div)><(/DIV)><(/P)> » ;

    $resultat .= $page[$artsuite] ;

    $resultat .= « <(P CLASS=’pagination’)><(DIV CLASS=’pagination’)><(div align=’right’)>$precedent $milieu $suivant<(/div)><(/DIV)><(/P)> » ;

    return $resultat ;

    c’est du html tout simple

    p.s : supprimez toutes les parenthese entre les < > que j’ai placé pour eviter à spip d’interpreter le code html

    Répondre à ce message

  • Salut,

     :’-D Je bute sur un point sans doute simple à résoudre. Je cherche à aligner à droite la numérotation des sauts de page et à changer la typo via une feuille de style. Mes essais se terminent ... par une parse error. Comment dois-je m’y prendre ? Merci Anton.

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

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

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom