fig*_*r20 11 php wordpress wordpress-plugin
我已经写了一个WordPress插件,并希望它包含一些css样式表,我试图使用我通常在主题functions.php文件中使用的过程...
add_action('wp_enqueue_script','register_my_scripts');
function register_my_scripts(){
$dir = plugin_dir_path( __FILE__ );
wp_enqueue_style( $dir . 'css/style1.css');
wp_enqueue_style( $dir . 'css/style2.css');
}
Run Code Online (Sandbox Code Playgroud)
但这不是任何东西,我做错了什么?
Nat*_*son 23
你需要使用的钩子是wp_enqueue_scripts,你错过了's'.
当您需要的是目录URL时,您将获得目录路径.
wp_enqueue_style的第一个参数是句柄而不是URL.
function wpse_load_plugin_css() {
$plugin_url = plugin_dir_url( __FILE__ );
wp_enqueue_style( 'style1', $plugin_url . 'css/style1.css' );
wp_enqueue_style( 'style2', $plugin_url . 'css/style2.css' );
}
add_action( 'wp_enqueue_scripts', 'wpse_load_plugin_css' );
Run Code Online (Sandbox Code Playgroud)
您正在使用plugin_dir_path输出文件系统目录路径.相反,你需要URL.
wp_enqueue_style的第一个参数是$handlername.
wp_enqueue_style( 'style1', plugins_url( 'css/style1.css' , __FILE__ ) );
Run Code Online (Sandbox Code Playgroud)
完整代码:
add_action('wp_enqueue_scripts','register_my_scripts');
function register_my_scripts(){
wp_enqueue_style( 'style1', plugins_url( 'css/style1.css' , __FILE__ ) );
wp_enqueue_style( 'style2', plugins_url( 'css/style2.css' , __FILE__ ) );
}
Run Code Online (Sandbox Code Playgroud)