Fusionner les en-têtes des forums Bouton_activeFusionner les en-têtes des forums Bouton_hoverFusionner les en-têtes des forums Fb-hoverFusionner les en-têtes des forums Fb-active
CSSActif, le forum, n'est plus maintenu. Il est néanmoins disponible pour consultation. Pour des outils pratiques, rendez-vous sur:

Découvrez CSSActif, une collection d'outils et de tutoriels interactifs pour les développeurs Web — HTML, CSS, JavaScript et bien plus!

Derniers sujets
» Fiche de Présentation RPG
Fusionner les en-têtes des forums EmptySam 30 Mar 2024, 22:07 par Peyton972

» [RPG] Fiche personnage avec bannière
Fusionner les en-têtes des forums EmptySam 30 Mar 2024, 22:06 par Peyton972

» Structure de Qui Est En Ligne (1)
Fusionner les en-têtes des forums EmptyLun 04 Mar 2024, 23:20 par Peyton972

» Qui Est En Ligne - Utopia
Fusionner les en-têtes des forums EmptyDim 24 Déc 2023, 18:16 par romee

» Pack forum complet "Androïd Sylver" RPU (N°2)
Fusionner les en-têtes des forums EmptyJeu 02 Nov 2023, 06:42 par Hydrar

» Formulaire de connexion rapide amélioré
Fusionner les en-têtes des forums EmptySam 04 Mar 2023, 18:57 par Krager

» Avatar centré dans le profil
Fusionner les en-têtes des forums EmptySam 11 Fév 2023, 06:04 par Krager

» Vos partenaires dans le footer
Fusionner les en-têtes des forums EmptyMar 07 Fév 2023, 08:40 par Oxtran

Le deal à ne pas rater :
Pokémon EV06 : où acheter le Bundle Lot 6 Boosters Mascarade ...
Voir le deal

Partagez
 

Fusionner les en-têtes des forums

Voir le sujet précédent Voir le sujet suivant Aller en bas 
http://www.illusionimaginative.net/
.Little Lady
.Little Lady
{ Membre actif }
{ Membre actif }

Féminin Messages : 564



Fusionner les en-têtes des forums Empty

Fusionner les en-têtes des forums


Informations générales

Description :
Vous souhaitez démarquer votre forum des autres et le rendre original ? Vous souhaitez éviter l'affichage habituel des forums ? Alors voici un petit tuto qui vous permettra de manipuler la structure des forums selon vos désirs.

Démo :
Avant fusion.
Après fusion.

Testé sur :
Firefox, Chrome, Safari, Opera, Internet Explorer

Crédits :
Proposé par .Little Lady le 14/06/2010 | Validé par .Little Lady

Mise(s) à jour :
Mise à jour le 09/11/2012 par Doare

Le tutoriel


Vous devez être fondateur de votre forum pour pouvoir éditer les templates

Vous allez devoir éditer votre template index_box. Pour cela, allez dans le Panneau d'Administration, onglet Affichage puis dans le menu Templates » Général, et sélectionnez le template index_box dans la liste (ne pas confondre avec index_body).


I. La théorie


Il va falloir localiser deux éléments : le titre de la colonne, et son contenu.

Titres des colonnes


Les en-têtes se trouvent dans la section tablehead du template, au sein du bloc catrow qui définit l'entité "forum".

Code:
<!-- BEGIN catrow --><!-- BEGIN tablehead --><table class="forumline" width="100%" border="0" cellspacing="1" cellpadding="0">
   <tr>
      <th colspan="{catrow.tablehead.INC_SPAN}" nowrap="nowrap" width="100%" class="secondarytitle"> {catrow.tablehead.L_FORUM} </th>
      <th nowrap="nowrap" width="50">{L_TOPICS}</th>
      <th nowrap="nowrap" width="50">{L_POSTS}</th>
      <th nowrap="nowrap" width="150"><div style="width:150px;">{L_LASTPOST}</div></th>
   </tr>
   <!-- END tablehead -->
Ici, les variables correspondent chacune à l'intitulé d'une colonne :

{catrow.tablehead.L_FORUM}Titre de la catégorie
{L_TOPICS}Titre de la colonne "Sujets"
{L_POSTS}Titre de la colonne "Messages"
{L_LASTPOST}Titre de la colonne "Derniers messages"

Il va suffire de supprimer, ou mettre en commentaire, les cellules <th> que l'on désire masquer. Par exemple, pour mettre en commentaire le ligne des "Derniers messages", nous ferions comme suit :
Code:
<!--th nowrap="nowrap" width="150"><div style="width:150px;">{L_LASTPOST}</div></th-->

Contenu des colonnes


Le contenu des colonnes se trouve à la fin de la section forumrow du template, toujours au sein du bloc catrow.
Code:
<td class="row3" align="center" valign="middle" height="50">
   <span class="gensmall">{catrow.forumrow.TOPICS}</span>
