La forma correcta de incluir / requerir archivos PHP en WordPress

2

Soy un nuevo desarrollador de WordPress y recientemente he tenido problemas (en varios sitios) con include_once y require_once para archivos PHP. Si incluyo (get_theme_directory_uri() . 'subdir/file') , el archivo especificado se incluye (o se requiere, lo que conduce a errores fatales), pero si se llama a alguna función de WordPress dentro del 'archivo', obtengo algo similar a:

  

' Llamada a función no definida add_action() en / full / path / to / file'.

La solución aparente que he encontrado es hacer:

include(dirname(__FILE__) . "/subdir/filename");

¿Es correcto o me perdí 'la forma de WordPress' de incluir archivos en algún lugar?

    
pregunta caffeine 27.10.2015 - 12:44

1 respuesta

5

Si marca enlace

Verá que get_template_directory_uri() devuelve un uri, no una ruta del servidor.

Debería utilizar en su lugar la función get_template_directory() :

include get_template_directory() . 'subdir/filename.php';

Para un complemento puede usar la función plugin_dir_path() :

include plugin_dir_path( __FILE__ ) . 'subdir/filename.php';
    
respondido por el thomascharbit 27.10.2015 - 18:39

Lea otras preguntas en las etiquetas