Cum să încarci scripturi pe paginile de adăugare/editare ale postărilor personalizate?

14 iul. 2011, 17:28:15
Vizualizări: 31.5K
Voturi: 27

Încerc să încarc un script JavaScript doar când cineva adaugă sau editează un tip de postare personalizată pe care am creat-o numită "recipes". Momentan scriptul funcționează când fac așa:

if (is_admin()){
    wp_enqueue_script( 'my-script' );
}

Dar acest lucru îl încarcă pe fiecare pagină din admin, presupun că trebuie să îl conectez la o funcție dar nu știu care ar fi aceasta.

Mulțumesc anticipat!

1
Comentarii

Pentru utilizare viitoare, o întrebare similară a primit un răspuns care mi se pare mai simplu: http://wordpress.stackexchange.com/q/34894/93169

Frits Frits
29 apr. 2016 09:37:01
Toate răspunsurile la întrebare 3
3
57

Poți face asta în felul următor (adaugă în functions.php) :

function add_admin_scripts( $hook ) {

    global $post;

    if ( $hook == 'post-new.php' || $hook == 'post.php' ) {
        if ( 'recipes' === $post->post_type ) {     
            wp_enqueue_script(  'myscript', get_stylesheet_directory_uri().'/js/myscript.js' );
        }
    }
}
add_action( 'admin_enqueue_scripts', 'add_admin_scripts', 10, 1 );
14 iul. 2011 17:38:47
Comentarii

Pot încărca și stilurile folosind această funcție?

Sisir Sisir
14 nov. 2011 13:16:55

@Sisir Folosește hook-ul "admin_print_styles-{$page}". $page poate conține întreg codul add_(sub)menu_page() și poate fi folosit pentru a direcționa pagina atunci când utilizezi @see wp_enqueue_style().

kaiser kaiser
14 nov. 2011 20:04:08

O metodă mai actualizată de a face asta: http://wordpress.stackexchange.com/a/34897/93169 (care, de asemenea, este puțin mai ușoară datorită modificărilor de funcționalitate în WordPress...)

Frits Frits
29 apr. 2016 09:38:19
4
-3

Există un hook pentru asta, iar utilizarea lui este extrem de simplă. Vezi acest tutorial pentru o implementare exemplu.

Editare

Justin și-a mutat tutorialele de la DevPress pe site-ul său personal. Iată link-ul actualizat pentru tutorial.

14 iul. 2011 17:39:49
Comentarii

Pagina menționată nu mai există. Iată o copie/arhivă pe Wayback Machine.

Robert K Robert K
8 mar. 2012 23:42:31

Mulțumesc pentru asta. Am actualizat răspunsul meu cu un link actual.

Chip Bennett Chip Bennett
9 mar. 2012 00:04:26

De ce nu postezi soluția aici și linkezi tutorialul ca sursă...

Christine Cooper Christine Cooper
8 nov. 2014 18:33:14

Mai ales având în vedere că toate linkurile sunt acum invalide.

Carl Brubaker Carl Brubaker
8 iul. 2021 22:39:27
0
-4

Rootstheme (care se bazează pe Twitter Bootstrap) are o modalitate foarte elegantă de a încărca scripturi în funcție de tipul de pagină/post, așa cum se vede în funcția roots_scripts care poate fi vizualizată aici pe github.

În esență, înregistrezi toate scripturile și stilurile, apoi folosești condiții care să includă declarațiile tale wp_enqueue_script sau wp_enqueue_style.

31 mar. 2013 22:22:27