</td>
<td class="row2" align="center" valign="middle" height="50">
   <span class="gensmall">{catrow.forumrow.POSTS}</span>
</td>
<td class="row3 over" align="center" valign="middle" height="50">
   <span class="gensmall">{catrow.forumrow.LAST_POST}</span>
</td>
Ces trois dernières cellules correspondent aux colonnes : "Sujets", "Messages" et "Derniers messages". Pour déplacer les informations, on va tout simplement récupérer les variables concernées :

{catrow.forumrow.TOPICS}Nombre total de sujets
{catrow.forumrow.POSTS}Nombre total de messages
{catrow.forumrow.LAST_POST}Informations "Derniers messages"

Sur le même principe que le titre, on supprime ou met commentaire la cellule <td> que l'on ne veut plus voir s'afficher. Par exemple, pour les "Derniers messages" :
Code:
<!--td class="row3 over" align="center" valign="middle" height="50">
   <span class="gensmall">{catrow.forumrow.LAST_POST}</span>
</td-->
On sait retirer nos colonnes, on a nos variables... Il ne reste plus qu'à les utiliser. Smile


II. La pratique


Cette méthode est une astuce pour fusionner les en-têtes. Elle dépend de la façon dont vous aurez modifié votre template par le passé, et ainsi du nombre de colonnes que vous avez.

Un peu de HTML


Tout d'abord, comme vu plus haut, on supprime ou met en commentaire les titres de colonne <th> comportant les variables {L_TOPICS}, {L_POSTS} et/ou {L_LASTPOST}. A priori, seule devrait rester la cellule <th> comportant le titre de la catégorie.
Code:
<!-- BEGIN catrow --><!-- BEGIN tablehead --><table class="forumline" width="100%" border="0" cellspacing="1" cellpadding="0">
   <tr>
      <th colspan="{catrow.tablehead.INC_SPAN}" nowrap="nowrap" width="100%" class="secondarytitle"> {catrow.tablehead.L_FORUM} </th>
      <!--th nowrap="nowrap" width="50">{L_TOPICS}</th>
      <th nowrap="nowrap" width="50">{L_POSTS}</th>
      <th nowrap="nowrap" width="150"><div style="width:150px;">{L_LASTPOST}</div></th-->
   </tr>
   <!-- END tablehead -->
Si vous vous arrêtez là et que vous testez, vous remarquerez que les largeurs des colonnes ont changé. En effet, elles étaient définies par la largeur des cellules d'en-tête.

Si vous faites bien attention, vous remarquerez d'ailleurs des attributs width (bien que seule la <div> de {L_LASTPOST} fixe véritablement une largeur). Nous allons reprendre ces valeurs et les passer en CSS aux cellules <td> des colonnes correspondantes.

Pour ce faire, nous allons avoir besoin d'ajouter des classes aux cellules concernées. Un peu plus bas dans le template, dans les <td> "Sujets", "Messages" et "Derniers messages", nous changeons les <span> en <div> et ajoutons des classes : .statsforums pour "Sujets" et "Messages", .derniersmessages pour "Derniers messages".
Code:
<td class="row3" align="center" valign="middle" height="50">
   <div class="gensmall statsforum">{catrow.forumrow.TOPICS}</div>
</td>
<td class="row2" align="center" valign="middle" height="50">
   <div class="gensmall statsforum">{catrow.forumrow.POSTS}</div>
</td>
<td class="row3 over" align="center" valign="middle" height="50">
   <div class="gensmall derniersmessages">{catrow.forumrow.LAST_POST}</div>
</td>

Un peu de CSS


Rendez-vous dans Affichage > Images & Couleurs : Couleurs > onglet "Feuille de style CSS". Nous stylons les deux classes nouvellement créées dans notre CSS, afin de donner une largeur à nos trois colonnes.
Code:
.statsforum {
  width: 50px; /* largeur des colonnes "Sujets" et "Messages" */
}
.derniersmessages {
  width: 150px; /* largeur de la colonne "Derniers messages" */
}
Nous avons repris ici les valeurs déterminées dans le HTML. Toutefois à vous de choisir quelle taille donner à vos colonnes. Smile


Un peu de Javascript


Il nous reste à modifier la valeur de l'attribut colspan de notre <th> "titre de catégorie".

Cet attribut détermine sur combien de colonnes s'étend une cellule ; dans notre cas, elle doit s'étendre sur l'ensemble des colonnes du tableau. Par défaut, sa valeur est déterminée par une variable qu'il serait sage de ne pas modifier. Nous allons donc passer par un code javascript pour la prendre en compte.

