проблема загрузки таблиц стилей в wp_head

Я пытаюсь создать функцию ярлыка обертки для регистрации и загрузки таблиц стилей в заголовке. в настоящее время функция загружает этот файл css src:

http://my.test/wp-content/theme/css/.css 

Я, очевидно, хочу, чтобы он передал данный параметр. Проблема в том, что новое определение функции в определении новой функции, похоже, не принимает параметр, хотя мой аргумент # 4 для add_action равен 1 (параметр passable to function).

Что я делаю не так?? Пожалуйста помоги 🙂

 <?php //Registering stylesheets load_stylesheet_like_a_boss('my-style.css'); function load_stylesheet_like_a_boss($filename){ echo 'parent:'.$filename; //should return 'parent: my-style.css' add_action('wp_head', 'stylesheet_registration', 5, 1); function stylesheet_registration($filename){ echo ' / child:'.$filename.'<br>'; //should return ' / child: my-style.css' $name = str_replace('.css','', $filename); wp_register_style($name, get_bloginfo('template_directory').'/css/'.$name.'.css'); wp_enqueue_style($name, 10); } } ?> 

Solutions Collecting From Web of "проблема загрузки таблиц стилей в wp_head"

Хотя ваш код немного грязный, я думаю, что одна вещь, которая нарушает его, – это wp_enqueue_style который у вас есть. Второго параметра «10» просто не должно быть.

Я думаю, у вас есть несколько проблем:

  1. Код излишне сложный
  2. Вы передаете неправильные аргументы в wp_enqueue_style() . (Кажется, вы передаете приоритет , который эта функция не принимает.)
  3. Вы повторяете внутри обратного вызова, который не предназначен для вывода чего-либо
  4. Понятно, что идея обертки для обратного вызова действия в очереди не имеет смысла.

Попробуйте что-то вроде этого:

 <?php function load_stylesheet_like_a_boss( $filename ) { if ( false == $filename ) { return; } else { function enqueue_stylesheet_like_a_boss( $filename ) { // Stylesheet handle // Returns all but the ".css" from $filename $handle = substr( $filename, 0, -4 ); // Stylesheet path $path = get_template_directory_uri() . '/css/' . $filename; // Enqueue wp_enqueue_style( $handle, $path ); } add_action( 'wp_enqueue_scripts', 'enqueue_stylesheet_like_a_boss' ); } } ?> 

Примечание: перед wp_head действия wp_head необходимо вызвать функцию load_stylesheet_like_a_boss() . Это означает, что его, вероятно, не следует вызывать в шаблоне вообще, а скорее в functions.php и где-то зацепиться – что заставляет меня задаться вопросом, зачем вам такая обертка вообще?