Aus irgendeinem Grund werden js und css Dateien nicht in meinem Plugin geladen. Folgendes habe ich: (scheinbar nicht verwandter Code ersetzt durch ‘…’)
class Location_Specific_Menu_Items { private static $instance = null; public static function get_instance() { return null == self::$instance ? self::$instance = new self : self::$instance; } function __construct() { if( is_admin() ) { ... add_action( 'admin_enqueue_scripts', array( &$this, 'xsmi_load_admin_script' ) ); } else { ... } function xsmi_load_admin_script() { wp_enqueue_style('chosen.min', 'https://cdnjs.cloudflare.com/ajax/libs/chosen/1.4.2/chosen.css'); wp_enqueue_script('jquery', 'http://code.jquery.com/jquery-1.8.3.js'); wp_enqueue_script('chosen.jquery.min', 'https://cdnjs.cloudflare.com/ajax/libs/chosen/1.4.2/chosen.jquery.js', array(), '1.0.0', true); } // I tried locally hosted files as well. ... function option( $fields, $item_id ) { ob_start(); ?> <label for="edit-menu-item-visibility-"> jQuery(document).ready(function($){ $(".chzn-select").chosen(); });
Austria Australia
...
Aber es sieht einfach so aus:
Wenn ich auskommentiere
jQuery(document).ready(function($){ $(".chzn-select").chosen(); });
es sieht aus wie das:
Irgendwelche Ideen, was ich falsch mache?
BEARBEITEN:
Ok, css und js werden jetzt vom CDN geladen. Die Breite des Feldes ist jedoch immer noch 0px!
Dies hat es behoben …
function xsmi_load_admin_script() { wp_register_style( 'chosencss', plugins_url( 'assets/chosen.css', __FILE__ ), true, '', 'all' ); wp_register_script( 'chosenjs', plugins_url( 'assets/chosen.jquery.js', __FILE__ ), array( 'jquery' ), '', true ); wp_enqueue_style( 'chosencss' ); wp_enqueue_script( 'chosenjs' );
}