SPIP-Contrib

SPIP-Contrib

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

289 Plugins, 197 contribs sur SPIP-Zone, 155 visiteurs en ce moment

Accueil > Squelettes > Outils pour squelettes > Squelette conditionnel

Squelette conditionnel

3 février 2005 – par Fil, James

0 vote

* Il manque les conditionnelles (« pas d’article à cette adresse »)
dans les squelettes par défaut ; rendre une page vide, c’est pas top,
on devrait peut-être ajouter un <include(404.php3)>.

Cette entrée de la TodoListe me tarabiscotte depuis un moment.
On devrait ajouter ? Qu’à cela ne tienne, ajoutons !

* Il manque les conditionnelles (« pas d’article à cette adresse »)
dans les squelettes par défaut ; rendre une page vide, c’est pas top,
on devrait peut-être ajouter un <include(404.php3)>.

Cette entrée de la TodoListe me tarabiscotte depuis un moment.
On devrait ajouter ? Qu’à cela ne tienne, ajoutons !

1. Créer le fichier 404.php3 :

<?php
header("HTTP/1.1 404 Not found");
header("Status: 404 Not found");
$fond = "404";
$delais = 0;
$flag_preserver = true;

include ("inc-public.php3");

?>

2. Créer le fichier 404-dist.html :

3. Ajouter le filtre non_publie dans mes_fonctions.php3 :

4. Ajouter les codes manquants dans ecrire/lang/local_fr.php3 :

5. Dans tous les squelettes *-dist.html,
modifier la fin de chaque fichier :

</body>
</html>
</BOUCLE_<objet>_principal>

<:aucun_<objet>:><INCLURE(404.php3){id_<objet>}><//B_<objet>_principal> [1]

5bis. Pour éviter d’avoir 2 déclarations de DOCTYPE, ajouter au début de chaque fichier *-dist.html :

<B_<objet>_principal>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<BOUCLE_<objet>_principal(<OBJETS>) {id_<objet>}>

Attention ! Pour site-dist.html ce n’est pas la peine de se fatiguer, il n’est pas construit de la même manière et tient déjà compte du problème. On pourrait s’amuser à le réecrire entièrement...

6. S’arranger pour que les boutons d’administration n’apparaissent pas si l’id_<objet> n’existe pas dans la base.

C’est la raison de la présence de la ligne :
$flag_preserver = true; dans le fichier 404.php3 et de l’absence de la balise #FORMULAIRE_ADMIN dans le squelette.

Pour être plus fin, il faudrait, par exemple dans inc-admin.php3, modifier la fonction afficher_boutons_admin() pour qu’elle n’affiche QUE le bouton ’recalculer cette page’... Mais cela nous oblige à modifier le noyau, et pour si peu, ce serait balot...

7. S’assurer de la non-prise en compte du hit dans les statistiques... Pas de mystère, c’est une modification du code qui nous attend. Aussi, considérons que ce dernier point est facultatif. Dans inc-stats.php3, dans la fonction ecrire_stats() :

        else {
                $log_type = "autre";
                $log_id_num = 0;
        }

        // Conversion IP 4 octets -> entier 32 bits

7. Si vous y tenez, Le fichier .htaccess à la racine de votre site pourra contenir :

ErrorDocument 404 404.php3

8. Un bonheur n’arrivant jamais seul, la gestion des « erreurs » de ce type est intégré à la version 1.8

Notes

[1bien coller les balises, sans caractères supplémentaires, pour éviter l’envoi de caractères au navigateur avant l’envoi d’une entête, dixit Déesse A. qui a bien raison ;-)

Dernière modification de cette page le 27 mai 2007

Retour en haut de la page
Retour en haut de la page

Ça discute par ici

  • Enluminures typographiques V3

    25 juillet 2009 – 203 commentaires

    Les Enluminures typographiques V3 permettent d’ajouter au Porte plume les raccourcis typographiques présents dans le Plugin Barre Typographique Enluminée. C’est une extension du PortePlume. Pour la documentation d’usage, se reporter à celle du (...)

  • Hyperspace : squelette responsive

    8 mars 2016 – 46 commentaires

    Description Ce squelette distribué en plugin est un portage pour SPIP du thème responsive « Hyperspace », proposé sur le site . Voir la démo originale : Sites utilisant le plugin : C’est une base de départ pour l’intégration d’un site simple de (...)

  • Escal-V3 et Escal-V4

    16 février 2012 – 320 commentaires

    Un jeu de squelettes proposant un affichage en 2 ou 3 colonnes avec un large choix de noisettes à insérer ou pas, fortement paramétrable depuis l’espace privé. Présentation A l’instar de sa petite soeur plugin Escal-V2 dont elle reprend toutes les (...)

  • Planning simple

    9 septembre 2015 – commentaires

    Ce plugin permet de créer et imprimer un emploi du temps de façon simple. Il dispose de deux méthodes, l’une est d’écrire une liste des évènements dans le corps de l’article, l’autre requiert le plugin agenda. Le plugin planning simple permet (...)

  • Réservation d’événements

    16 mars 2015 – 348 commentaires

    Ce plugin permet d’offrir aux visiteurs de s’inscrire pour un évènement du plugin Agenda et de gérer les réservations enregistrées. Installation Le plugin s’installe comme n’importe quel plugin. il nécessite : Agenda API de vérification Facteur (...)