Rendez-vous dans Modules > HTML & Javascript : Gestion des codes Javascript. Créez un nouveau code, nommez-le, et donnez-lui un placement "sur l'index" et "sur les sous-forums". Enfin, collez ce qui suit :
Code:
$(function(){
  $('th.secondarytitle').each(function(){
    var inc = $('th.secondarytitle').attr('colspan');
    var total = parseInt(inc) + 3; // modifier le chiffre en fonction du nombre de th retirés
    $('th.secondarytitle').attr('colspan', total);
  });
});
Ici, le code récupère tout simplement la valeur passée par la variable pour chaque entête de catégorie, lui ajoute le nombre de cellules ayant été retirées (soit le nombre de colonnes supplémentaires sur lequel doit s'étendre le titre de catégorie), puis renvoie le résultat.


Dans notre cas, nous avons retiré 3 cellules <th> ("Sujets", "Messages", "Derniers messages") : nous mettons donc le chiffre 3 dans le code.

Prenons un autre cas très courant : si vous avez auparavant modifié votre template pour déplacer les informations "Sujets" et "Messages" (comme dans ce tuto-ci ou celui-là), vous avez sans doute entièrement supprimé ces deux colonnes.

Dans ce cas-ci, vous n'auriez eu à masquer que l'en-tête de la colonne "Derniers messages" : 1 seul <th> retiré, on met donc la valeur 1.
MessageSujet: Fusionner les en-têtes des forums   Fusionner les en-têtes des forums EmptyLun 14 Juin 2010, 14:32
Revenir en haut Aller en bas
http://www.i-love-harvard.com/
Kaiji
Kaiji
Blanche-Neige
Blanche-Neige

Féminin Messages : 5578



Fusionner les en-têtes des forums Empty
FAQ


Q
//

R
//


Pour toute question sur ce tutoriel, merci de poster une demande d'aide ici :
http://www.css-actif.com/f17-aide-css-xhtml
MessageSujet: Re: Fusionner les en-têtes des forums   Fusionner les en-têtes des forums EmptyJeu 21 Juil 2011, 21:21
Revenir en haut Aller en bas
Doare
Doare
{ Spécialiste }
{ Spécialiste }

Féminin Messages : 544



Fusionner les en-têtes des forums Empty
09/11/2012 - Tutoriel revu et mis à jour
MessageSujet: Re: Fusionner les en-têtes des forums   Fusionner les en-têtes des forums EmptyVen 09 Nov 2012, 08:56
Revenir en haut Aller en bas
Marley Smith
Marley Smith
{ Membre }
{ Membre }

Féminin Messages : 24



Fusionner les en-têtes des forums Empty
C'est génial ce code ! Merci beaucoup Fusionner les en-têtes des forums 73120010 I love you Very Happy
MessageSujet: Re: Fusionner les en-têtes des forums   Fusionner les en-têtes des forums EmptyDim 07 Avr 2013, 16:32
Revenir en haut Aller en bas
http://avescity-yaoi.my-rpg.com
Elle Sid
Elle Sid
{ Membre }
{ Membre }

Féminin Messages : 37



Fusionner les en-têtes des forums Empty
Ce code est vraiment top !
Merci beaucoup ! =D
MessageSujet: Re: Fusionner les en-têtes des forums   Fusionner les en-têtes des forums EmptySam 18 Mai 2013, 17:36
Revenir en haut Aller en bas
http://autretemps.forumdefan.com/forum
Shanyme Thibolt
Shanyme Thibolt
{ Membre }
{ Membre }

Féminin Messages : 12



Fusionner les en-têtes des forums Empty
merci beaucoup pour le partage
MessageSujet: Re: Fusionner les en-têtes des forums   Fusionner les en-têtes des forums EmptySam 07 Déc 2013, 12:30
Revenir en haut Aller en bas
http://showyourart.forumpro.com
Elf-of-Nature
Elf-of-Nature
{ Membre }
{ Membre }

Féminin Messages : 17



Fusionner les en-têtes des forums Empty
Un très grand merci pour ce tuto super intéressant ! ♥
MessageSujet: Re: Fusionner les en-têtes des forums   Fusionner les en-têtes des forums EmptyJeu 27 Fév 2014, 11:35
Revenir en haut Aller en bas
Contenu sponsorisé




Fusionner les en-têtes des forums Empty
MessageSujet: Re: Fusionner les en-têtes des forums   Fusionner les en-têtes des forums Empty
Revenir en haut Aller en bas
 

Fusionner les en-têtes des forums

Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

 Sujets similaires

-
» (résolu !) Fusion des en-têtes de forums !
» Image sur colonne de tableau + fusionner nom catégories et Forums
» [Résolu] Affichage des forums, sous-forums : remplacer l'image par un texte
» Fusionner des catégories et onglets apparents.
» Impossibilité de rentrer dans les forums et sous-forums

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
CSSActif :: Tutoriels de CSSActif :: ForumActif Pas à pas :: Les Forums et Catégories-

Partenaires Or


← Page précédente   ↑ Aller en haut Copyright © CSSActif 2009 - 2013 Tous droits réservés
Créer un forum | ©phpBB | Forum gratuit d'entraide | Signaler un abus | Forumactif.com