/*
* Enqueue/Dequeue Scripte und Styles
* ermittelbar durch Query Monitor
*/
add_action( 'wp_enqueue_scripts', 'enqueue_dequeue', 9999 );
function enqueue_dequeue()
{
$load_scripts = false;
if ( is_singular() ) {
$post = get_post();
//
// Contact-Form-7
//
$shortcodes = [
'contact-form-7',
];
$scripts = [
'contact-form-7',
'swv',
];
$styles = [
'contact-form-7',
];
dequeueUnused( $post, $shortcodes, $scripts, $styles );
//
// gridmaster
//
//
$shortcodes = [
'gridmaster',
];
$scripts = [
'gridmaster-frontend',
];
$styles = [
'gridmaster-frontend',
];
dequeueUnused( $post, $shortcodes, $scripts, $styles );
//
// dflip
//
//
$shortcodes = [
'dflip',
];
$scripts = [
'dflip-script',
];
$styles = [
'dflip-style',
];
dequeueUnused( $post, $shortcodes, $scripts, $styles );
//
// testimonial_slider
//
//
$shortcodes = [
'tss_testimonial_slider ',
'tss_item text',
];
$scripts = [
'owl-carousel',
];
$styles = [
'owl-carousel',
];
dequeueUnused( $post, $shortcodes, $scripts, $styles );
// Commonsbooking
//
$shortcodes = [
'commonsbooking_tag',
'cb_bookings',
'cb_locations',
'cb_items',
'cb_map',
'cb_items_table',
];
$scripts = [
'cb-scripts-vendor',
'cb-scripts-public',
'cb-scripts-daterangepicker',
'cb-scripts-moment',
'cb-scripts-select2',
];
$styles = [
'cb-styles-vendor',
'cb-styles-public',
'cb-styles-daterangepicker',
'cb-styles-select2',
];
dequeueUnused( $post, $shortcodes, $scripts, $styles );
//
// UsersWP
//
$shortcodes = [
'uwp_register',
'uwp_login',
'uwp_account',
'uwp_forgot',
'uwp_reset',
'uwp_change',
'uwp_profile',
'uwp_users',
];
$scripts = [
'userswp',
'select2',
'bootstrap-js-bundle',
];
$styles = [
'ayecode-ui',
'font-awesome',
];
dequeueUnused( $post, $shortcodes, $scripts, $styles );
}
}
function dequeueUnused( $post, $shortcodes, $scripts, $styles )
{
$load_scripts = false;
if ( is_singular() ) {
foreach ( $shortcodes as $shortcode ) {
if ( has_shortcode( $post->post_content, $shortcode ) ) {
$load_scripts = true;
}
}
}
if ( ! $load_scripts ) {
foreach ( $scripts as $script ) {
wp_dequeue_script( $script );
}
foreach ( $styles as $style ) {
wp_dequeue_style( $style );
}
}
}