I'm trying to load the scripts of kk Star Rating plugin , in footer and, only in single.
I edited the plugin, and the load in footer is ok, but this show in every page.
I want to load only in single post.
This is the original code :
add_action('wp_footer', array($kkStarRatings_obj, 'js'));
add_action('wp_footer', array($kkStarRatings_obj, 'css'));
add_action('wp_footer', array($kkStarRatings_obj, 'css_custom'));
add_action('admin_init', array($kkStarRatings_obj, 'admin_scripts'));
I try this:
if ( is_single() ) {
add_action('wp_footer', array($kkStarRatings_obj, 'js'));
add_action('wp_footer', array($kkStarRatings_obj, 'css'));
add_action('wp_footer', array($kkStarRatings_obj, 'css_custom'));
add_action('admin_init', array($kkStarRatings_obj, 'admin_scripts'));
}
and this:
add_action('wp_enqueue_scripts','copy_script');
function copy_script() {
if ( is_single() ) {
add_action('wp_footer', array($kkStarRatings_obj, 'js'));
add_action('wp_footer', array($kkStarRatings_obj, 'css'));
add_action('wp_footer', array($kkStarRatings_obj, 'css_custom'));
add_action('admin_init', array($kkStarRatings_obj, 'admin_scripts'));
}
}
but anything does work, how can I make this?
Use is_singular('post')
:
add_action('wp_enqueue_scripts', 'copy_script');
function copy_script() {
if ( is_singular('post') ) {
add_action('wp_footer', array($kkStarRatings_obj, 'js'));
add_action('wp_footer', array($kkStarRatings_obj, 'css'));
add_action('wp_footer', array($kkStarRatings_obj, 'css_custom'));
}
}
I removed the admin scripts because I don't think you need them in a single post.
PS: you should enqueue the scripts using wp_enqueue_script
and wp_enqueue_style
.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.