Problem beim Laden von Stylesheets nach wp_head

Ich versuche, eine Wrapper-Shortcut-function zu erstellen, um Stylesheets in der Kopfzeile zu registrieren und zu laden. Zur Zeit lädt die function diese CSS-Datei src:

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

Ich möchte natürlich, dass der Parameter übergeben wird. Das Problem ist, die neue functionsdefinition innerhalb der neuen functionsdefinition scheint den Parameter nicht zu übernehmen, obwohl mein 4. Argument für add_action 1 war (der Parameter ist für die function passierbar).

Was mache ich falsch?? Bitte helfen Sie 🙂

 <?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.'
'; //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 "Problem beim Laden von Stylesheets nach wp_head"

Während dein Code ein bisschen unordentlich ist, denke ich, dass die einzige Sache, die es bricht, der wp_enqueue_style ist, den du dort hast. Der zweite Parameter “10” sollte einfach nicht da sein.

Ich denke du hast ein paar Probleme:

  1. Der Code ist unnötig komplex
  2. Sie übergeben die falschen Argumente an wp_enqueue_style() . (Sie scheinen eine Priorität zu übergeben , die diese function nicht akzeptiert.)
  3. Sie hören innerhalb eines Callbacks, das nichts ausgeben soll
  4. Konzeptionell erscheint die Idee eines Wrappers für einen Enqueue-Aktions-Callback einfach nicht sinnvoll.

Probieren Sie stattdessen Folgendes aus:

 < ?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' ); } } ?> 

Hinweis: Die function load_stylesheet_like_a_boss() muss vor dem wp_head der wp_head Aktion wp_head werden . Das heißt, dass es wahrscheinlich gar nicht in der Vorlage aufgerufen werden sollte, sondern in functions.php und irgendwo süchtig ist – was mich dazu bringt, mich zu fragen, warum Sie überhaupt einen solchen Wrapper brauchen?