[phpBB 3.0.x] Créer un fichier config pour son style

Toutes les documentations phpBB seront ici.
Verrouillé
Avatar du membre
Dakin Quelia
Webmaster
Webmaster
Messages : 563
Enregistré le : ven. 27 nov. 2009 05:47
Localisation : Belgique
Contact :

[phpBB 3.0.x] Créer un fichier config pour son style

Message par Dakin Quelia »

» Créer un fichier config pour son style

Pour diverses raisons, vous souhaitez pouvoir laisser le choix à l'utilisateur de personnaliser son style sans devoir modifier moultes fichiers. Nous allons donc définir des variables qui pourront être facilement modifiables dans un seul fichier.

Avant toute modification, il est important de faire une sauvegarde de ses fichiers.

» Création du fichier de configuration

Dans un premier temps, nous allons créer le fichier template approprié et le nommer « prosilver_config.html ». Pour notre exemple, il va contenir quelques données comme:

Code : Tout sélectionner

<!-- DEFINE $FORUM_WIDTH = '100%' -->
<!-- DEFINE $FORUM_HEIGHT = '100%' -->

<!-- DEFINE $WHOIS_ONLINE = 'true' -->
<!-- DEFINE $WHOIS_LEGEND = 'true' -->

<!-- DEFINE $POSTING_RULES = 'false' -->
<!-- DEFINE $POSTING_RULES_TEXT = '<strong>Attention</strong>: <br /> vous ne pouvez pas publier de liens!' -->
Ce fichier exemple est à mettre dans le dossier « styles/{VOTRE_THEME}/template/ ».

Veuillez noter que si vous souhaitez définir un texte particulier avec les accents, il faudra encoder la page en « UTF8 sans bom ».

» Appel du fichier de configuration

Pour faire appel à ce fichier et pouvoir utiliser toutes les variables partout, il suffira de faire ce qui suit:

Ouvrez le fichier « styles/{VOTRE_THEME}/template/overall_header.html ».

Cherchez:

Code : Tout sélectionner

<meta http-equiv="content-type" content="text/html; charset={S_CONTENT_ENCODING}" />
Avant, ajoutez:

Code : Tout sélectionner

<!-- INCLUDE prosilver_config.html -->
» Utilisation des variables

Pour utiliser une variable, c'est très simple en fait:

Code : Tout sélectionner

{$POSTING_RULES_TEXT}
Notez bien le $ devant car il est très important. Il ne faut donc pas omettre de l'ajouter.

Ceci est un exemple et ça affichera tout simplement le texte qui aura été défini.

Vous pouvez également faire des conditions comme suit:

Code : Tout sélectionner

<!-- IF $MA_VAR --> votre texte par exemple <!-- ENDIF -->

Un autre exemple concret:

Code : Tout sélectionner

<!-- IF $POSTING_RULES == 'true' -->{$POSTING_RULES_TEXT}<!-- ENDIF-->
Cela signifie que si « $POSTING_RULES » est défini à « true » dans le fichier « prosilver_config.html » alors le texte sera affiché. Dans le cas contraire, il ne s'affichera pas.

» Exemple concret

Dans cette partie, nous allons vous donner un exemple concret de ce que cela peut donner.

Tout d'abord, nous allons éditer le fichier que nous avons créé précédemment, à savoir « prosilver_config.html ». Donc nous l'ouvrons et dans le code, nous ajoutons simplement ce qui suit:

Code : Tout sélectionner

<!-- DEFINE $TOPIC_SPACE = 1 -->
A noter que 1 est l'id du message (Post ID) qui est stocké dans la base de données.

Ensuite, ouvrez le fichier « styles/{VOTRE_THEME}/template/viewtopic_body.html ».

Cherchez:

Code : Tout sélectionner

	<!-- IF postrow.S_FIRST_UNREAD --><a id="unread"></a><!-- ENDIF -->
Avant, ajoutez:

Code : Tout sélectionner

	<!-- IF postrow.POST_ID eq $TOPIC_SPACE --><img src="http://www.phpbb.com/community/styles/prosilver/theme/ads/upper_get_involved.png" style="margin-bottom: 5px;" alt="Get Involved" /><!-- ENDIF -->
Ce qui donnerait:

Sujet qui contient l'id du message (1) de notre exemple:
01.png
Sujet qui ne contient pas l'id défini:
02.png
» Rafraîchissement et vidage du cache

N'oubliez pas de rafraîchir le template (onglet Styles) et de vider le cache (onglet Général).

Verrouillé

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 2 invités