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

¿Fue útil?

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");
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top