> Template_principal
fr

Index
    - Introduction
    - Préambule
    - Configuration
      - En standard
      - Pour tester
    - Contenu du fichier
      - TITLE_BAR
        - Dans le template
        - Dans l'action
        - Valeurs par défaut
      - TITLE_PAGE
        - Dans le template
        - Dans l'action
        - Valeurs par défaut
      - HTML_HEAD
        - Dans le template
      - MAIN
        - Dans le template
        - Dans l'action
    - Aller plus loin

Introduction

Ce document a pour but de présenter les éléments du template principal et la façon de le configurer.

Préambule

Copix utilise un pattern de type "2 Step View ", c'est à dire que le contenu final est (la plupart du temps) généré en deux temps.

Le premier temps est accordé à votre Action qui aura pour rôle de générer la partie centrale du contenu.

Le second temps est accordé au contrôleur de Copix, qui aura pour objectif d'assigner la charte globale du projet (éléments de menu, en tête, pied de page et plus généralement tous les éléments systématiques dans la charte de votre application).

Ainsi, vous utiliserez toujours deux templates

Configuration

En standard

Avec l'installation par défaut de Copix, le template principal correspond au fichier project/modules/stable/default/templates/main.php comme template principal.

Ce dernier est configuré dans le fichier de configuration copix.conf.php


//Template principal
$config->mainTemplate   = 'default|main.php';
 

Rappel: la syntaxe 'default|main.php' est une syntaxe qui se retrouve souvent dans Copix et qui désigne un élément dans un module particulier. Ici, on désigne l'élément main.php du module default.

Pour tester

Faites une copie du fichier main.php dans main_test.php

Si vous souhaitez tester l'utilisation d'un autre template principal, n'hésitez pas à copier le fichier project/modules/stable/default/templates/main.php vers project/modules/stable/default/templates/main_test.php.

Dans le fichier de configuration, modifiez la ligne correspondant au template principal pour refléter ce changement.


//Template principal
$config->mainTemplate   = 'default|main_test.php';
 

Modifiez le contenu du fichier main_test.php (inutile d'être trop inventif) et constatez que les changements sont bien pris en compte dans votre application.

Note: Vous verrez plus tard qu'il existe un système de thème graphique livré avec Copix pour vous permettre d'alterner automatiquement entre plusieurs chartes graphiques.

Contenu du fichier

Le template principal est proposé avec des variables pré-configurées que vous avez tout loisir d'utiliser (et qu'il est recommandé de placer à bon escient dans la plupart des cas).

TITLE_BAR

Cette variable contient ce que le développeur souhaite mettre dans la barre de titre du navigateur. Ainsi, la plupart du temps, il est recommandé de la placer dans la section <title> du template.

Dans le template


<head>
 <title><?php echo $TITLE_BAR; ?></title>
</head>
...
 

Dans l'action


//dans un ActionGroup
public function processMonAction (){
   $ppo = new CopixPpo ()
   $ppo->TITLE_BAR = 'Contenu de la barre de titre';
   return _arPpo ($ppo, 'template_interieur.php');
}
 

Valeurs par défaut

Si le développeur ne spécifie aucune valeur pour TITLE_BAR, alors TITLE_BAR utilisera le paramètre 'default|titleBar' pour se remplir.

Vous pouvez modifier cette valeur via le module admin, dans l'administration des paramètres.

Par défaut, cette valeur est configurée avec [Copix]{$TITLE_PAGE}, ce qui signifie qu'au cas où aucune valeur n'est indiquée pour TITLE_BAR, alors Copix affichera pour TITLE_BAR la chaîne [Copix] suivie de la valeur renseignée pour TITLE_PAGE (voir plus loin la description de TITLE_PAGE).

Nous vous conseillons de mettre comme paramètre par défaut [Nom de votre application]{$TITLE_PAGE} pour cette valeur.

TITLE_PAGE

Cette variable contient ce que le développeur souhaite donner comme nom à sa page. C'est en gros la description en une phrase de ce que représente la page.

Généralement, nous vous conseillons de la placer dans un "h1" (qui sémantiquement correspond bien au titre de niveau 1)

Dans le template



...
<body>
<h1><?php echo $TITLE_PAGE; ?></h1>
...
</body>
 

Dans l'action


//dans un ActionGroup
public function processMonAction (){
   $ppo = new CopixPpo ()
   $ppo->TITLE_PAGE = 'Mon action';
   return _arPpo ($ppo, 'template_interieur.php');
}
 

Valeurs par défaut

Par défaut, si le développeur à oublié d'indiquer un nom de page pour son action, Copix utilise le paramètre 'default|titlePage'. En standard, ce paramètre vaut "Copix Framework".

En général, nous vous conseillons de toujours spécifier un titre de page pour vos actions.

HTML_HEAD

Cette variable est indispensable si vous souhaitez utiliser la classe CopixHtmlHeader et certains tags dans vos templates.

En effet, Copix, lorsque vous faites appel à certaines fonctions, s'occupe pour vous de préparer l'inclusion des bonnes bibliothèques javascript / css pour vous.

C'est la variable HTML_HEAD du template principal qu'il va utiliser pour ce faire, d'où son caractère indispensable.

Elle devra se situer dans la partie "head" de votre template (généralement à la fin)

Dans le template



<head>
...
<?php echo $HTML_HEAD; ?>
</head>
 

MAIN

La partie MAIN correspond à l'emplacement où le contenu généré par votre Action sera affiché.

Si vous souhaitez que votre action puisse afficher du contenu, cette variable est bien évidemment indispensable.

Dans le template



<body>
...
<?php echo $MAIN; ?>
...
</body>
 

Dans l'action


//dans un ActionGroup
public function processMonAction (){
   $ppo = new CopixPpo ()
   //...
   return _arPpo ($ppo, 'template_interieur.php');//template_interieur sera affiché dans la partie MAIN du template principal
}
 

Aller plus loin