Bonjour à tous,

http://www.leslavoirsducentre.fr

J'aimerais avoir votre avis sur ce site. C'est un site vitrine très simple réalisé par une amie de mon oncle (jeune diplômé du webmastering).

Son site est contenu dans un seul fichier PHP. Je ne vois l'interêt d'avoir ceci. Il y a certainement quelque chose qui m'échappe... Contrairement à un XHTML/CSS basic, cela limite le nombre de <TITLE> <META description> et cela empêche la création d'un sitemap.xml. Cela est-il grave?

Cordialement

Pika28
Modifié par pika28 (25 Oct 2010 - 12:43)
Bonjour,

pika28 a écrit :
Son site est contenu dans un seul fichier PHP. Je ne vois l'interêt d'avoir ceci. Il y a certainement quelque chose qui m'échappe... Contrairement à un XHTML/CSS basic, cela limite le nombre de &lt;TITLE&gt; &lt;META description&gt; et cela empêche la création d'un sitemap.xml. Cela est-il grave?
Ce la n'empèche absolument rien de ce que tu cite. Il reste possible d'avoir des meta et title unique par URL (il faut juste le faire) et ne bloque pas la création d'un sitemap, puisque chaque page à une URL spécifique.

Cette technique peut être pratique sur un très petit site, mais je dirais qu'au delà de quelques page, cela devient fastidieux à mettre à jour.
Merci Laurie-Anne, il y avait longtemps Smiley biggrin

- Je suppose que ce sont les même fonctions logiques qu'il faut utiliser pour faire varier la balise title et description ?

- Peut-on le faire uniquement pour une balise ou faut-il respecter un ensemble genre tout le head?
Bonjour, est ce que ma synthaxe est conforme?

	<?php
			if($page == "tarif")
			{
			?>
			
				<title>Titre de la page tarif</title>
				<meta name="description" content="description de la page tarif" />

			<?php
			}
			else if($page == "prestation")
			{
			?>
			
				<title>Titre de la page prestation</title>
				<meta name="description" content="description de la page prestation" />
			
			
			<?php
			}			
			else if($page == "map")
			{
			?>
			
				<title>Titre de la page map</title>
				<meta name="description" content="description de la page map" />
			
			<?php
			}
			else 
			{
			?>
			
				<title>Titre de la page index</title>
				<meta name="description" content="description de la page index" />
			
			<?php
			}
		?>

utilise peut-être un switch. ( le vengeur masqué me dit que c'est crade des if else trop imbriqué)
Modifié par Le_chevalier_blanc (26 Oct 2010 - 14:25)
Je précise que j'y connais absolument rien en PHP, je me suis inspiré du code présent dans la page pour reproduire le résultat avec title et description suivant les conseils de laurie anne
EDIT : desolé on a posté pendant que j'ecrivais ....

La syntaxe semble bonne mais je trouve sa un peu bizarre de rassembler dans un seul fichier php alors qu'il est si simple de définir en plusieurs fichier php. Surtout lorsqu'on arrive à plus de 4 pages avec du contenu. Autre chose, ce n'est que mon avis mais tu devrais éviter tous les délimiteur php (<? et ?>) et plutot utiliser des echo.

J'aurais plutôt organiser le code de la page comme ceci à la place de mettre les conditions pour chaque partie de la page :

            <!DOCTYPE html>
            <html lang="fr" > 
            <?php 
            $titre='';
            $description='';
            $body='';
            if($page == "tarif") 
            { 
                  $titre='Tarif';
                  $description='...';
                  $body='ma page';
            } 
            else if($page == "prestation") 
            { 
                  $titre='Tarif';
                  $description='...';
                  $body='ma page';
            }             
            else if($page == "map") 
            { 
                  $titre='Tarif';
                  $description='...';
                  $body='ma page';
            } 
            else  
            { 
                  $titre='Tarif';
                  $description='...';
                  $body='ma page';
            } 
            echo '<head>...';
            echo '<title>'.$titre.'</title> 
                <meta name="description" content="'.$description.'" />
            </head>
            <body>
            '.$body.'</body>';
        ?>
</html> 

Modifié par SamyPesse (26 Oct 2010 - 14:31)
si je comprends bien avec $titre=''; $description=''; $body=''; on défini des variables, ensuite on défini les variables sous condition en fonction des pages et pour finir on fait appel au varibale avec ECHO mais pour quoi placer le premier "echo '<head>...'; ", il appel personne celui la?
Ce genre de question devrait être posée dans la section PHP du forum.

Le echo "head"; c'est juste de la flémingite à mon sens (pour économiser quelques ouvertures fermetures de PHP.

Avant de te plonger dans la modification d'un site en PHP, il serait bon que tu te penche sur PHP lui-même, cela t'évitera de faire des bêtises.
Laurie-Anne a écrit :
Le echo &quot;head&quot;; c'est juste de la flémingite à mon sens (pour économiser quelques ouvertures fermetures de PHP.


Euh ... Smiley eek Pourquoi de la flemingite, je ne vois pas l'avantage d'ouvrir/fermé php alors que les echo sont une manière propre et simple de rendre un texte, il faudrait voir comment apache geré les ouverture/fermeture de php et les comparer aux temps d’exécution des echo.