Como puede verse todos los artículos se encuentran dentro de un <div class="list__item"></div> por lo que habrá que recorrer los div (con un foreach) imprimiendo el título y la URL.
<?php
//Archivo descargado
require 'simple_html_dom.php';
//Web sobre la que se va a aplicar
$html = file_get_html('http://www.josemanuelvazquez.es');
//Recorremos todos los div class="list__item"
foreach( $html->find('div[class=list__item]') as $post )
{
//Obtiene el 1º <a ..></a> dentro del div
$link = $post->find('a',0);
//Obtiene el href
$url = $link->attr['href'];
//Obtiene el 1º h2, dentro de la etiqueta <a>, y obtiene su contenido
$title = $link->find('h2',0)->innertext;
//Se muestra el título y su enlace.
echo $title.'</br>'.'<a href="'.$url.'">'.$url.'</a></br></br>';
}
Se ha utilizado innertext para obtener el contenido de *<h2></h2>. También se puede utilizar tag, outertext ó plaintext. Veamos un ejemplo:
<?php
//Se aplica únicamente a este div
$html = str_get_html("<div>foo <b>bar</b></div>");
$e = $html->find("div", 0);
echo $e->tag; // Devuelve: " div"
echo $e->outertext; // Devuelve: " <div>foo <b>bar</b></div>"
echo $e->innertext; // Devuelve: " foo <b>bar</b>"
echo $e->plaintext; // Devuelve: " foo bar"
Si quieres más información sobre esto, puedes visitar la documentación.
Comentar