¿Cómo cargar scripts en páginas de agregar/editar posts personalizados?
Estoy tratando de cargar un script JS solamente cuando alguien está agregando o editando un tipo de post personalizado que creé llamado "recipes". Actualmente el script funciona bien cuando hago esto:
if (is_admin()){
wp_enqueue_script( 'my-script' );
}
Pero esto lo carga en todas las páginas de administración, supongo que necesito engancharlo a una función pero no tengo idea de cuál sería.
¡Gracias de antemano!

Puedes hacerlo así (coloca esto en tu archivo 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 );

@Sisir Usa el hook "admin_print_styles-{$page}"
. $page
puede contener el código completo de add_(sub)menu_page()
y usarse para apuntar a la página cuando uses @see wp_enqueue_style()
.

Una forma más actualizada de hacer esto: http://wordpress.stackexchange.com/a/34897/93169 (también resulta un poco más fácil gracias a los cambios de funcionalidad en WordPress...)

Hay un gancho para eso, y es extremadamente simple de usar. Consulta este tutorial para ver un ejemplo de implementación.
Editar
Justin trasladó sus tutoriales de DevPress a su sitio personal. Aquí está el enlace actualizado para el tutorial.

La página mencionada ya no está disponible. Aquí hay un espejo/archivo en la máquina Wayback.

¿Por qué no publicas la solución aquí y enlazas el tutorial como fuente?...

Rootstheme (que está basado en Twitter Bootstrap) tiene una forma realmente elegante de cargar scripts dependiendo del tipo de página/publicación, como se puede ver en la función roots_scripts que puedes ver aquí en github.
Básicamente, registra todos tus scripts y estilos, luego usa declaraciones condicionales que envuelven tus sentencias wp_enqueue_script o wp_enqueue_style.
