it-swarm.com.de

Wie registriere ich ein Stylesheet in einem WordPress-Widget?

Ich entwickle ein WordPress-Widget nach Dave Clements Tutorial . Es läuft gut. Jetzt möchte ich einige Stile hinzufügen. Ich möchte, dass die Stile in einer zusätzlichen CSS-Datei gespeichert werden, die zur Laufzeit geladen wird. Ich rufe diese Funktion auf

function myprefix_add_my_stylesheet() {
  wp_register_style( 'myprefix-style', plugins_url('mystyle.css', __FILE__) );
  wp_enqueue_style( 'myprefix-style' );
}

direkt davor (siehe Daves Tutorial) "// Widget-Ausgabe //" mit der folgenden Anweisung.

add_action( 'wp_enqueue_scripts', 'myprefix_add_my_stylesheet' );

Es scheint aber nichts zu passieren. Was mache ich falsch?

2
twigmac

wp_enqueue_scripts wird aufgerufen, bevor WordPress den Widget-Inhalt verarbeitet, also haben Sie genau wie in diesem Beitrag das Boot verpasst :).

Rufen Sie stattdessen einfach direkt wp_enqueue_style auf:

function widget($args, $instance) {
    wp_enqueue_style( 'myprefix-style', plugins_url('mystyle.css', __FILE__) );

    //Widget content
}

(Sie müssen sich nicht registrieren, wenn Sie es gleich nach der Registrierung in die Warteschlange stellen möchten.) Gleiches gilt für wp_enqueue_script.

4
Stephen Harris