The ‘print_footer_scripts’ filter allows you to control whether footer scripts are printed on your WordPress site or not.
Table of contents
Usage
To use this filter, add the following code to your theme’s functions.php file:
add_filter( 'print_footer_scripts', 'your_function_name' );
function your_function_name( $print ) {
// Your code here
return $print;
}
Parameters
$print(bool): Whether to print the footer scripts. Default istrue.
Examples
Disable Footer Scripts on a Specific Page
add_filter( 'print_footer_scripts', 'disable_scripts_on_page' );
function disable_scripts_on_page( $print ) {
if ( is_page( 'no-scripts' ) ) {
return false;
}
return $print;
}
This code disables the printing of footer scripts on a page with the slug ‘no-scripts’.
Disable Footer Scripts for Non-Logged-in Users
add_filter( 'print_footer_scripts', 'disable_scripts_for_guests' );
function disable_scripts_for_guests( $print ) {
if ( ! is_user_logged_in() ) {
return false;
}
return $print;
}
This code disables the printing of footer scripts for users who are not logged in.
Disable Footer Scripts on Mobile Devices
add_filter( 'print_footer_scripts', 'disable_scripts_on_mobile' );
function disable_scripts_on_mobile( $print ) {
if ( wp_is_mobile() ) {
return false;
}
return $print;
}
This code disables the printing of footer scripts on mobile devices.
Disable Footer Scripts for Posts in a Specific Category
add_filter( 'print_footer_scripts', 'disable_scripts_in_category' );
function disable_scripts_in_category( $print ) {
if ( is_single() && has_category( 'no-scripts' ) ) {
return false;
}
return $print;
}
This code disables the printing of footer scripts for posts in the ‘no-scripts’ category.
Disable Footer Scripts on Custom Post Type Archives
add_filter( 'print_footer_scripts', 'disable_scripts_on_cpt_archive' );
function disable_scripts_on_cpt_archive( $print ) {
if ( is_post_type_archive( 'your_custom_post_type' ) ) {
return false;
}
return $print;
}
This code disables the printing of footer scripts on the archive pages for the custom post type ‘your_custom_post_type’.