我正在尝试将css和js文件排入特定管理页面。 目标页面是wp-admin / users.php?page = bp-profile-edit。为此,我正在尝试:
function my_enqueue ( $hook ) {
if ( 'users.php?page=bp-profile-edit' == $hook ) {
wp_enqueue_script( 'my_custom_script', plugin_dir_url( ) . 'myscript.js' );
wp_enqueue_style( 'my_custom_script', plugin_dir_url( ) . 'mystyle.css' );
}
}
add_action( 'admin_enqueue_scripts', 'my_enqueue' );
它仅适用于users.php,不适用于目标网页。
答案 0 :(得分:0)
您可以使用get_query_var或更简单地使用$ _GET参数。
所以:
function my_enqueue ( $hook ) {
if ( 'users.php' == $hook && isset( $_GET['page'] ) && $_GET['page'] == 'bp-profile-edit' ) {
wp_enqueue_script( 'my_custom_script', plugin_dir_url( ) . 'myscript.js' );
wp_enqueue_style( 'my_custom_script', plugin_dir_url( ) . 'mystyle.css' );
}
}
add_action( 'admin_enqueue_scripts', 'my_enqueue' );
答案 1 :(得分:0)
users.php?page=bp-profile-edit
不是正确的挂钩后缀。钩子后缀是一个已清理的请求字符串字符串。因此,正确的$hook
应为users_page_bp-profile-edit
。您可以找到有关$hook_suffix
here。
这应该有效:
function my_enqueue( $hook ) {
if ('users_page_bp-profile-edit' === $hook) {
wp_enqueue_script( 'my_custom_script', plugin_dir_url(__FILE__) . 'myscript.js' );
wp_enqueue_style( 'my_custom_script', plugin_dir_url(__FILE__) . 'mystyle.css' );
}
}
add_action( 'admin_enqueue_scripts', 'my_enqueue' );
此外,__FILE__
是plugin_dir_url()
中的必需参数。