CodeIgniter: A Clase / Biblioteca para ayudar a obtener etiquetas meta de una página web?
-
20-09-2019 - |
Pregunta
Estoy usando CodeIgniter. Supongo que no importa qué marco php que estoy utilizando.
Pero antes de escribir mi propia clase no es otra que ya se ha escrito que permite a un usuario para obtener el título de la página y meta tags (palabras clave, descripciones) de cualquier Sit ... si tienen alguna.
Cualquier tipo de clase PHP eso que sería grande.
Gracias a todos
Solución
Usted debe echar un vistazo a esta clase: Simple PHP DOM HTML funciona de esta manera:
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>";
Otros consejos
Puede obtener toda la página remota etiquetas meta con froma get_meta_tags - http://ca3.php.net/ get_meta_tags
esta página tiene una clase para obtener la página y la descripción, sino que también están utilizando get_meta_tags - http://www.emirplicanic.com/php/get-remote-page-title-with-php.php
Usted debe ser capaz de combinar los bits de ambos para conseguir todo lo que necesita.
librería curl de Uso de PHP. Se puede tirar de otras páginas de la web y traerlos como cadenas, y luego se puede analizar la cadena con expresiones regulares para encontrar etiquetas de título y meta de la página.
ver este favor. Esta es la clase genérica para obtener página meta tags y hacer mucho más. Ver si se puede añadir esto en CodeIgniter biblioteca. Gracias
Con 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");
}