Skip to topic | Skip to bottom
Home
Search:

Local
Local.ImcNiceS3mr1.1 - 22 Dec 2004 - 15:20 - GeneXtopic end
You are here: Local > ImcNice > ImcNiceS3 > ImcNiceS3m

Start of topic | Skip to actions

Les filtres de SPIP

Ce document est presque le meme qu'on peut trouver sur Uzine, Les filtres sur SPIP

Il n'y a pas besoin de modifier l'structure, seulement de ajouter des funtions a le fichier my functions. Il est un filtre et pas une valise.

Notre probleme peut il etre resolu avec un filtre comme

#IDARTICLE|checkbouton

et dans le fichier mes fontions.

<?php 
  function checkbouton($id_article) {
    $result = mysql_query(....
     if($result["statut"] == 'publie')
           return "<img .....>";
     else
            return "&lt img .....>"
   }
?>

php fonctions et SPIP

Ajouter ses propres fonctions

Les filtres de SPIP sont des fonctions PHP à une seule variable. Vous pouvez utiliser directement les fonctions habituelles de PHP, mais également créer les vôtres (à la condition qu'elles n'aient qu'une seule variable), sur le modèle :

<?php
function mon_filtre($texte){
   $texte = (bidouillages en PHP) ...;
   return $texte;
}
?>

Afin de ne pas avoir à modifier des fichiers de SPIP (qui risqueraient d'être écrasés lors d'une prochaine mise à jour), vous pouvez installer vos fonctions personnelles dans un fichier mes_fonctions.php3 : si SPIP repère un fichier ayant ce nom, il l'inclut automatiquement.

Par exemple, ARNO* a développé le filtre enlettres, qui n'est pas inclus dans la distribution standard de SPIP. Ce filtre écrit un nombre en toutes lettres ( [(#DATE|annee|enlettres)] = « deux mille deux ») ; ce filtre peut être téléchargé sur http://rezo.net/spip-dev/contrib/ARNO/ ; il suffit de l'ajouter dans votre fichier mes_fonctions.php3 pour l'utiliser.

Autre exemple, pour faire un filtre qui coupe les textes à une longueur donnée (ex : 50 caractères), on peut créer le filtre personnalisé suivant dans mes_fonctions.php3 :

<?php
    function couper50($texte) {
        return couper($texte, 50);
    }
?>

-- IosebaR - 12 Nov 2002
to top


You are here: Local > ImcNice > ImcNiceS3 > ImcNiceS3m

to top

Copyright © 1999-2008 by the contributing authors.
All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding this tool? Send feedback (in English, Francais, Deutsch or Dutch).