Générer automatiquement le meta description

Nouveau WRInaute
Bonjour à tous,

En php, je cherche à lire le contenu d'une balise DIV et à la mettre dans une variable php pour générer automatiquement la balise META description pour chaque page de mon site. Avez-vous une idée sur la façon de procéder ?

Merci à tous,

Lionel
 
WRInaute occasionnel
ha la la....
no comment...

Sais tu ce que c'est que la programmation avant de te lancer dans des trucs que tu ne maitrises pas ?
Une variable, une boucle for, tu sais ce que c'est ? sais-tu ce qu'est le PHP ?

Parceque là tu mélanges tout.

Le mieux est de te choisir un bon bouquin sur le sujet ou de potasser les nombreux tutoriels sur le Web...
 
Nouveau WRInaute
Merci pour cette réponse. J'ai des notions de programmation, ce n'est pas vraiment le problème. À priori, la réponse devrait intéresser tout le monde, puisque la solution permet de rendre cohérent les 300 premiers caractères de chaque page avec le meta description, ce qui est plutôt pratique, non ? Merci de me faire profiter de vos lumières.

Lionel
 
Membre Honoré
C'est pas un système auto qui va faire ensorte d'avoir la meilleur description pour chaque page et l'optimisation de celle-ci :|
 
WRInaute occasionnel
à la limite tu peux mettre le contenu du DIV dans une variable, afficher les X premiers caractères dans la desc, puis le contenu entier dans le DIV
Ceci dit, si Google ne trouve pas de desc, il me semble qu'il affiche le contenu de la page
donc en gros, tu mets rien c'est pareil
 
Membre Honoré
Ce que j'ai pas trop compris c'est si il veut avoir la même meta partout ou généré avec une partie d'un texte sinon si c'ets une partie d'un texte il est vrai que il suffit de fait un appel sur une zone précise de la page et de la reballancer en php sur le meta :|
 
Nouveau WRInaute
Solution

Bonjour à tous,

Pour ceux que la solution recherchée intéresse, la voici :

dans le head :

<META name="description" content="<?php outputDescription(); ?>">

dans le body :

<div id="myDiv">le texte que je veux</div>

après le </html>
<?php
function outputDescription()
{
$html = file_get_contents($_SERVER['SCRIPT_FILENAME']);

$startMatch = 'id="myDiv">';
$endMatch = '</div>';

$startOff = strpos($html, $startMatch) + strlen($startMatch);
$endOff = strpos($html, $endMatch, $startOff);

$html = substr($html, $startOff, $endOff - $startOff);

echo strip_tags($html);
}
?>

Navré d'avoir mal formulé ma question initiale. J'espère que ce script sera profitable au lecteurs.

Bonne journée,

Lionel
 
Discussions similaires
Haut