Question sur la génération de titre de page dynamique

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics

Helldream
Nouveau WRInaute
 
Messages: 18
Inscription: Jeu Avr 26, 2007 18:06

Question sur la génération de titre de page dynamique

Message le Ven Juin 15, 2007 0:43

Bonjour,

J'aimerais, afin d'améliorer le référencement de mon site, mais aussi pour une question d'ergonomie (par exemple pour ceux utilisant les fonctions d'historique de leur navigateur), générer dynamiquement les titres de mes pages.

Sur le principe, je sais comment faire : stocker dans une BDD les titres, les mots clés, et les description des pages, et aller les lire lorsque j'affiche une page. Là dessus, aucun soucis.

Cependant, je ne vois pas comment mettre cela en place pour un site dynamique. J'ai par exemple créé un site de vente de CD de musique en ligne. Et j'aimerais que pour chaque fiche de CD, je puisse avoir un titre et une description contenant le titre de ce CD (par exemple 'Fiche de Tel-Album réalisé par Tel-Artiste').

En effet, je ne me vois pas saisir manuellement le titre de chaque fiche (il y a plus de 500 références). Ce que j'ai pensé faire, mais que je n'arrive pas, serait de définir un titre générique dans ma BDD (par exemple "Fiche de $ligne[0] réalisé par $ligne[1]"), et de faire une requête pour trouver le titre de l'album et son artiste avant d'afficher le titre de la page... Exemple :

Code: Tout sélectionner
         $sql2 = "   SELECT page_title, page_description, page_keywords
                  FROM page
                  WHERE section='"$_GET['section']."'
                     AND action='".$_GET['action']."'";
         $req2=$db->query($sql2);
         if($ligne2=$req2->fetch_row())
         {
            $sql = "   SELECT titre, nom_artiste
                     FROM album
                     WHERE id_album='".$_GET['id_album']."'";
            $req=$db->query($sql);
            $ligne=$req->fetch_row();
            echo '<title>'.$ligne2[0].'</title>';
            echo '<meta name="description" content="'.$ligne2[1].'" />';
            echo '<meta name="keywords" content="'.$ligne2[2].'" />';
         }


et où on aurait dans la table "page" : ("Fiche de $ligne[0] réalisé par $ligne[1]","Fiche du CD de $ligne[0] réalisé par $ligne[1]", "$ligne[0],$ligne[1],musique,cd,acheter") avec le nom des variables tels quels.

Est-ce possible de faire cela? Ou sinon, comment faire pour avoir un titre dynamique lorsqu'on a un site avec ennormément de produits?

Merci d'avance pour vos réponses :wink:

jeroen
WRInaute accro
WRInaute accro
 
Messages: 2384
Inscription: Ven Aoû 30, 2002 13:35

Message le Ven Juin 15, 2007 8:41

Tu as forcément déjà une base de donnée avec le titre des albums et le nom des artistes. Pourquoi tu veux doublonner tout ça ?

1/ à l'appel de la page tu sélectionne ces valeurs dans ta base $album et $auteur
2/ tu met en forme ton titre :

Code: Tout sélectionner
$titre='Fiche '.$album.' par '.$auteur;


puis tu fais un echo
Code: Tout sélectionner
echo '<title>'.$titre.'</title>';

Helldream
Nouveau WRInaute
 
Messages: 18
Inscription: Jeu Avr 26, 2007 18:06

Message le Ven Juin 15, 2007 10:41

Merci de ta réponse. Sur le principe, c'est ce que je voudrais faire, mais j'aurais aimé mettre la chaine $titre dans la BDD, pour éviter de les faire apparaître en dur dans mon code (et dans un include, c'est pas top non plus)... En effet, j'aurais pas mal de titres : pour le albums, les films, les spectacles, les concerts, les voyages, les livre... Sans compter les nombreuses rubriques (choix par pays, par genre, catalogue, promotions etc)...

poeme
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 127
Inscription: Mer Juil 21, 2004 12:22

Message le Dim Jan 13, 2008 12:54

Bonjour jeroem


comment recuperer ces variables dans la base de donne

Je voudrais mettre un titre dynamique dans mon vieux phpmyannuaire
j'ai ceci dans data_bd_annuaire.php
$T_categories = "an_categories"; //table des categoires

et la table a laquelle ca fait reference

CREATE TABLE IF NOT EXISTS `an_categories` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
`id_cat_mere` mediumint(8) unsigned NOT NULL default '0',
`cat_name` varchar(30) collate latin1_general_ci NOT NULL default '',
`texte` text collate latin1_general_ci NOT NULL,
`activation` tinyint(1) unsigned NOT NULL default '1',
`position` tinyint(3) unsigned NOT NULL default '0',
`can_add` tinyint(1) unsigned NOT NULL default '1',
PRIMARY KEY (`id`),
UNIQUE KEY `id_cat_mere` (`id_cat_mere`,`cat_name`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=52 ;


je pense que pour quelqu'un maitrant php ca doit etre simple

merci

Trentounet
WRInaute discret
WRInaute discret
 
Messages: 87
Inscription: Lun Mai 28, 2007 19:40

Message le Dim Jan 13, 2008 13:46

Désolé de m'incruster dans cette discussion d'autant plus que c'est pour poser une question :p

Donc moi j'ai le même problème que toi sauf que c'est pour ajouter des jeux, pour le moment je le fais semi-manuellement parce que je crée les pages moi même mais il me complète le titre et tout automatiquement.

Mon problème c'est que je ne sais pas comment faire pour générer des pages avec par exemple : nomdujeu1.html nomdujeu2.html nomdujeu3.html etc...
Comment faire pour changer le nom de la page en fonction du jeu ? (parce que le title et les metas, ça j'ai bien compris).

Merci :)

poeme
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 127
Inscription: Mer Juil 21, 2004 12:22

Message le Dim Jan 13, 2008 13:58

bonjour trentounet

et comment fais tu pour le titre ce que je cherche?
merci

Trentounet
WRInaute discret
WRInaute discret
 
Messages: 87
Inscription: Lun Mai 28, 2007 19:40

Message le Dim Jan 13, 2008 14:03

<title><?php echo $donnees['title']; ?></title>

Il va chercher le champ title dans ma bdd qui correspond au jeu.

poeme
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 127
Inscription: Mer Juil 21, 2004 12:22

Message le Dim Jan 13, 2008 14:14

salut trentounet

oui ca j'ai pigé mon probleme c'est de

recuperer ton $donnees['title']; de ma base de donnes

pour moi recuperer cat_name

et je ne sais pas comment

si je fais

<title><?php echo $cat_name; ?></title>
je n'ai rien car il faudrait faire exister cette fonction

$cat_name = recuperer cat_name dans $T_categories mais comment


Formation recommandée sur ce thème :

Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: mipc, sr et 0 invités