Plugin CSS nicht in Enquêting

Ich entschuldige mich, wenn es eine Antwort darauf gibt, die diese doppelte Frage schon macht. Ich habe die letzten 3 Tage damit verbracht, den CSS-Stil so zu verwenden, dass WordPress es zulässt. Es ist sehr wahrscheinlich, dass ich angefangen habe, Code zu schreiben -blind’

Ich arbeite an einem Plugin, um nutzergenerierte Inhalte und eine durchschnittliche Bewertung eines bereitgestellten Dienstes anzuzeigen. Die Daten kommen alle aus einer XML-Datei, die woanders gehostet wird, und alles funktioniert großartig! Nun, als ich das Plugin für WordPress veröffentlichen wollte, damit andere es benutzen können, musste ich einige Änderungen am Code vornehmen, sie ließen mich nicht die und Tags für das CSS verwenden.

Einige der Optionen im CSS basieren auf den Benutzereinstellungen, die sie auf der Optionen-Seite für das Plugin festgelegt haben. Ich habe verschiedene Möglichkeiten ausprobiert, es zum Laufen zu bringen, aber es wird das Styling nicht richtig laden.

Aufgrund der Einstellungen, die ein Benutzer vornehmen kann, habe ich die CSS-Dateien in PHP-Dateien umgewandelt (auf diese Weise konnte ich alles am selben Ort behalten).

In der Haupt-Plugin-Datei habe ich die folgenden Zeilen: add_action( 'admin_enqueue_scripts', 'kvssm_enqueue_styles' ); Ich habe dies auch mit wp_enqueue_scripts versucht, um das gleiche Ergebnis zu erhalten, dass das Styling nicht angewendet wurde.

Die aufgerufene function:

 function kvssm_enqueue_styles( ) { wp_enqueue_style( 'reviewCSS', plugins_url( '/review-style.php', __FILE__ ), array(), null ); wp_enqueue_style( 'widgetCSS', plugins_url( '/widget-style.php', __FILE__ ), array(), null ); } 

Ich habe mehrere Wiederholungen dieser function mit und ohne wp_register_style

Die letzte Methode, die ich versucht habe, war in der css.php folgende Zeilen hinzuzufügen:

  

Ich versuche, das CSS wie folgt anzuwenden:

 color: ; 

Diese letzte Methode wird jedoch nicht funktionieren, weil ein schwerwiegender Fehler das Include verursacht, add_action wird nicht als function erkannt. Der einzige Grund, warum ich das include ist, dass die functionen die benötigten Einstellungen abrufen css.php stattdessen verursacht es immer noch fatale Fehler, diesmal wegen der plugins_url() nicht erkannt wird.

Die drei functionen:

 function kvssm_get_directory( ) { $dir = plugins_url( __DIR__ ); $dirA = explode( 'public_html', $dir ); $dir = $dirA[ 1 ]; return $dir; } function kvssm_get_options_kvssm( ) { $options = get_option( 'kvssm_settings' ); return $options; } function kvssm_get_options_pvssm( ) { $options = get_option( 'pvssm_settings' ); return $options; } 

Weiß jemand, wie ich das CSS einrichten sollte, damit es richtig angezeigt wird? Einige functionen, die wichtig sein könnten:

  • Das Plugin fügt einen Shortcode hinzu
  • Der Shortcode gibt ein Ergebnis zurück, dem das CSS zugeordnet sein sollte
  • Die Einstellungsseite im do_shortcode() enthält eine Vorschau des do_shortcode() mit do_shortcode()

Solutions Collecting From Web of "Plugin CSS nicht in Enquêting"

Wenn Sie Inline-CSS hinzufügen möchten, verwenden Sie wp_add_inline_style() .

 < ?php /** * Plugin Name: WPSE 257470 * Description: WordPress StackExchange question 257470 * Plugin URI: https://wordpress.stackexchange.com/questions/257470/ * Author: Nathan Johnson * Licence: GPL2+ * Licence URI: https://www.gnu.org/licenses/gpl-2.0.en.html */ //* Don't access this file directly defined( 'ABSPATH' ) or die(); if( ! class_exists( 'wpse_257470' ) ): class wpse_257470 { public function plugins_loaded() { add_action( 'wp_enqueue_scripts', [ $this, 'wp_enqueue_scripts' ] ); } public function wp_enqueue_scripts() { //* It's necessary to have a 'base' CSS file that we can attach to wp_enqueue_style( 'wpse-257470', plugin_dir_url( __FILE__ ) . 'style.css' ); $color = '#257470'; $custom_css = ".custom_color { color: $color };"; wp_add_inline_style( 'wpse-257470', $custom_css ); } } add_action( 'plugins_loaded', [ new wpse_257470(), 'plugins_loaded' ] ); endif;