Foros del Web » Creando para Internet » Sistemas de gestión de contenidos » WordPress »

Duda con spl_autoload

Estas en el tema de Duda con spl_autoload en el foro de WordPress en Foros del Web. Hola, Mirar estoy haciendo un autoload para diferentes classes y me encuentro que aparte de las mias me carga 2 mas, wp_atom_server y WP_User_Search y ...
  #1 (permalink)  
Antiguo 31/05/2013, 00:00
Avatar de 23r9i0  
Fecha de Ingreso: noviembre-2008
Ubicación: Catalonia
Mensajes: 203
Antigüedad: 15 años, 5 meses
Puntos: 33
Duda con spl_autoload

Hola,
Mirar estoy haciendo un autoload para diferentes classes y me encuentro que aparte de las mias me carga 2 mas, wp_atom_server y WP_User_Search y las dos estan el deprecated

Código PHP:
if( !class_exists'WP_Basis_Autoload' ) ):
class 
WP_Basis_Autoload {
    
    public 
$loaded = array();
    
    function 
__construct(){
        
spl_autoload_register( array( $this'auto_load' ) );
    }
    
    private function 
auto_load$class ){
        if( 
$class ){
            
$this->loaded[$class] = true;
            
$class str_replace'_''-'strtolower$class ) );
            
set_include_path(dirname(__FILE__));
            
spl_autoload_extensions'.class.php' );
            
spl_autoload$class );
            
print_r($this->loaded); // aqui es donde me muestra lo que comento
        
}
    }
}
$wp_basis_autoload = new WP_Basis_Autoload;
endif; 
Mis classes solo tiene __construct vacio menos uno que llama a otra class.

Código PHP:
require plugin_dir_path(__FILE__) . 'basis/wp-autoload.class.php';

class 
WP_Functions extends WP_Basis {
    
    function 
__construct(){
        
parent::__construct();
        
$t = new WP_Test;
    }
}
$wp_functions = new WP_FUNCTIONS
Donde esta el fallo?
  #2 (permalink)  
Antiguo 31/05/2013, 07:08
Avatar de 23r9i0  
Fecha de Ingreso: noviembre-2008
Ubicación: Catalonia
Mensajes: 203
Antigüedad: 15 años, 5 meses
Puntos: 33
Respuesta: Duda con spl_autoload

Ok, mirando un poco por la red decidi crear un if para que solo me cargase las classes que empiezen por WP_Basis y solucionado.

Código PHP:
...
    private function 
auto_load$class ){
        if ( 
'WP_Basis' !== mb_substr$class0) )
            return;
... 
Pero si alguien me puede explicar el porque pasa esto lo agradeceria.
Saludos

Etiquetas: plugin
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:46.