[Plugin: CMS Page Order] Enqueuing scripts globally in admin is causing some conflicts
-
Hi,
I was having some trouble with the admin backend and it turned out to be due to “CMS Page Order” enqueuing it’s scripts globally in admin through “admin_init”. I made the following changes to make scripts load only on CMS Page Order admin screen:
Added action for scripts inside function “cmspo_admin_menu()”
// Add scripts if( $page ) add_action( 'admin_print_scripts-' . $page, 'cmspo_print_scripts' ); add_action( 'admin_print_styles-' . $page, 'cmspo_print_styles' );
Moved enqueue scripts to their own function
function cmspo_print_scripts() { wp_enqueue_script( 'jquery-ui-sortable', '', array('jquery'), false ); wp_enqueue_script( 'jquery-ui-effects', '', array('jquery', 'jquery-ui'), false ); wp_enqueue_script( 'jquery-ui-nestedsortable', CMSPO_URL . 'scripts/jquery.ui.nestedSortable-1.3.4.min.js', array('jquery', 'jquery-ui-sortable') ); wp_enqueue_script( 'cms-page-order', CMSPO_URL . 'scripts/cms-page-order.js', array('jquery', 'jquery-ui-sortable', 'jquery-ui-nestedsortable'), CMSPO_VERSION ); }
Remove enqueue scripts from the main admin_init call
function cmspo_admin_init() { wp_register_style( 'cmspo_stylesheet', CMSPO_URL . 'styles/style.css', '', CMSPO_VERSION ); $strings = array( 'Expand_all' => __( 'Expand all', 'cms-page-order' ), 'Collapse_all' => __( 'Collapse all', 'cms-page-order' ) ); wp_localize_script( 'cms-page-order', 'cmspo', $strings ); global $nonce; $nonce = wp_create_nonce( 'cms-page-order' ); }
Could you make a similar change to your official code?
Thanks for a great plugin!
Regards,
Chris
Viewing 1 replies (of 1 total)
Viewing 1 replies (of 1 total)
- The topic ‘[Plugin: CMS Page Order] Enqueuing scripts globally in admin is causing some conflicts’ is closed to new replies.