CodeIgniter: Une classe / Bibliothèque pour aider à obtenir meta tags à partir d'une page Web?
-
20-09-2019 - |
Question
J'utilise CodeIgniter. Je suppose que peu importe quel cadre php j'utilise.
Mais avant d'écrire ma propre classe est-il un autre qui a déjà été écrit qui permet à un utilisateur d'obtenir la page titre et les balises meta (mots-clés, descriptions) de sit ... tout s'ils en ont.
Toute sorte de classe PHP qui ne ce serait grand.
Merci à tous
La solution
Vous devriez jeter un oeil à cette classe: PHP simple HTML DOM il fonctionne ainsi:
include('simple_html_dom.php');
$html = file_get_html('http://www.codeigniter.com/');
echo $html->find('title', 0)->innertext; // get <title>
echo "<pre>";
foreach($html->find('meta') as $element)
echo $element->name . " : " . $element->content . '<br>'; //prints every META tag
echo "</pre>";
Autres conseils
Vous pouvez obtenir toute la page distante balises meta froma avec get_meta_tags - http://ca3.php.net/ get_meta_tags
Cette page a une classe pour obtenir la page et la description, ils utilisent également get_meta_tags - http://www.emirplicanic.com/php/get-remote-page-title-with-php.php
Vous devriez être en mesure de combiner les bits à la fois pour obtenir tout ce dont vous avez besoin.
bibliothèque curl utiliser PHP. Il peut tirer d'autres pages du Web et de les chercher comme des chaînes, puis vous pouvez analyser la chaîne avec des expressions régulières pour trouver le titre de la page et les balises meta.
Voir ce s'il vous plaît. Ceci est classe générique pour obtenir la page balises meta et faire beaucoup plus. Voyez si vous pouvez ajouter ceci CodeIgniter bibliothèque. Merci
Avec DOM / XPath
libxml_use_internal_errors(true);
$c = file_get_contents("http://url/here");
$d = new DomDocument();
$d->loadHTML($c);
$xp = new domxpath($d);
foreach ($xp->query("//meta[@name='keywords']") as $el) {
echo $el->getAttribute("content");
}
foreach ($xp->query("//meta[@name='description']") as $el) {
echo $el->getAttribute("content");
}