Agregar una hoja de estilo personalizada a wp-admin

21

Tengo problemas para que mi hoja de estilo personalizada funcione en el área WP-ADMIN. plugins_url('style.css', __FILE__) );¿tengo que crear una carpeta en mis complementos llamada css o simplemente copie mi .cssen el wp-admin/cssdirectorio?

Intenté ambos, no parece funcionar para mí.

y a qué valores se deben reemplazar __FILE__?

lo siento, soy un poco nuevo en estas cosas.

/*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');

}
usuario1933824
fuente

Respuestas:

33

Según el Codex de WordPress ( aquí ):

admin_enqueue_scripts es la primera acción enganchada en las acciones de scripts de administrador.

Ejemplo

Carga de archivos CSS o JS para todas las áreas de administración:

    <?php
      //from functions.php

      //First solution : one file
      //If you're using a child theme you could use:
      // get_stylesheet_directory_uri() instead of get_template_directory_uri()
      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.
      //If you're using a child theme you could use:
      // get_stylesheet_directory_uri() instead of get_template_directory_uri()
      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' );
      }  

    ?>

¿tengo que crear una carpeta en mis complementos llamada css o simplemente copie mi .css en el directorio wp-admin / css?

No, coloque su archivo CSS junto con el otro, en su directorio de temas, luego especifique la ruta con:

get_template_directory_uri() . '/PATH_TO_YOUR_FILE'

Por ejemplo, mi nombre de archivo es admin-style.cssy lo puse en una carpeta llamada cssmi ruta se verá así:

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

¡Espero eso ayude!

iEmanuele
fuente
¿Puedo preguntar si quiero importar 3 hojas de estilo más? ¿acabo de agregar (x3) de esta parte wp_register_style( 'admin_css', get_template_directory_uri() . '/admin-style.css', false, '1.0.0' );o una función separada?
user1933824
1
wp_register_styleinmediatamente seguido por lo relacionado wp_enqueue_style(como en 'Primera solución') es absolutamente innecesario y no hace nada más / diferente que simplemente usarlo wp_enqueue_stylecon todos los parámetros pasados wp_register_style.
gmazzap
1
Debido a que estoy usando un tema secundario, cambié la función de ruta aget_stylesheet_directory_uri()
Cazuma Nii Cavalcanti
0

Si desea realizar cambios en CSS para el panel de administración. pegue el siguiente código en functions.php del tema de su hijo

add_action('admin_head', 'my_custom_fonts'); // admin_head is a hook my_custom_fonts is a function we are adding it to the hook

function my_custom_fonts() {
  echo '<style>
    #posts-filter table.posts{
        table-layout:auto;   
    }
  </style>';
}
Mohammed Muzammil
fuente