Ver Mensaje Individual
  #26 (permalink)  
Antiguo 29/01/2012, 07:46
naked
 
Fecha de Ingreso: marzo-2009
Mensajes: 71
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Tutorial: Cómo extraer miniaturas de imágenes en Wordpress

Bueno he conseguido hacer una función utilizando el código de metacortex y un código de la página de Wordpress que permite cargar también la imagen si se sube desde la biblioteca.

Solo utilizando el código de Wordpress que "matchea" la imagen:

Código PHP:
function catch_that_image() {
global 
$post$posts;
$first_img '';
ob_start();
ob_end_clean();
$output preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i'$post->post_content$matches);
$first_img $matches [1] [0];

if(empty(
$first_img)){ //Defines a default image
$first_img "/images/default.jpg";
}
return 
$first_img;

... carga las imágenes attached y las posteadas desde la biblioteca, pero si lo que se publica en un post es "una galería completa" y no se publica ninguna imagen a parte, no carga nada nada.

Utilizando los dos códigos he conseguido solucionar esto:

Código PHP:
function imagendepost() {
                       global 
$post$posts;                       
                       
$first_img '';
                       
ob_start();
                       
ob_end_clean();
                       
$output preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i'$post->post_content$matches);
                       
$first_img $matches [1] [0];                       
                           if(!empty(
$first_img)){                           
                           return 
'<img src="'$first_img.' " />';
                                }elseif( 
$images get_children( array ( 
                                    
'post_parent'    => get_the_ID(), 
                                    
'post_type'      => 'attachment'
                                    
'numberposts'    => 1
                                    
'post_mime_type' => 'image' 
                                     
))){                                                            
                                         foreach( 
$images as $image ) {                              
                                             
$imagen wp_get_attachment_image$image->ID'medium' );                              
                                             echo 
$imagen
                                             }}elseif(empty(
$first_img)){
                                                     
$first_img get_bloginfo('template_url')."/imagenes/noimage.jpg";
                                                     }
                                                      return 
'<img src="'$first_img.' " />';                      
                     } 
No se si se posible simplificar o mejorar el código, de momento me funciona.
Un saludo y gracias a Metacortex que sin el inicio de su código no habría solucionado lo que necesitaba.

Última edición por naked; 30/01/2012 a las 10:55