MyBB.support, le portail francophone de MyBB
Couleurs différentes des Forums - Version imprimable

+- MyBB.support, le portail francophone de MyBB (https://mybb.support)
+-- Forum : Thèmes (https://mybb.support/forum-4.html)
+--- Forum : Support (https://mybb.support/forum-6.html)
+--- Sujet : Couleurs différentes des Forums (/thread-6597.html)



Couleurs différentes des Forums - r0o0minet - 30-07-2013


Bonjour.

Je cherche un genre de code couleur pour les différents Forums afin que l'on sache rapidement dans quelle zone du Forum on se trouve.
Je m'explique actuellement toutes les discussions ont le même aspect et si je veux savoir où je suis je dois remonter en haut de la discussion pour trouver l'info dans le fil d’Ariane (ex : Forums sur l'algie vasculaire de la face / Forums réservés au bureau de l'AFCAVF / Feuille de route 2013 / Modifications/Améliorations du Forum / Poster une réponse).

On pourrait imaginer que dans la zone "Posté par ...- Aujourd’hui à.... ", zone présente dans chaque message, la couleur des lettres ou la couleur du fond soit en lien avec la zone où l'on se trouve.

Par exemple :
- Vert en forum public
- Orange en forum privé
- Rouge en zone bureau et groupe de travail fermé

Cela nous permettrait de savoir, tout de suite, sans remonter au fil d'Ariane, ce que l'on peut faire dans le message que l'on va faire en réponse:
- je dois restez politiquement correcte et je ne peux pas mettre de lien vers le forum privé car je suis en zone publique.
- je peux être un peu plus explicite et je peux mettre de lien vers le forum privé car je suis en zone privée.
- je suis en zone bureau

Voila je pense avoir été explicite dans mes explications.
Si toutefois je ne me suis pas bien fait comprendre n'hésitez pas à me demander.

Merci pour votre aide.

Cordialement.

Jean-Marc.




RE: Couleurs différentes des Forums - Saphir - 30-07-2013

Bonjour r0o0minet.

Vous pouvez déterminer si vous vous trouvez dans une partie publique, privée ou "bureau" en définissant trois listes dans un template systématiquement chargé (je vous conseille le template headerinclude qui se trouve dans la partie des templates non catégorisés, tout en bas de la liste).

Vous aurez besoin de ce plugin pour insérer du code PHP dans vos templates : mybbhacks.zingaburga.com/showthread.php?tid=260

Dans le template headerinclude, définissez vos trois listes en ajoutant le code suivant :
Code PHP :
<?php
    $zonepublique 
= new array(958);
    
$zoneprivee = new array(2011105659535156617929394566712546014);
    
$zonebureau = new array();
?>

Ajoutez y les identifiants des forums (fid) qui correspondent à chaque zone, vous les trouverez dans la barre d'adresse du navigateur, par exemple, pour http://votresite/forumdisplay.php?fid=9 le fid est 9.

Ajoutez ensuite ceci :
Code PHP :
<?php
    
if(in_array($fid$zonepublique)) {
        
$zone 1;
    }
    elseif(
in_array($fid$zoneprivee)) {
        
$zone 2;
    }
    elseif(
in_array($fid$zonebureau)) {
        
$zone 3;
    }
?>

Dans le template header, juste avant <navigation>, ajoutez <span class="navigation_{$zone}">, et juste après, </span>.

Enfin, dans la partie thème, éditez le global.css en mode avancé pour y ajouter ceci :

Code :
.navigation_1 {
    background-color: green;
}
.navigation_2 {
    background-color: orange;
}
.navigation_3 {
    background-color: red;
}
.navigation_ {
    background-color: gray;
}

La solution que je vous propose est moins correcte que l'utilisation d'un plugin dédié à ceci, et je ne vous garantis pas que ça fonctionnera sans faute car je ne l'ai pas testé, mon code peut-être incorrect. Le code est bien sûr à adapter à vos besoins.
Exdiogene ou Spyto vous fourniront peut-être une réponse plus correcte.

Espérant toutefois vous avoir aidé, je vous souhaite une excellente soirée.

P.S. 1 : Si vous souhaitez copier-coller des éléments, collez-les d'abord dans un éditeur de test convenable (comme Notepad++ ou Hapedit), puis copiez-les et collez-les sur votre forum.
P.S. 2 : Je ne me souviens plus si la variable $fid est définie telle qu'elle à cet endroit du code, si ce n'est pas le cas (si ça ne fonctionne pas correctement), essayez de remplacer "$fid" par "$_GET['fid']" dans le deuxième encadré ci-dessus.


RE: Couleurs différentes des Forums - r0o0minet - 30-07-2013

Merci pour votre réponse ultra rapide.

(30-07-2013, 19:22)Saphir a écrit :  Vous aurez besoin de ce plugin pour insérer du code PHP dans vos templates : mybbhacks.zingaburga.com/showthread.php?tid=260

Est-ce vraiment nécessaire d'installer ce plugin ou bien puis-je directement via FTP modifier les fichiers adéquats ?
Si je peux faire ainsi pouvez-vous me donner le nm de tous les fichiers à modifier svp ?

Par contre que signifient les chiffres dans les "array()" ?

Merci d'avance pour les réponses.

Cordialement.

Jean-Marc alias r0o0minet.


RE: Couleurs différentes des Forums - exdiogene - 30-07-2013

Voici une façon assez simple d'obtenir les résultats désirés :

Remplacer dans le template "Afficher discussion Templates -> showthread" :
Code :
    {$ratethread}
    <table border="0" cellspacing="{$theme['borderwidth']}" cellpadding="{$theme['tablespace']}"
class="tborder" style="clear: both; border-bottom-width: 0;">
Par :
Code :
    {$ratethread}
    <table border="0" cellspacing="{$theme['borderwidth']}" cellpadding="{$theme['tablespace']}"
class="tborder forum{$thread['fid']}" style="clear: both; border-bottom-width: 0;">

Ceci nous donnera la possibilité de changer la classe, en fonction du forum, en ajoutant les classes des forums à la feuille de style du thème ainsi :
Code :
.forum1{
    border: 1px solid #00FF00;
    color : #00FF00;
}
.forum2{
    border: 1px solid #FF0000;
    color : #FF0000;
}

Cette méthode ne nécessite aucun plugin ni aucune modification au code source...



RE: Couleurs différentes des Forums - Saphir - 30-07-2013

La méthode d'exdiogene est très certainement meilleure que la mienne, je réponds toutefois à votre question : il n'est pas possible de réaliser ces modifications sur les fichiers, seuls les templates peuvent être modifiés. Nous déconseillons fortement l'édition des fichiers source de MyBB.

Le plugin sera nécessaire pour intégrer du code PHP dans les templates, sans cela, vous ne pourrez pas appliquer ma solution. La solution d'exdiogene ne nécessite pas ce plugin puisqu'elle n'utilise pas de code PHP.

Les chiffres dans les arrays sont les fid des différents forums, le premier array étant destiné à être en vert, le second en orange et le troisième en rouge. Si un forum a un fid qui n'est dans aucun array, la couleur grise sera utilisée (mais vous pouvez changer cela dans le code CSS qui est le dernier que j'aie fourni.

Petite précision pour ce qui est du code d'exdiogene, il faudra un sélecteur par forum. Par exemple, pour reprendre les fid que j'avais utilisé dans mon exemple :
Code :
.forum9, .forum58 {
    border: 1px solid #00FF00;
    color: #00FF000;
}
.forum20, .forum11, .forum105, .forum65, .forum95, .forum35, .forum15, .forum66, .forum17, .forum92, .forum93, .forum94, .forum56, .forum67, .forum12, .forum54, .forum60, .forum14 {
    border: 1px solid #FF6600;
    color: #FF6600;
}



RE: Couleurs différentes des Forums - r0o0minet - 30-07-2013

Bonsoir.

Merci à tous les 2 pour les réponses et toutes ces précisions.

Je vais m'atteler à la tâche demain matin et tester en local chez moi ce que cela donne avant de le propager sur le Forum en ligne Tongue

Encore merci.

Je vous tiendrai au courant des modifications et je reviendrai ici pour dire si ça fonctionne comme désiré.

Cordialement.

Jean-Marc alias r0o0minet.


RE: Couleurs différentes des Forums - r0o0minet - 17-11-2023

Bonjour.

Suite à migration je ne ferai pas les modifications pas nécessaire en fait.

Vous pouvez mettre le sujet en "Réglé"  Wink

Merci pour votre aide.


 Utilitaire de traduction fourni par Regentronique