balise title et php

  • Auteur de la discussion kermitdive
  • Date de début
K
kermitdive
Guest
bojour
voila ma question
monsite en php a une adresse du style

monsite.com/index.php puis la navigation sur le site est de la sorte :

monsite.com/index-rubrique1.html (un htaccess avec url rewriting qui renvoie sur index.php)

monsite.com/index-rubrique2.html etc ....

ma question comment change le titre qui apparait dans le navigateur et google car c'est toujours le même titre qui coresspond en fait à mon index.php et non pas au diféérente page qui s'affiche au centre du site

je voudrais les optimiser pour permettre dans les moteur de ne pas avoir plusieur au même titre mais contenu différents

merci de votre aide

sylvain
 
WRInaute passionné
Bonjour sylvain
C'est à toi de jouer avec php pour alimenter la balise <title> differement selon les pages affichées.
Selon que ton contenu est en sql ou en texte ou en html, ta methode sera differente mais l'idée est de disposer de l'information dés le head.
 
K
kermitdive
Guest
une adresse pour m'aider

bonsoir
merci Kmacleod aurait tu une adresse de site web avec qq explication car je ne programme pas en php je n'utilise que des include de page html ou des modules déja crée et j'agrémente à ma sauce alors si tu pouvaisme guider vers un site
je vais faire qq recherche de ce coté

si je comprend bien dans mon index je vais devais introduire une fonction qui pourrait utiliser le title de ma page centrale comme title générale ??? hum je sais pas si je suis clair mais bon

merci quand même te ton aide

sylvain
 
Nouveau WRInaute
tu dois avoir une règle URL rewriting qui donne

monsite.com/index-rubrique2.html => /index.php?rub=rubrique2

Ta rubrique tu l'as donc avec $_GET['rub']
Rien ne t'empèche d'avoir dans ta page index.php

<title><?php echo htmlentities($_GET['rub'])." .:. MonSite.com"; ?></title>

A+
 
WRInaute accro
Pourquoi faire simple ...

Dans index
$title = "Titre";
include(header.php);

Et dans header
<title><?php echo $title ?></title>
 
K
kermitdive
Guest
title et php

bonjour et merci t509

j'ai essyé ton code qui marche très bien mais en fait mon htaccess est rédigé de la sorte

RewriteEngine on
RewriteRule ^SiteAqualonde/templates/index-([a-z0-9]+)\.html$ /SiteAqualonde/templates/index.php?page=$1 [L]

ce qui fait que à chaque rubrique s'affiche

rubrique1-monsite.com
rubrique2-monsite.com

il faudrait que je change alors ce fichier pour qu'il accepte des page du genre
monsite.com/index-le club.html et qui serait refdirigé vers mon index.php?page=le club.php hors je ne peux pas laisser d'espace dans le code

hum pas evident tout ca mais merci de m'aider

Pour milkiway je suis désolé mais j'ai pas bien compris ton code je n'arrive pas à mettre
$title = "Titre";
include(header.php);
dans mon index il se place tj sous mon body dois je le mettre entre des balise title ??

mon fichier d'entete s'appelle entete pas header mais est ce que c'est uin fichier a part ou celui la dont tu parle
quoi qu'il en soit au vue de mon faible niveau en php je n'ai pas bien compris
merci du coup de main également
sylvain

je ne sais pas si je peux mais voici mon site pour vous donner une idée
http://www.aqualonde-plongee.com
 
B
binarythinking
Guest
milkiway a dit:
Pourquoi faire simple ...

Dans index
$title = "Titre";
include(header.php);

Et dans header
<title><?php echo $title ?></title>
En l'occurrence, ton code tel qu'il est présenté ici ne sert à rien...

Le post de T509 est beaucoup plus pertinent...

Comme tu le disais, quand on peut faire simple...

:wink:
 
WRInaute discret
Slt
Avec des varibale qui ont des valeurs du style rubrique1 , rubrique2 etc... ca ne donne pas des titres tres zouli :)
Tu pour faire (oui, un peut plus compliquer mais bon...) un switch . ex :

Code:
$rub=$_GET['rub'];
switch $rub{
 case "rubrique1":
 $titre="Le club";
 break;

 case "rubrique2":
 $titre="Le fonctionement";
 break;

 case "rubrique3 ":
 etc...

 default:
 $titre="Bienvenue sur le site de Aqualonde";
}

Mais bon, a chaque ajout d'une nouvelle page, faut créer une autre entrer dans le switch... mais ca marche :)

Sinon, change la valeur de $rub, et fais comme disais T509.

@+
Sky
 
B
binarythinking
Guest
Voici ma vision des choses sur ton problème.

Il suffirait de faire un test sur la variable et d'en déduire le titre...

En gros :

Code:
<?php

if($_GET['page']=="rubrique1"){

	$title = "Rubrique 1, sûrement la meilleure rubrique de ce site !";

}elseif($_GET['page']=="rubrique2"){

	$title = Rubrique 2, sûrement la deuxième meilleure rubrique de ce site !";

}else{

	$title = "Titre par défaut";

}

?>

et ensuite un petit

Code:
<title><?php echo $title; ?></title>
 
K
kermitdive
Guest
title et php

merci sky
juste une petite ino complementaire ce code je le met ouu et je suppose entre des balise php

ouai je progresse meri
 
WRInaute discret
Lol=>binarythinking ;)

Oui, il faut placer le code avant la balise html <title> et entre <?php et ?>

Sky
 
K
kermitdive
Guest
title et php

et bien merci à tous et le vainqueur est .....

binarythinking

je viens de faire les test à priori ca marche je modifie ton code pour mettre mes titre et je vous tiens au courant dans la journée

un grand merci à vous tous


sylvain
 
Discussions similaires
Haut