public function enqueue($component_handles)
{
// Handles, one or more
$handles = (array) $component_handles;
// Magic
if (func_num_args() > 1) {
$handles = func_get_args();
}
foreach ($handles as $handle) {
// Javascript part
if (isset($this->components[$handle]['js'])) {
// Check for dependences
if (isset($this->components[$handle]['deps'])) {
// Recursive into the dependence and check if register
$this->enqueue($this->components[$handle]['deps']);
}
$this->enqueue_scripts[] = $handle;
} else {
wp_enqueue_script($handle);
}
// CSS style part
if (isset($this->components[$handle]['css'])) {
// Check dependences
if (isset($this->components[$handle]['deps'])) {
// Recursive into the dependence and check if register
$this->enqueue($this->components[$handle]['deps']);
}
$this->enqueue_styles[] = $handle;
} else {
wp_enqueue_style($handle);
}
}
// Makes unique
$this->enqueue_scripts = array_unique($this->enqueue_scripts);
$this->enqueue_styles = array_unique($this->enqueue_styles);
}