Cómo incluir todos los archivos de una carpeta en functions.php
Mi functions.php incluye otros archivos de funciones ubicados dentro de un directorio 'functions'.
Actualmente se agregan individualmente, con un formato como este ejemplo:
include('functions/login.php');
¿Cómo puedo modificar esto para incluir todos los archivos dentro del directorio 'functions', sin listarlos individualmente?

Puedes incluir/requerir todos los archivos *.php de forma recursiva usando la siguiente función.
foreach(glob(get_template_directory() . "/*.php") as $file){
require $file;
}
Alternativamente, también puedes usar la siguiente función.
$Directory = new RecursiveDirectoryIterator(get_template_directory().'functions/');
$Iterator = new RecursiveIteratorIterator($Directory);
$Regex = new RegexIterator($Iterator, '/^.+\.php$/i', RecursiveRegexIterator::GET_MATCH);
foreach($Regex as $yourfiles) {
include $yourfiles->getPathname();
}
PD: Obtuve la solución Desde Aquí.

@ JItendra Rana ... Gracias. ¿Se puede modificar esto para incluir archivos de subdirectorios dentro del directorio 'functions'?

¿Quieres incluir todos los archivos recursivamente en todos los subdirectorios?

Actualicé la respuesta con una solución más elegante para directorios recursivos. Por favor revisa

@ JItendra Rana ... Gracias. Estoy recibiendo varios errores con el código actualizado, así que en su lugar usaré tu sugerencia anterior, que creo que era: foreach(glob('/add_path_to_theme/wp-content/themes/theme-name/functions/*.php') as $file) {include $file;} Si ese es tu código, podría valer la pena volver a agregarlo a tu actualización para que otros puedan acceder a él.

Así es como lo hice desde mi archivo functions.php en WordPress:
/**
* Funciones
* Requiere todos los archivos PHP en el directorio /functions/
*/
foreach (glob(get_template_directory() . "/functions/*.php") as $function) {
$function= basename($function);
require get_template_directory() . '/functions/' . $function;
}
