Fork me on GitHub






changer de thème suivant la date, l'heure ou le mois
Supporter Xoops
Inscrit: 17/12/2005 01:41
De Alpes Maritimes
Messages: 1682
Après une petite pause xoops me revoilà sur le forum

Pour fêter ça je vous propose un tuto sur comment faire interagir son thème avec les dates

Niveau de difficulté : Open in new window
facile

L'objectif est de pouvoir changer son thème en fonction:
- de l'heure --> un thème pour le jour et un pour la nuit par exemple
- de la date --> programmer l'apparition du thème de noël
- du mois --> changer de thème automatiquement tout les mois

Toute les modifications vont se faire dans votre fichier header.php se trouvant a la racine de votre site.
Au niveau de la ligne 32 juste après

$xoopsLogger->startTime('XOOPS output init');


* Pour l'heure

Nous allons afficher un thème différent pour la nuit et la journée

On va donc mettre une condition d'intervalle pour définir la journée, ici on considérera le jour entre 7h du matin et 21h le soir le temps restant étant la nuit

Le code a insérer sera donc
$heure date("H"); // 
if($heure >= 08 && $heure <= 16){ //si c'est le jour
    
$xoopsConfig['theme_set'] = 'montheme_jour';
    }
else { 
//si c'est la nuit
$xoopsConfig['theme_set'] = 'montheme_nuit';
    }


* Pour le mois
Dans cet exemple ci on va changer le thème tous les mois
On va donc utiliser un switch plutôt qu'un if ce qui nous donnera une structure plus légère en traitant tout les cas.

Le code a insérer sera donc
$mois date("n"); 
switch(
$mois)
  {
    case 
1//Si le mois est janvier
        
$xoopsConfig['theme_set'] = 'montheme_janvier'
    break; 
    case 
2//Si le mois est fevrier
        
$xoopsConfig['theme_set'] = 'montheme_fevrier'
    break; 
    case 
3//Si le mois est mars
        
$xoopsConfig['theme_set'] = 'montheme_mars'
    break; 
    case 
4//Si le mois est avril
        
$xoopsConfig['theme_set'] = 'montheme_avril'
    break; 
    case 
5//Si le mois est mai
        
$xoopsConfig['theme_set'] = 'montheme_mai'
    break; 
    case 
6//Si le mois est juin
        
$xoopsConfig['theme_set'] = 'montheme_juin';
    break;
    case 
7//Si le mois est juiller
        
$xoopsConfig['theme_set'] = 'montheme_juillet';
    break; 
    case 
8//Si le mois est aout
        
$xoopsConfig['theme_set'] = 'montheme_aout';
    break; 
    case 
9//Si le mois est septembre
        
$xoopsConfig['theme_set'] = 'montheme_septembre';
    break; 
    case 
10//Si le mois est octobre
        
$xoopsConfig['theme_set'] = 'montheme_octobre';
    break; 
    case 
11//Si le mois est novembre
        
$xoopsConfig['theme_set'] = 'montheme_novembre';
    break; 
    case 
12//Si le mois est décembre
        
$xoopsConfig['theme_set'] = 'montheme_decembre'
    break; 
  }



* Pour une date précise

On souhaite maintenant afficher un thème spécifique pour une date donnée, par exemple le jour de noël.
Attention il faudra bien penser a prendre en compte le cas des années bissextile

Le code a insérer sera donc le suivant
$jour date("z");
$bissextile date("L");
if(
$bissextile == true ){ //si l'année est bissextile
    
if($jour == 360){ //jour de noel 360
        
$xoopsConfig['theme_set'] = 'montheme_noel';
    }
}
else { 
//si l'année n'est pas bissextile
    
if($jours == 359){ //jour de noel 359
        
$xoopsConfig['theme_set'] = 'montheme_noel';
    }
}



* Pour aller plus loin

N’hésitez pas à consulter :
- doc de la fonction date en php ici
- la doc sur la fonction if ici
- la doc sur la fonction switch ici

En espérant que ce petit tuto vous serve.
N’hésitez pas a me faire part de vos remarque

Posté le : 11/09/2012 15:03
Partager Twitter Partagez cette article sur GG+
Re: changer de thème suivant la date, l'heure ou le mois
Xoops accro
Inscrit: 27/07/2005 16:10
De France
Messages: 2970
Super tutoriel.Merci pour le partage

Posté le : 11/09/2012 15:11
Partager Twitter Partagez cette article sur GG+
Re: changer de thème suivant la date, l'heure ou le mois
Supporter Xoops
Inscrit: 17/12/2005 01:41
De Alpes Maritimes
Messages: 1682
De rien c'est avec plaisir

Posté le : 11/09/2012 15:54
Partager Twitter Partagez cette article sur GG+
Re: changer de thème suivant la date, l'heure ou le mois
Semi pro
Inscrit: 01/08/2005 19:06
Messages: 1851
yeah la bête est sortie de son sommeil :) merci pour ce super tuto

Posté le : 12/09/2012 10:28
Partager Twitter Partagez cette article sur GG+
Re: changer de thème suivant la date, l'heure ou le mois
Supporter Xoops
Inscrit: 17/12/2005 01:41
De Alpes Maritimes
Messages: 1682
@Grosdunord : Un site qui bouge et une équipe dynamique ça donne envie de se réinvestir

Posté le : 12/09/2012 15:42
Partager Twitter Partagez cette article sur GG+
Re: changer de thème suivant la date, l'heure ou le mois
Semi pro
Inscrit: 01/08/2005 19:06
Messages: 1851
tous a fait d'accord avec toi c'est pour cela que je suis revenu aider

Posté le : 12/09/2012 17:40
Partager Twitter Partagez cette article sur GG+

 Haut   Précédent   Suivant



Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

264 Personne(s) en ligne (213 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 264 | Plus ...