Site multilangue et definition de portions d'html

Eléphant du PHP | 91 Messages

11 juin 2007, 12:03

Hello,

J'aurais voulu savoir si il existe une façon de procéder efficace pour définir des portions d'html dans un même fichier.

quelque chose comme :

define( 'nom_de_variable') {
code html
}

Avec la syntaxe define('nom_de_variable','string') c'est un peu lourd lorsqu'il s'agit d'un grand paragraphe qui utilise plusieurs div et span de formatage.

En espérant me faire comprendre :wink: , merci.

Mammouth du PHP | 693 Messages

11 juin 2007, 12:48

Pas trop compris...

Juste comme ca, si tu veux faire un site multilangues, tu peux faire pour chaque langue un fichier ou tu défini un tableau associant pour les même clef la traduction, puis tu inclu le fichier corespondant à la langue de l'utilisateur.

Ensuite, tu n'as qu'a utilisé les clef de ton tableau.

Eléphant du PHP | 91 Messages

11 juin 2007, 13:07

Mouais, je me doutais que ça manquait un peu de clarté :wink:

Mon site est fait sous Oscss (plus ou moins Occommerce donc).
La structure du site est donc déjà définie et ça serait un peu trop de sueur que de tout changer.

Donc sous oscommerce, les fichiers principaux font appel, dès qu'il y a du texte, aux fichiers de langue qui stockent le texte dans des variables avec des define().

L'appel à un texte se fait donc comme ça :

Code : Tout sélectionner

<?php echo VARIABLE_TEXT; ?>
Et dans le fichier de langue française (par exemple) on trouvera :

Code : Tout sélectionner

define('VARIABLE_TEXTE','le texte en français');
Cette façon de procéder me va bien. Sauf que si le texte est un peu complexe, avec des liens hypertexte et cie, ça devient assez lourd.

Donc j'aimerais trouver une syntaxe plus pratique, qui me permette de stocker dans une variable une portion de code entière.

C'est sans doute pas bien compliqué mais hem, je galère un peu en php (bon ok beaucoup :lol: )

ViPHP
ViPHP | 5924 Messages

11 juin 2007, 14:08

Vois du côté de la syntaxe HereDoc.

Eléphant du PHP | 91 Messages

11 juin 2007, 14:35

Oue, c'est ce qu'il me faut. Merci !