Adăugarea unei foi de stil personalizate în wp-admin
Am probleme în a face să funcționeze foaia mea de stil personalizată în zona WP-ADMIN.
plugins_url('style.css', __FILE__)
trebuie să creez un folder în plugin-ul meu numit css sau doar copiez fișierul .css
în directorul wp-admin/css
?
Am încercat ambele variante și nu pare să funcționeze pentru mine.
și ce valori ar trebui să înlocuiască __FILE__
?
Scuze, sunt destul de nou în aceste lucruri.
/*ADAUGĂ FOAIA DE STIL ÎN 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__) );
}
/*ADAUGĂ BARA MEA DE NAVIGARE PERSONALIZATĂ ÎN WP-ADMIN*/
add_action('admin_head', 'custom_nav');
function custom_nav(){
include('custom_nav.html');
}
Conform WordPress Codex (aici):
admin_enqueue_scripts este prima acțiune conectată la acțiunile de scripturi din admin.
Exemplu
Încărcarea unui fișier CSS sau JS pentru întreaga zonă de administrare:
//din functions.php
//Prima soluție: un singur fișier
//Dacă folosești un child theme, poți utiliza:
// get_stylesheet_directory_uri() în loc de 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' );
//SAU
wp_enqueue_style( 'admin_css', get_template_directory_uri() . '/admin-style.css', false, '1.0.0' );
}
//A doua soluție: două sau mai multe fișiere.
//Dacă folosești un child theme, poți utiliza:
// get_stylesheet_directory_uri() în loc de 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' );
}
trebuie să creez un folder în plugin-urile mele numit css sau doar copiez fișierul meu .css în directorul wp-admin/css?
Nu, pune fișierul tău CSS împreună cu celelalte, în directorul temei tale, apoi specifică calea cu:
get_template_directory_uri() . '/CĂTRE_FIȘIERUL_TAU'
De exemplu, dacă fișierul meu se numește admin-style.css
și l-am pus într-un folder numit css
, calea mea va arăta astfel:
get_template_directory_uri() . '/css/admin-style.css'
Sper că te-am ajutat!

pot să întreb, dacă vreau să import încă 3 fișiere de stiluri. adaug pur și simplu (de 3 ori) această parte wp_register_style( 'admin_css', get_template_directory_uri() . '/admin-style.css', false, '1.0.0' );
sau o funcție separată?

wp_register_style
urmat imediat de wp_enqueue_style
corespunzător (ca în 'Prima soluție') este absolut inutil și nu face nimic mai mult/diferit decât să folosești direct wp_enqueue_style
cu toți parametrii pasați la wp_register_style
.

Dacă dorești să faci modificări CSS pentru panoul de administrare, inserează codul de mai jos în fișierul functions.php al temei copil.
add_action('admin_head', 'my_custom_fonts'); // admin_head este un hook, my_custom_fonts este o funcție pe care o adăugăm la hook
function my_custom_fonts() {
echo '<style>
#posts-filter table.posts{
table-layout:auto;
}
</style>';
}

Pentru cei care doresc să adauge un fișier CSS în zona de administrare dintr-un plugin personalizat (sau din folderul unui plugin):
if (is_admin()) {
Obține sursa fișierului dacă acesta se află într-un folder: (..myPluginFolder/myfolder/css/my.css)
$myCssFileSrc = plugins_url( '/myfolder/css/my.css', __FILE__ );
Obține sursa fișierului dacă acesta se află în folderul rădăcină al pluginului: (..myPluginFolder/my.css)
$myCssFileSrc = plugins_url( 'my.css', __FILE__ );
Încarcă (activează) fișierul de stiluri:
wp_enqueue_style( 'my-css', $myCssFileSrc );
} //endif;
Toate aceste manipulări se fac în fișierul principal al pluginului (myplugin.php)

Nu este aceeași abordare pe care a avut-o OP în întrebare, care nu a funcționat pentru ei?

Abordarea folosită în întrebare nu este corectă. Am prezentat un cod complet, testat personal și funcțional pentru conectarea unui fișier CSS la partea de administrare a site-ului. Exact așa este recomandat să faceți în documentația pentru crearea de plugin-uri: https://developer.wordpress.org/plugins/plugin-basics/determining-plugin-and-content-directories/

Pot confirma că codul furnizat de @tagformat.com este funcțional și reprezintă metoda recomandată de WordPress Codex, cu condiția să fie încapsulat într-o funcție și să conectați acea funcție la acțiunea de înregistrare dorită. În caz contrar, fișierul CSS (sau JS, dacă folosiți scripturi) va fi încărcat prea devreme.
