Al final, documentandome un poco por la red encontré las funciones cURL de php que me han salvado el problema en cuestión de minutos y de una manera muy sencilla. En poco rato conseguí cargar contenido externo a través de una url con php de una manera sencilla y efectiva.
Por una parte, preparé un archivo en el servidor donde se aloja el wordpress para que mostrase sólo el contenido que necesitaba así tener preparado el contenido a cargar.
Para cargar contenidos externos en nuestra web podemos hacer uso de esta función que aprovecha la potencia de las librerias cURL de php para realizar la descarga de html de una url. La función es ésta :
function get_data($url) { $ch = curl_init(); $timeout = 5; curl_setopt($ch,CURLOPT_URL,$url); curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout); $data = curl_exec($ch); curl_close($ch); return $data; }Ésta función en php se encarga de descargar el html de la url que le indicamos con lo cual, haciendo uso de un par de lineas de php adicionales conseguiremos mostrar el contenido descargado :
$contenido_externo = get_data('http://www.dominio.com/file.html'); print_r($contenido_externo);Además de mostrarlo directamente, se puede procesar la respuesta recibida para adaptarla a nuestras necesidades haciendo uso de "replaces", recorriendo los nodos del contenido como si fuera un xml, etc.. las posibilidades son muchas a partir de aqui.
y que tipo de contenido puedo cargar...? un rss o cosas asi...?
ResponderEliminarPáginas Web
Hola, no exactamente. En este caso, se trata de funciones que leen el html que devuelve la url. Con el luego puedes hacer lo que quieras. En cambio para leer un rss existen maneras mucho mas sencillas. En mi blog encontrarás un post hablando de ese tipo de lecturas de xml. (http://programacionydisenoweb.blogspot.com.es/2011/11/leer-feed-rss-o-archivo-xml-con-php.html) Un saludo.
EliminarI like the idea of it
ResponderEliminarExcelente, gracias
ResponderEliminarcomo puedo mostrarlo pero en el directorio que le indique para que muestre las imagenes etc. es local lo que tengo pero siempre me lo enseña en el home y quiero que sea en otro directorio desde donde lo he leido, gracias
ResponderEliminarHola, no entiendo muy bien cual es el problema que planteas. La función la puedes llamar desde donde quieras. Y si las rutas relativas no te coinciden desde donde lo cargas, siempre puedes hacer un replace o algo parecido para adaptarlas todas a la vez.. por ejemplo.. Un saludo.
Eliminarme da un error porque la pagina que carga llama a un css y la direccion empieza desde la direccion de mi php
ResponderEliminar:S
hace esto, pero la carpeta
carpetaDelPHP/css/estilo.css
y deberia abrir
carpetaDelHTML/css/estilo.css
Hola, eso puede deberse a que las rutas son relativas en el html que descargas.. podrias intentar arreglarlo haciendo algun tipo de "replace" de las rutas o bien descargando tambien ese contenido. Un saludo.
EliminarEsta es la manera mas sencilla de hacerlo..
ResponderEliminarexiste alguna posibilidad de cargar solo los títulos de esa pagina html externa???
ResponderEliminarHola, tal y como digo en el post "Además de mostrarlo directamente, se puede procesar la respuesta recibida para adaptarla a nuestras necesidades haciendo uso de "replaces", recorriendo los nodos del contenido como si fuera un xml, etc.. las posibilidades son muchas a partir de aqui"
EliminarPor tanto, una vez obtienes la respuesta, procesala y extrae solo lo que te interesa.
Un saludo
Hola actibands. Te comento mi duda a ver si me puedes orientar, ya que vengo averiguando por Internet y estoy cada vez más desorientado ya que soy novato. Lo que yo necesito es agregar una web en a través de un formulario y que con código PHP se posiciones dentro de una página externa y copie links, estos links son para descarga archivos, y me los guarde en un Bloc de notas. La primera página ya la tengo hecha, ya que es un formulario muy simple en HTML con un input text y un input submit, y tengo que armar otra página que me tome el valor o la página ingresada en el formulario y recorra esa página con PHP, el tema es que no encuentro material al respecto en Internet. Si me puedes orientar te lo agradecería.
ResponderEliminarHola, la respuesta era un poco larga para ponertela aqui asi que he creado un nuevo post. Lo puedes ver aqui Extraer enlaces de un html con php. Espero que te sea de mucha ayuda. Un saludo.
Eliminar