Squelette Sandnyko

version SPIP 1.8.3

Squelette Sandnyko, pour spip 1.8.3
Site exemple : La Lucarne (http://sandnyko.dyndns.org)

-  Nom du Squelette : sandnyko
-  Version du squelette : 1.1
-  Licence: GPL
-  Compatibilité SPIP : SPIP 1.8.3 obligatoire (la compatibilité avec SPIP 1.8.2g peut être obtenue en supprimant tout ce qui est en rapport avec la pagination)
-  Niveau: Confirmé à Expert
-  Site exemple : La Lucarne (http://sandnyko.dyndns.org)

La page d'accueil
La page d’accueil

1./ Contributions intégrés et sources d’inspiration


-  Listes des articles, commentaires, brèves et auteurs d’après le squelette Epona,
-  Intégration de la contribution Présenter les résultats de recherche comme un “vrai” moteur avec modifications pour n’afficher dans la zone centrale que des articles,
-  Intégration de la contribution Pagination avec modifications pour personnaliser la page courante,
-  Intégration d’un menu à base de listes, CSS et Javascript développé par doSimple,
-  Intégration de la contribution SPIP-Listes (version SVN du 2 mars 2006),
-  Intégration de la contribution Moteurinfos,
-  Intégration de la fonction accorder(mot) par Marc Lebas pour le nombre de réponses à un article,
-  Intégration de la fonction reduire_all_images de Renato Formato pour que les images dans les articles ne débordent pas.

2./ Spécificité technique du squelette sandnyko


-  Squelette codé en XHTML Transitional 1.0,
-  Charte graphique construite en CSS 2 mais non valide (hacks pour Internet Explorer),
-  Largeur du site 1000px, largeur utile (zone centrale) : 658px,
-  Optimisé pour un affichage à partir de 1024x768, compatible 800x600.

3./ Structure générique des pages

La manière dont sont construites les pages est toujours la même :

<INCLURE(header.php)>

<!-- code de la colonne de droite (varie selon les pages) -->

<INCLURE(left.php)>

<!-- code de la zone de contenu centrale (varie selon les pages) -->

<INCLURE(footer.php)>

La page header contient l’entête du site (zone sombre avec le titre + dégradé en dessous).
La page left contient le menu, le formulaire de recherche et le formulaire d’inscription au site.
La page footer contient le pied de page (icône SPIP, flux RSS et navigateur recommandé).

Il est à noter que le fichier autre_chez_nous.html contient une liste de site que l’on veut afficher sur plusieurs pages, quelle que soit le contexte.
Le fichier commentaire, inclus dans le sommaire et dans le plan, retourne la liste des derniers commentaires postés, que ce soit pour un article ou pour une brève.

Autre point dans le fichier rubrique.html : sur La Lucarne, la rubrique Restaurant possède 2 niveaux de sous rubriques. C’est pour cela qu’il y a l’instruction en php suivante :
<?php if ('#ID_RUBRIQUE' == '12') { ?>
Si aucune rubrique n’a 2 niveaux de sous rubriques, vous pouvez enlever sans crainte les lignes comprises entre cette instruction et <?php } else { ?>, ainsi que la ligne <?php } ?>.
Si vous êtes dans le même cas que moi, modifiez le numéro de la rubrique par celui qui vous intéresse. Dans le cas où vous en avez plusieurs, vous pouvez faire comme suit :
<?php if (('#ID_RUBRIQUE' == '12') || ('#ID_RUBRIQUE' == 'XX')) {
où XX est le numéro de la deuxième rubrique (et ainsi de suite s’il le faut).

Enfin, un certain nombre de balises ne sont pas présentes dans les squelettes : c’est le cas par exemple de #SURTITRE et de #SOUSTITRE pour les articles.

4./ Les navigateurs et le squelette sandnyko

Ce squelette a au départ été conçus pour respecter les standards XHTML 1.0 Transitional et CSS 2.0. Cependant, si vous essayez les valideurs en ligne du W3C, vous constaterez que le résultat ne le sera pas (valide). Cela est dû pour le XHTML au code calculé par SPIP (exemple : les formulaires) et pour le CSS à des modifications faites pour que l’affichage sous Internet Explorer, même s’il n’est pas parfait, ne soit pas totalement « cassé ». En conséquence, le squelette est compatible avec tous les navigateurs respectant les standards.

A priori, seul Internet Explorer semble poser des problèmes d’affichage, et ce avec les versions 5.01, 5.5, 6.0 et 7.0 Beta2. Comme ce navigateur ne respecte pas totalement les recommandations du W3C, certains bugs d’affichage seront toujours présents.

N’hésitez pas à tester la compatibilité de ces squelettes en vous rendant sur le site Browsershots, et en soumettant l’url suivante : http://sandnyko.dyndns.org

5./ Installation du squelette

Le squelette est organisé suivant la méthode proposée dans l’article Comment faire un squelette facile à installer.... Je vous conseille de le lire pour comprendre l’arborescence!

Pour l’installer, il suffit de copier l’ensemble des fichiers présents dans le répertoire décompressé dans le dossier de votre installation de SPIP. Prenez garde à sauvergarder auparavant vos fichiers mes_fonctions.php(3) et ecrire/mes_options.php(3). Si vous vous en servez déjà, copiez juste le contenu de ceux présents dans l’archive dans vos fichiers.

Le fichier ecrire/inc_presentation.php(3).bak est le fichier ecrire/inc_presentation.php(3) de SPIP 1.8.3 avec deux modifications : l’ajout d’une icône pour SPIP-Listes (sous-menu messagerie) et une autre pour Moteurinfos (menu configuration). Il est facile de retrouver ces ajouts dans le fichier : ils sont entourés de ces balises :

//hack moteurinfos/SPIP-listes
le_hack
//end_hack

Les logos des rubriques sur mon site ont tous les mêmes dimensions : 53px*40px. Je ne peux pas garantir le rendu pour des tailles différentes (en particulier dans les pages des rubriques).

Les images puce.gif et puce_rtl.gif ont été retravaillées. Elles écraseront celles qui sont présentes par défaut à la racine.

Les images spécifiques au squelette sont dans le répertoire sandnyko/images/, la feuille de style est dans le répertoire sandnyko/css/ et porte le nom sandnyko.css. Les fichiers Javascript du menu sont situés dans le répertoire sandnyko/js/

Le menu est à refaire entièrement suivant la structure de votre site. Il est déclaré dans le fichier sandnyko/left.html.

Conclusion

Il est vrai que ce squelette n’est pas forcément facile à configurer, mais je pense qu’il aura tout de même un intérêt pour ceux en quête d’un thème pour leur site.

Parmi les points à améliorer, il y a :
-  Génération du menu avec des boucles SPIP et non par une déclaration en dur comme cela est fait actuellement : voir la contribution Menus déroulants pour ceux qui voudraient le tenter,
-  Amélioration de la page rubrique pour ne plus avoir de cas particulier (rubrique 12),
-  Amélioration du thème sous Internet Explorer

Je suis à la recherche de retours sur ce squelette. N’hésitez pas à vous manifester !

MàJ du 15/05/2006 :
-  les éléments personnels (images, liens, ...) ont été supprimés des archives,
-  après quelques tests avec SPIP 1.9 beta 1 SVN [6341], il apparaît que le squelette ne sera pas directement utilisable en passant à la 1.9. Pour ceux qui seraient soucieux sur ce point, il faudra le retravailler pour que ça fonctionne :-(

updated on 8 April 2007

Discussion

20 discussions

  • Bonjour,

    tout d’abord merci pour votre beau et bon squelette. Il fonctionne à merveille et est relativement facile à adapter, j’ai pu y rajouter une gallerie photo, une interface de sondages, et bientôt un agenda.

    J’ai une ou deux petites questions:

    1) Vous précisez que vous utilisez la contribution Pagination avec modifications pour personnaliser la page courante, mais ne précisez pas en quoi consiste la modification ni comment on procède pour utiliser cette option.

    2) De même pour la fonction reduire_all_images de Renato Formato pour que les images dans les articles ne débordent pas, vous ne précisez pas comment en faire usage.

    Pourriez-vous le faire ici svp ?

    D’avance merci

    Ubu

    Reply to this message

  • Bonjour,

    tout d’abord merci pour votre beau et bon squelette. Il fonctionne à merveille et est relativement facile à adapter, j’ai pu y rajouter une gallerie photo, une interface de sondages, et bientôt un agenda.

    J’ai une ou deux petites questions:

    1) Vous précisez que vous utilisez la contribution Pagination avec modifications pour personnaliser la page courante, mais ne précisez pas en quoi consiste la modification ni comment on procède pour utiliser cette option.
    2) De même pour la fonction reduire_all_images de Renato Formato pour que les images dans les articles ne débordent pas, vous ne précisez pas comment en faire usage.

    Pourriez-vous le faire ici svp ?

    D’avance merci

    Ubu

    Reply to this message

  • 1

    Bonjour,

    Nous avons juste un dernier problème avant de valider le site. Lorsque on regarde de l’extérieur, tout va bien; mais lorsqu’on recalcule la page après ajout d’articles ou de brèves dans l’espace privée, spip renvoie un message d’erreur dans le filtre pagination. Le message est filtre pagination non défini dans rubrique_principal. Nous avons cherché deux jours, une idée avant que nous ne mangions notre chapeau de rage ou de désespoir? Merci.

    Reply to this message

  • 1

    Bonjour à tous je viens de monter un site avec ce squelette, très facile à utiliser.

    http://arlana.free.fr/spiphub/sommaire.php3

    Je serai intéréssé aussi par un passage à la version 1.9 quelqu’un a t-il déjà essayé ?

    • Moi j’ai essayé, mais j’ai trop de Bug. Je vais être obligé de changer de squelette. SNIFFFF

    Reply to this message

  • Bjr

    y a t il une version en cours d’élaboration pour le SPIP 1.9

    Merci bcp

    PS: le squelette est tellement bon ce serait dommage LOL

    Reply to this message

  • 2

    j’aime bien la lisibilité, la navigation, l’interactivité par l’affichage des commentaires,les sites refencés, la réduction des images etc...

    j’ai opté pour une barre de navigation horizontale (http://iubito.free.fr) j’ai inclu un mini-agenda (spip contrib) et intégré l’agenda séquentiel (spip contrib http://support.cassiopea.org)dans une rubrique agenda et intégré la galerie walma pour les albums photos.

    Par contre il me semble que tu utilises les mots clefs peux-tu être plus explicite sur ce point.

    Grand merci pour cette contribution.
    Jean-Noël

    • Salut Jean-Noël!

      Merci pour ton retour sur cette contribution, ça fait plaisir ;)

      Sinon je n’utilise pas de mots-clés sur La Lucarne. J’ai bien essayé de mettre en place la contribution sur les fils RSS 2.0 et ATOM, mais comme ça n’était pas immédiat j’ai laissé tomber.

      Bonne continuation avec SPIP!

    • Bonjour,
      Je suis en train de refaire un site avec SPIP en utilisant SANDNYKO, mes résultats sont positifs. Cependant je souhaite intégrer la galerie WALMA pilotée à partir de la touche “portfolio” par ex. située dans le menu du site c’est à dire “left” qui se traduirait semble-t-il par la ligne ci-dessous:.
      a href=“#URL_SITE_SPIP//plan.php3?fond=article-walma”>Portfolio
      Ca me conduit à l’erreur 404, c’est a dire que mon squelette, même vide n’apparait pas. Je ne comprends plus.
      (le squelette walma a été renommé “article-walma” - il est placé dans le dossier “sandnyko” - le fichier article-walma.php3 est bien placé à la racine du site et renseigné correctement - le dossier mes_options est bien configuré “sandnyko” et est placé dans le dossier ECRIRE à la base du site - Mes_fonctions.php3 est situé dans le dossier “Sandnyko”)
      Il me semble pourtant que tout est correct. Je ne comprends plus.
      Quelqu’un peut-il m’apporter quelques explications ?
      Merci à vous pour une éventuelle contribution.

    Reply to this message

  • 1

    Bonjour,

    J’ai regardé beaucoup de squelette et le Sandnyko est un des plus joli et des plus fonctionnels avec ses 3 colonnes...

    J’ai cependant deux questions :

    1- Les articles peuvent-ils s’afficher sur plusieurs pages ? Je veux dire est-ce qu’on peut fixer une limite par page de 10 articles, par exemple, pour avoir plusieurs pages s’il y a de très nombreux articles ?

    2- Après cette question facile, en voici une difficile. Je veux intégrer le menu COOLMENU de DHTMLCENTRAL.COM dans la page left.html mais, après deux jours de délire j’abdique et demande de l’aide.

    Voici le code complet de la page left.html avec ce joli COOLMENU qui gagnerait à être popularisé avec SANDNYKO... QU’EST-CE QUI NE VA PAS ?!?!?!?!?!?!??!?!!?


    <script language="JavaScript1.2" src="menu3/coolmenus4.js">
    /*****************************************************************************
    Copyright (c) 2001 Thomas Brattli (webmaster@dhtmlcentral.com)

    DHTML coolMenus - Get it at coolmenus.dhtmlcentral.com
    Version 4.0_beta
    This script can be used freely as long as all copyright messages are
    intact.

    Extra info - Coolmenus reference/help - Extra links to help files ****
    CSS help: http://192.168.1.31/projects/coolmenus/reference.asp?m=37
    General: http://coolmenus.dhtmlcentral.com/reference.asp?m=35
    Menu properties: http://coolmenus.dhtmlcentral.com/properties.asp?m=47
    Level properties: http://coolmenus.dhtmlcentral.com/properties.asp?m=48
    Background bar properties: http://coolmenus.dhtmlcentral.com/properties.asp?m=49
    Item properties: http://coolmenus.dhtmlcentral.com/properties.asp?m=50
    ******************************************************************************/
    </script>
    <script>
    oCMenu=new makeCM("oCMenu") //Making the menu object. Argument: menuname

    //Menu properties
    oCMenu.pxBetween=0
    oCMenu.fromLeft=30
    oCMenu.fromTop=100
    oCMenu.rows=0
    oCMenu.menuPlacement="left"

    oCMenu.offlineRoot=""
    oCMenu.onlineRoot="http://127.0.0.1/TestSpip/squelettes/menu3/"
    oCMenu.resizeCheck=1
    oCMenu.wait=150
    oCMenu.fillImg="cm_fill.gif"
    oCMenu.zIndex=0

    //Background bar properties
    oCMenu.useBar=1
    oCMenu.barWidth="menu"
    oCMenu.barHeight="menu"
    oCMenu.barClass="clBar"
    oCMenu.barX="menu"
    oCMenu.barY="menu"
    oCMenu.barBorderX=0
    oCMenu.barBorderY=0
    oCMenu.barBorderClass=""

    //Level properties - ALL properties have to be spesified in level 0
    oCMenu.level[0]=new cm_makeLevel() //Add this for each new level
    oCMenu.level[0].width=135
    oCMenu.level[0].height=25
    oCMenu.level[0].regClass="clLevel0"
    oCMenu.level[0].overClass="clLevel0over"
    oCMenu.level[0].borderX=1
    oCMenu.level[0].borderY=1
    oCMenu.level[0].borderClass="clLevel0border"
    oCMenu.level[0].offsetX=0
    oCMenu.level[0].offsetY=0
    oCMenu.level[0].rows=0
    oCMenu.level[0].arrow="menu3/arrow-closed.gif"
    oCMenu.level[0].arrowWidth=22
    oCMenu.level[0].arrowHeight=26
    oCMenu.level[0].align="right"

    //EXAMPLE SUB LEVEL[1] PROPERTIES - You have to specify the properties you want different from LEVEL[0] - If you want all items to look the same just remove this
    oCMenu.level[1]=new cm_makeLevel() //Add this for each new level (adding one to the number)
    oCMenu.level[1].width=oCMenu.level[0].width-2
    oCMenu.level[1].height=22
    oCMenu.level[1].regClass="clLevel1"
    oCMenu.level[1].overClass="clLevel1over"
    oCMenu.level[1].borderX=1
    oCMenu.level[1].borderY=1
    oCMenu.level[1].align="right"
    oCMenu.level[1].offsetX=-(oCMenu.level[0].width-2)/2+20
    oCMenu.level[1].offsetY=0
    oCMenu.level[1].borderClass="clLevel1border"
    oCMenu.level[1].align="top"



    //EXAMPLE SUB LEVEL[2] PROPERTIES - You have to spesify the properties you want different from LEVEL[1] OR LEVEL[0] - If you want all items to look the same just remove this
    oCMenu.level[2]=new cm_makeLevel() //Add this for each new level (adding one to the number)
    oCMenu.level[2].width=oCMenu.level[0].width
    oCMenu.level[2].height=20
    oCMenu.level[2].offsetX=0
    oCMenu.level[2].offsetY=0
    oCMenu.level[2].regClass="clLevel2"
    oCMenu.level[2].overClass="clLevel2over"
    oCMenu.level[2].borderClass="clLevel2border"


    oCMenu.makeMenu('top0','','Aliments','#URL_SITE_SPIP/rubrique.php3?id_rubrique=2','')
    oCMenu.makeMenu('sub00','top0','Bio','#URL_SITE_SPIP/rubrique.php3?id_rubrique=6')
    oCMenu.makeMenu('sub01','top0','Ecologiques','#URL_SITE_SPIP/rubrique.php3?id_rubrique=7')

    oCMenu.makeMenu('top1','','&nbsp;Scripts','/scripts/index.asp')
    oCMenu.makeMenu('sub10','top1','New scripts','/scripts/index.asp?show=new')
    oCMenu.makeMenu('sub11','top1','All scripts','/scripts/index.asp?show=all')
    oCMenu.makeMenu('sub12','top1','Popular scripts','/scripts/index.asp?show=pop')

    oCMenu.makeMenu('top2','','&nbsp;Articles','/articles/index.asp')
    oCMenu.makeMenu('sub21','top2','Tutorials','/tutorials/index.asp')
    oCMenu.makeMenu('sub22','top2','Other articles','/articles/index.asp')

    oCMenu.makeMenu('top3','','&nbsp;Forums','/forums/')
    oCMenu.makeMenu('sub30','top3','General','/forums/forum.asp?FORUM_ID=6&CAT_ID=1&Forum_Title=General+DHTML+issues')
    oCMenu.makeMenu('sub31','top3','Scripts','/forums/forum.asp?FORUM_ID=4&CAT_ID=1&Forum_Title=DHTML+Scripts')
    oCMenu.makeMenu('sub32','top3','Crossbrowser','/forums/forum.asp?FORUM_ID=3&CAT_ID=1&Forum_Title=Crossbrowser+DHTML')
    oCMenu.makeMenu('sub33','top3','CoolMenus','/forums/forum.asp?FORUM_ID=2&CAT_ID=1&Forum_Title=CoolMenus')
    oCMenu.makeMenu('sub34','top3','dhtmlcentral.com','/forums/forum.asp?FORUM_ID=5&CAT_ID=1&Forum_Title=dhtmlcentral%2Ecom')
    oCMenu.makeMenu('sub35','top3','Cool sites','/forums/forum.asp?FORUM_ID=1&CAT_ID=1&Forum_Title=Cool+sites')

    oCMenu.makeMenu('top5','','&nbsp;CoolMenus','/coolmenus/index.asp')
    oCMenu.makeMenu('sub50','top5','Examples','/coolmenus/examples.asp')
    oCMenu.makeMenu('sub51','top5','Download','/coolmenus/download.asp')
    oCMenu.makeMenu('sub52','top5','Tutorial','/coolmenus/tutorial.asp')
    oCMenu.makeMenu('sub53','top5','MenuMaker','','',0,0,'','','','','','','window.open("/coolmenus/maker/","","width=800,height=600")')
    oCMenu.makeMenu('sub54','top5','FAQ','/coolmenus/faq.asp')
    oCMenu.makeMenu('sub55','top5','Help forum','/forums/forum.asp?FORUM_ID=2&CAT_ID=1&Forum_Title=CoolMenus')

    oCMenu.makeMenu('top6','','&nbsp;Test Links','')
    oCMenu.makeMenu('sub060','top6','sub1/test1.html','sub1/test1.html')
    oCMenu.makeMenu('sub061','top6','sub1/test2.html','sub1/test2.html')
    oCMenu.makeMenu('sub062','top6','sub1/test3.html','sub1/test3.html')
    oCMenu.makeMenu('sub063','top6','sub2/test1.html','sub2/test1.html')
    oCMenu.makeMenu('sub064','top6','sub2/test2.html','sub2/test2.html')
    oCMenu.makeMenu('sub065','top6','sub2/test3.html','sub2/test3.html')

    //Leave this line
    oCMenu.construct()
    </script>

    Recherche

    [

    Participer

    <:participer_site:>

    (#FORMULAIRE_INSCRIPTION)

    ]
    • Oupssss voici le code pour le COOLMENU dans la page left.html disponible avec ce lien
      http://www.editions-lugert.fr/left.html

      Note : Dans la page left.html, j’ai laissé le code pour le menu original de Sandnyko car je ne savais pas comment faire pour l’enlever sans tout bousiller.
      SI QUELQU’UN SAIT COMMENT FAIRE MARCHER COOLMENU avec SANDNYKO ?!?!?!?!

      AAAAUUUUUUU SSEEEEEEEECCCCOOOUUUUUUUURRRRRSSSSSS!!!!!!!!!!!!

    Reply to this message

  • 1

    C’est encore moi peut tu me répondre au message que je vais envoyer .
    Merci

    PS: repond moi tres vite

    • Salut

      Je ne trouve pas les archives . Et quand tu dit mes_options c’est :
      -Racine du site/ecrire/mes_options.php3
      ou
      -Racine du site/sandnyko/ecrire/mes_options.php3

      A quoi sert mes_fonctions ?

    Reply to this message

  • 1

    merci pour ce superbe squelette ,je viens de l’adopter pour le site de notre assos . j’ai modifier le menu deroulant .
    http://kof.plouider.infini.fr/

    petit probleme qui je pense n’est pas lie au squelette lui meme , mais dont je ne trouve pas la solution..

    lans la partie administration les groupes de mots cles s’affichent mais pas les mots cles ???
    merci +++ pour votre aide .

    • resolu , le probleme vient du fichier presentation.php dans repertoire ecrire.
      merci

    Reply to this message

  • 5

    Je suis débutant avec SPIP et j’ai telechargé spip 1.8.3 en PHP3 et ton squelettes en PHP3 egalement . Mais je n’arrive pas a installer ton squelettes.
    comment faut t-il faire ?
    Merci d’avance.

    • Salut,

      si tu as suivi la partie installation de mon article et que le squelette n’est pas affiché sur la partie publique de ton site, il faut que tu vérifies qu’il y a bien la ligne suivante dans ton fichier ecrire/mes_options.php3 :

      $GLOBALS[ 'dossier_squelettes' ] = "sandnyko" ;

      Si une fois que tu as fait cela le squelette n’est toujours pas affiché, pense à vider le cache de ton navigateur internet et à recalculer les pages (ou à vider le cache de SPIP dans l’interface d’administration)

      Bon courage!

    • je souhaite si c’est à nous que reviens la creation du fichier ecrire/mes_options.php3 dans le repetoire ecrire car ce ficher n’y figure pas

    • je souhaite savoir si c’est à nous que reviens la creation du fichier ecrire/mes_options.php3 dans le repetoire ecrire car ce ficher n’y figure pas

    • Si tu n’en as pas, c’est mieux!

      Il y a dans l’archive un fichier mes_options.php3 dans le répertoire ecrire. Il te suffit de le copier dans le répertoire ecrire de ton installation! (ainsi que le reste du répertoire ecrire qui est dans l’archive que tu as téléchargée)

    • Salut

      Je ne trouve pas les archives . Et quand tu dit mes_options c’est :
      Racine du site/ecrire/mes_options.php3
      ou
      Racine du site/sandnyko/ecrire/mes_options.php3

      A quoi sert mes_fonctions ?

    Reply to this message

Ajouter un commentaire

Who are you?
[Log in]

To show your avatar with your message, register it first on gravatar.com (free et painless) and don’t forget to indicate your Email addresse here.

Enter your comment here

This form accepts SPIP shortcuts {{bold}} {italic} -*list [text->url] <quote> <code> and HTML code <q> <del> <ins>. To create paragraphs, just leave empty lines.

Add a document

Follow the comments: RSS 2.0 | Atom