问题描述

有麻烦让我的自定义样式表在 WP-ADMIN 区域工作。 plugins_url('style.css', __FILE__) ); 是否必须在我的名为 css 的插件中创建文件夹,还是将.css 复制到 wp-admin/css 目录?

我试过,这似乎不适合我。

什么值应该替换为__FILE__

对不起,这些东西很新鲜。

/*ADDS STYLESHEET ON WP-ADMIN*/
add_action( 'admin_enqueue_scripts', 'safely_add_stylesheet_to_admin' );
    function safely_add_stylesheet_to_admin() {
        wp_enqueue_style( 'prefix-style', plugins_url('style.css', __FILE__) );
    }


/*ADDS MY CUSTOM NAVIGATION BAR ON WP-ADMIN*/
add_action('admin_head', 'custom_nav');
function custom_nav(){
    include('custom_nav.html');

}

最佳解决方案

根据 WordPress 法典 (here):

admin_enqueue_scripts is the first action hooked into the admin scripts actions.

为所有管理区域加载 CSS 或 JS 文件:

    <?php
      //from functions.php

      //First solution : one file
      add_action( 'admin_enqueue_scripts', 'load_admin_style' );
      function load_admin_style() {
        wp_register_style( 'admin_css', get_template_directory_uri() . '/admin-style.css', false, '1.0.0' );
//OR
        wp_enqueue_style( 'admin_css', get_template_directory_uri() . '/admin-style.css', false, '1.0.0' );
       }

      //Second solution : two or more files.
      add_action( 'admin_enqueue_scripts', 'load_admin_styles' );
      function load_admin_styles() {
        wp_enqueue_style( 'admin_css_foo', get_template_directory_uri() . '/admin-style-foo.css', false, '1.0.0' );
        wp_enqueue_style( 'admin_css_bar', get_template_directory_uri() . '/admin-style-bar.css', false, '1.0.0' );
      }  

    ?>

do i have to create folder in my plugins named css or do i just copy my .css to the wp-admin/css directory?

不,将您的 CSS 文件与其他文件一起放在您的主题目录中,然后指定路径:

get_template_directory_uri() . '/PATH_TO_YOUR_FILE'

因为我的文件名是 admin-style.css,我把它放在一个名为 css 的文件夹中,我的路径将如下所示:

get_template_directory_uri() . '/css/admin-style.css'

希望有帮助!

参考文献

注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。