Skin Party le 20 mars
Une soirée spéciale pour tous ceux qui souhaitent en savoir plus sur les habillages de leurs serveur Yacs. Amenez vos questions !
Le rendez-vous aura lieu ici même, dès 21h - heure de Paris. Les anglophones sont les bienvenus, mais l'on parlera beaucoup français.
Rate this page
Posted by Bernard on Mar. 20, (popular)
Avant de mettre les couvert : j'ai une demande expresse pour bernard on Mar. 20
Moi aussi, j'ai une demande rapide pour Bernard : as-tu vu ma demande d'info sur la Documentation du Player FLV ? on Mar. 20
dixit bernard on Mar. 20
OK pour le menu.
Et bonsoir à tous !
Bernard, mon propos est actuellement de faire en sorte qu'il n'existe quasiment plus aucun texte de visible... spécialement visés : "menu bar" et "side panel"
on Mar. 20Olive : J'espère que c'est pas encore des crêpes... on Mar. 20
Comme indiqué dans le schéma, les deux fichiers chargés par yacs dans une skin sont
skin.phpettemplate.php.architecture-yacs.jpg on Mar. 20
skins/page.phpdans ton template... on Mar. 20Nuxwin... désolé d'avoir été long à répondre, bon app' quand même.
on Mar. 20- le fichier
- ainsi que
- pendant l'exécution du script principal, différentes variables sont positionnées dans le tableau
- en fin de script, l'appel de la fonction
- généralement, le template appelle les fonctions toutes prêtes de
- le XHTML ainsi généré appele à son tour les feuilles de style et les images incluses dans la page
on Mar. 20skins/my_skin/skin.phpest chargé en mémoire,skins/skin_skeleton.php$context, comme par exemple$context['text']pour le corps principal de la pagerender_skinprovoque le chargement deskins/my_skin/template.php, qui est libre de faire ce qu'il veut des variables positionnées précédemmentskins/page.php, mais ce n'est pas obligatoire.page.phpne comprend qu'une liste standard de commandesechoque tu es libre de reprendre partiellement ou différemment... on Mar. 20Alors, si ce n'est pas obligatoire, tu fait comment pour par exemple insérer le side panel, etc... ?
dans template.php ? on Mar. 20
Nuxwin, ben tu fais
echo $context['extra_panel']tout comme ce qui est fait danspage.php... on Mar. 20pages.phpet fait l'##echo## dont tu as besoin à l'endroit où tu en as besoin...Si vous le voulez bien, je vais continuer un peu plus mes explications, avant de répondre aux questions, sinon le fil va être un peu compliqué à suivre, ok ? on Mar. 20
Bernard, ok, si je peux me passer de page.php, sans dommage, je peux voler de mon propre echo, chouette
!!!
on Mar. 20désolé pour toutes mes fautes, je regarde que mon écran quand j'écris on Mar. 20
skin.php. Par défaut, c'est le code deskins/skin_skeleton.phpqui s'exécute, et qui fait effectivement des listes de définition pour les boîtes. Mais rien ne t'empêche de remplacer, dansskin.php, les fonctions qui ne te donnent pas satisfaction, pour faire générer exactement les balises que tu souhaites pour les boîtes. on Mar. 20skins/skin_skeleton.phpdansskins/my_skin/skin.php, puis le modifier.Bien sûr, dans tous les exemples, 'my_skin' désigne le nom de votre skin. Ce pourrait être 'truc' ou 'bidule', ou autre chose... on Mar. 20
Si oui, cela revient à ce que je disais au début --> implémentation d'un search and replace ...
Bernard, tu vas lister cette session pour que je puisse la regarder plus tard ? on Mar. 20
Comme Réorganisation du contenu du serveur, le 13 mars 2008 par exemple... on Mar. 20
skin.phpfait partie du skin, et pas des scripts de référence de YACS. Donc ce fichier peut 'vivre sa vie' indépendamment des modifications apportées àskins/skin_skeleton.php. Donc, le chargement initial deskin.phppermet de charger la librairie qui va construire les chaînes de caractères HTML placées dans$context['text'], et tous les programmeurs PHP peuvent s'en donner à coeur joie pour générer les balises exactement comme ils le souhaitent. Les non-programmeurs ne feront rien, et utiliseront les balises par défaut fournies en standard par YACS.Ok pour tout le monde ? Vous êtes en pleine digestion ou quoi ? on Mar. 20
Mon idée est de pouvoir partir d'un skin quasi NU...('tention, j'ai pas dit nul) et de pouvoir proposer progressivement des fonctions que nous connaissons.
Ok pour la partie "side", mais pour le menu_bar, je ne veux plus avoir :
Surveiller · Créer une page · Créer une sous-section · Modifier · Ajouter une image · Masse · Verrou · Supprimer · Imprimer...
ou simplement
Surveiller · Créer une page · Créer un sondage . Imprimer...
pour les navigateurs souscripteurs.
on Mar. 20mon dernier message s'adresse à Bernard on Mar. 20
( du coup Bernard il ne peut plus continuer
Qu est-ce qui dit le monsieur lol --> ( du coup Bernard il ne peut plus continuer on Mar. 20
Donc question : A quand la distinction dans p.detail, ou l'inclusion des images dans tous les liens articles/sections ? on Mar. 20
skins/index.php, voici une liste des principales variables utilisées par YACS pour construire une page à l'écran. Les variables marquées d'un 'x' sont modifiables par panneau de configuration. Les autres sont généralement calculées par le logiciel.Oups, c'est beaucoup
skins/my_skin/template.phpsous forme de commandeecho. on Mar. 20echo $context['page_title']suffit. on Mar. 20ha ok merci. on Mar. 20
Donc, pour le style
skins/my_skin, la feuille de style seraskins/my_skin/my_skin.css. on Mar. 20NuxWin, je compte dans ce cas permettre une navigation UNIQUEMENT avec les "tabs" on Mar. 20
template.php, donc vous faites ce que vous voulez, hein ? on Mar. 20display: noneon Mar. 20skins/page.phptraite$context['page_menu'], et après tu fais ce que tu veux dans ton template... Tu peux mettre les données dans les tabulations ou autre, bien sûr, ou ailleurs que sous le titre, ou avec d'autres balises HTML. LIBRE je te dis... on Mar. 20skins/_reference/yacs.css, pour éviter l'intervention sur vos feuilles de style à chaque nouvelle version du logiciel.C'est un peu le même principe que pour
skin.phpetskin_skeleton.php. on Mar. 20j'ai du retoucher ce css et mes modifs risques d'etre perdues on Mar. 20
@import url("../_reference/yacs.css");avant la première règle dans votre feuille de style, si ce n'est pas encore fait. on Mar. 20/images/(qui contient les images communes)dans le même dossier ? on Mar. 20Christian, il reste l'option aussi de reporter tes modifications dans le code de référence de YACS, si tu penses que c'est la bonne direction pour tout le monde. on Mar. 20
/_reference/? On les a bien déplacée une fois (grâce à Gnapz si je me souviens bien) ? on Mar. 20Lasares : j'abonde dans ton sens. on Mar. 20
extra_box. Autrement dit, une balisedl class="extra_box". on Mar. 20.extra_box. En effet, en CSS, les classes sont repérées par le caractère point initial.De la même façon, la boîte de gauche qui contient votre menu utilisateur, avec votre nom, est une liste de définition de classe
navigation_boxet en plus, elle a l'identifiantuser_menu. YACS met tout ça dans une balisedl id="user_menu" class="navigation_box". on Mar. 20Ce qui me plait, c'est que nous convergeons. on Mar. 20
.navigation_box, et la règle qui s'appliquent à l'identifiant par#user_menu.Notez le '#' au lieu du '.', pour les règles sur des objets identifiés nommément.
Plus compliqué : que se passe-t-il si je définis des choses contradictoires dans les deux règles mentionnées dans l'exemple ci-dessus ? Une police de 11 pixels d'un côté, de 14 pixels de l'autre. Comment fait le navigateur ?
Quelque idée ? on Mar. 20
je donne ma langue au chat on Mar. 20
Ceci peut expliquer dès fois des comportements bizarres, ou, au contraire, permettre d'affiner des règles standards de classe. on Mar. 20
Thierry: ah oui ! on Mar. 20
Pour compléter l'exposé, voici quelques éléments méthodologiques pour créer une identité visuelle complète :
- Choisir, parmi les skins de référence, une mise en page de base (2 ou 3 colonnes), sans tenir compte des couleurs. A ce stade, c'est la mise en page qui compte.
- Depuis le panneau des styles, dériver ce style de référence pour en faire un nouveau style (myskin), dans un répertoire créé pendant la dérivation.
- Charger puis recharger la page de test de rendu visuel
- Lorsque les modifications sont ok, sélectionner le nouveau skin comme style du serveur cible
- Visiter les pages d'aide, à partir de
on Mar. 20skins/test.phpaprès chaque modification de la feuille de style, detemplate.php, voire deskin.phpcodes/, pour valider d'autres styles utilisés par YACSce qui voudrai aussi dire que rentrer dans le code est pour les SUPERexperts
skins/my_skin, de préférence dans un fichier.tgz, mais.zipest aussi accepté sur de nombreux serveurs. Cet archive pourra être envoyé à un serveur YACS depuis les menus de l'indes des styles. Après le téléversement, ne pas oublier d'activer le nouveau style, bien sûr.Et j'ai fini, et il est déjà 23 heures, désolé...
.tgzest conseillé. Lui, il passe à tous les coups. on Mar. 20- Dans les PHP qui appellent le my_skin\template.php les variables Contect('quelquechose') sont positioné avec les parties de la page title, text, etc...
- dans le template.php on peux les modifiers à "volonté".... puis les afficher ou non via des echo
- et ensuite cette page généré par les écho utilisera le css du template pour générer le look...
C'est cela? ou j'ai mal compris la chronologie?Autre chose skin.php s'execute avant template.php n'est-il pas? on Mar. 20
En fait, les règles de style, c'est un peu plus compliqué que l'intro de Bernard le dit. Une règle accumule des points pour des classes (.) et encore plus de points pour des id (#). La règle qui a le plus de points l'emporte.
Ainsi, une façon de forcer l'application d'une règle sur d'autres qui pourraient s'appliquer est de lui "donner des points" en rajoutant des items au sélecteur.
Ainsi, si votre nouvelle règle pour a.button ne prend pas le dessus transformez-la en #main-panel a. button et si ce n'est pas suffisant, faites #wrapper #main-panel a. button. on Mar. 20
skin.phpet chargé en début de script, alors quetemplate.phpest chargé tout à la fin. on Mar. 20[comment=123]pour le référencer. Par exemple,[comment=21706]pour le dernier commentaire d'Alain. Dans YACS, tout est référencé et référençable. on Mar. 20D'autres questions ? on Mar. 20
(ca marche avec la date aussi Lucrecius) on Mar. 20
Lucrecius, si tu parles de la localisation des dates affichées dans le template.php, il faut utiliser
// display the date on the right
setlocale(LC_TIME, "fr_FR");
echo 'Nous sommes le '.htmlentities(strftime('%A %d %B %G')).'.'."\n";
on Mar. 20Aller, bientôt la notification visuelle des sujets vues dans le forum Jiive ? http://www.yetanothercommunitysystem.com/article-4652-skin-yacs-totem-930 on Mar. 20
- créé les fonctions utilent dans skin.php
- et ajouter dans template.php une réécriture de context('quiVaBien') référencent les fonctions de Skin.php (pour écrire le DHTML qui vas bien)
C'est bien les grandes lignes? (Une remarque hors sujet: Je trouve tros petites la zone de saisie dans le chat) on Mar. 20Pat, oui c'est ça, et oui, il va falloir agrandir la zone de clavardage, c'est sûr... on Mar. 20
et je spécifie uniquement l'ID du forum Jiive
Et clock, une notification visuel par CSS, sans codage
Olive : on parlait des skins disponibles aux usagers, pas de celui de Yetanother (bien que ça puisse l'inclure). on Mar. 20
On veut voir... on Mar. 20
index-version-courte-1.gif
index-version-courte-2.gif
index-version-courte-3.gif
marron.gif
bleu.gif
on commence par celles ci... on Mar. 20
Olivier : juste que le YET de yetanothercommunitysytem en bas à droite est pour moi quasiment invisible dans le skin vert "de base". on Mar. 20
Mais si j'hésitais à le dire, c'est pas seulement que je semble être le seul de cette opinion. C'est aussi que je n'accorde pas beaucoup de poids à une opinion personnelle en cette matière. Est-ce que ça fait le travail ? est une meilleure question que Est-ce que ça me plaît? on Mar. 20
Merci pour tout à tous
Olive, c'est mieux en foncé. ...euh, Tof, quel flailleur ?
on Mar. 20Le temps passe vite, depuis Chonas en octobre dernier... on Mar. 20
OK pour la version courte... remarques pour plus tard, avec du recul on Mar. 20
alain +1 on Mar. 20
... allez,
et
on Mar. 20J'espère que cette session un peu spéciale aura répondu à vos attentes, et vous remercie de votre participation joyeuse. on Mar. 20