Version Description
- Prevent plugin from triggering any of its settings when page builders (e.g. Divi, Elementor, Beaver Builder, Oxygen, etc.) are in edit mode for maximum compatibility
- Compatibility with SG Optimizer plugin
- Option to prevent plugin to trigger any of its settings & unload rules on request via "wpacu_no_load" query string
- Do not minify CSS/JS from /wp-content/uploads/ (e.g. files belonging to Elementor or Oxygen page builder plugins)
- Added more things to "System Info" including settings and browser information
- Apply relative URLs for combined CSS/JS script/stylesheet tags, if URL opened is via SSL and the WordPress site URL starts with http://
- Bug Fix: Clear CSS/JS cache was returning a blank white page
- Bug Fix: Minify JS - Exceptions weren't applied
Download this release
Release Info
Developer | gabelivan |
Plugin | ![]() |
Version | 1.3.2.6 |
Comparing to | |
See all releases |
Code changes from version 1.3.2.5 to 1.3.2.6
- assets/icons/icon-incognito.png +0 -0
- assets/style.min.css +1 -1
- classes/AdminBar.php +11 -11
- classes/BulkUnloads.php +14 -7
- classes/Main.php +65 -30
- classes/MetaBoxes.php +6 -1
- classes/Misc.php +119 -11
- classes/OptimiseAssets/MinifyCss.php +3 -4
- classes/OptimiseAssets/MinifyJs.php +3 -1
- classes/OptimiseAssets/OptimizeCss.php +4 -3
- classes/OptimiseAssets/OptimizeJs.php +13 -5
- classes/OwnAssets.php +1 -1
- classes/Plugin.php +11 -2
- classes/Settings.php +16 -7
- classes/Tools.php +62 -24
- classes/Update.php +23 -32
- early-triggers.php +25 -2
- readme.txt +11 -1
- templates/_admin-page-getting-started-areas/_benefits-fast-pages.php +14 -14
- templates/_admin-page-getting-started-areas/_how-it-works.php +16 -10
- templates/_admin-page-getting-started-areas/_lite-vs-pro.php +17 -17
- templates/_admin-page-getting-started-areas/_start-optimization.php +1 -1
- templates/_admin-page-settings-bulk-changes/_bulk-unloaded.php +18 -18
- templates/_admin-page-settings-plugin-areas/_combine-loaded-files.php +24 -24
- templates/_admin-page-settings-plugin-areas/_common-files-unload.php +11 -11
- templates/_admin-page-settings-plugin-areas/_minify-loaded-files.php +10 -10
- templates/_admin-page-settings-plugin-areas/_plugin-usage-settings.php +42 -39
- templates/_admin-page-settings-plugin-areas/_strip-the-fat.php +3 -3
- templates/_admin-page-settings-plugin-areas/_test-mode.php +14 -9
- templates/_top-area.php +26 -15
- templates/admin-page-assets-manager.php +2 -2
- templates/admin-page-child-pages-info.php +36 -33
- templates/admin-page-child-settings-homepage.php +1 -1
- templates/admin-page-get-help.php +6 -6
- templates/admin-page-getting-started.php +15 -6
- templates/admin-page-license.php +14 -3
- templates/admin-page-settings-plugin.php +1 -1
- templates/admin-page-tools.php +13 -13
- templates/meta-box-loaded-assets/_asset-script-single-row.php +17 -14
- templates/meta-box-loaded-assets/_asset-style-single-row.php +21 -16
- templates/meta-box-loaded-assets/view-by-location.php +10 -7
- templates/meta-box-loaded.php +9 -9
- templates/meta-box-side-page-options.php +5 -5
- templates/settings-frontend.php +14 -14
- wpacu.php +8 -4
assets/icons/icon-incognito.png
ADDED
Binary file
|
assets/style.min.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.go-pro-button,.wpacu-btns .btn,.wpacu-tabs nav,.wpacu-tabs nav ul li{text-align:center}#wpacu_meta_box_content .dashicons.dashicons-warning,.wpacu-tabs nav ul li span.license-status.inactive{color:#c00}#wpacu-pages-info-area{width:98%}#wpacu-logo-area{margin:15px 0;padding:0 10px}#wpacu-logo-area img{width:352px;height:79px}.wpacu-tabs{position:relative;overflow:hidden;margin:0 auto 20px;width:100%;font-weight:300;font-size:20px}.wpacu-tabs nav ul{position:relative;display:-ms-flexbox;display:-webkit-flex;display:-moz-flex;display:-ms-flex;display:flex;margin:0 auto;padding:0;max-width:1200px;list-style:none;-ms-box-orient:horizontal;-ms-box-pack:center;-webkit-flex-flow:row wrap;-moz-flex-flow:row wrap;-ms-flex-flow:row wrap;flex-flow:row wrap;-webkit-justify-content:center;-moz-justify-content:center;-ms-justify-content:center;justify-content:center}.wpacu-tabs nav ul li{position:relative;z-index:1;display:block;margin:0;-webkit-flex:1;-moz-flex:1;-ms-flex:1;flex:1}.wpacu-tabs nav ul li span.license-status{position:absolute;font-size:12px;left:0;right:50%;bottom:12px;-webkit-transform:translate(50%,50%);transform:translate(50%,50%)}.wpacu-tabs nav ul li span.license-status.active{color:green}.wpacu-tabs nav a{position:relative;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:2.5}.wpacu-tabs nav a span{vertical-align:middle;font-size:14px}.wpacu-tabs nav li.wpacu-tab-current a{color:#74777b}.wpacu-tabs nav a:focus{outline:0}.wpacu-tabs .dashicons{font-size:20px}.no-js .wpacu-content-wrap section{display:block;padding-bottom:2em;border-bottom:1px solid rgba(255,255,255,.6)}.no-flexbox nav ul{display:block}.no-flexbox nav ul li{min-width:15%;display:inline-block}@media screen and (max-width:58em){.wpacu-tabs nav a.icon span{display:none}.wpacu-tabs nav a:before{margin-right:0}}.wpacu-tabs-style-underline nav{background:#fff}.wpacu-tabs-style-underline nav a{color:#74777b;font-size:18px;text-transform:uppercase;text-decoration:none;padding:.25em 0 .5em;border-left:1px solid #e7ecea;-webkit-transition:color .2s;transition:color .2s}.wpacu-tabs-style-underline nav li:last-child a{border-right:1px solid #e7ecea}.wpacu-tabs-style-underline nav li a::after{position:absolute;bottom:0;left:0;width:100%;height:6px;background:#2CC185;content:'';-webkit-transition:-webkit-transform .3s;transition:transform .3s;-webkit-transform:translate3d(0,150%,0);transform:translate3d(0,150%,0)}.wpacu-tabs-style-underline nav li.wpacu-tab-current a::after{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.wpacu-tabs-style-underline nav a span{font-weight:700}.wpacu-tabs-style-topline{max-width:1200px;margin:20px auto 30px 0;width:100%;font-weight:300;text-decoration:none}.wpacu-tabs-style-topline nav li{border:1px solid rgba(40,44,42,.1)}.wpacu-tabs-style-topline nav li:not(:last-child){border-right:none}.wpacu-tabs-style-topline nav li.wpacu-tab-current{border-top-color:#008f9c;border-bottom:none}.wpacu-tabs-style-topline nav a{padding:20px 18px;background:rgba(40,44,42,.05);color:#74777b;line-height:1;-webkit-transition:color .2s;transition:color .2s;text-decoration:none}.wpacu-tabs-style-topline nav a:focus,.wpacu-tabs-style-topline nav a:hover{background:0 0;color:#008f9c}.wpacu-tabs-style-topline nav li.wpacu-tab-current a{background:0 0;box-shadow:inset 0 3px 0 #008f9c;color:#008f9c}.wpacu-tabs-style-topline nav li.wpacu-tab-current a span:not(.dashicons){font-weight:600}.wpacu-tabs-style-topline nav a span{text-transform:uppercase;font-weight:400}.wpacu-tab-nav-wrapper{border-bottom:none!important}.wpacu-tab-nav-wrapper .nav-tab.nav-tab-active{background:#fff;position:relative}.wpacu-tab-nav-wrapper .nav-tab.nav-tab-active:after{content:'';width:100%;bottom:-2px;left:0;position:absolute;border-bottom:2px solid #fff}.wpacu-script-attributes-area{margin:20px 0 0!important}.wpacu-script-attributes-area.wpacu-lite ul.wpacu-script-attributes-settings{padding:5px 7px!important}.wpacu-script-attributes-area.wpacu-lite ul.wpacu-script-attributes-settings.wpacu-first{margin:0 28px 0 0!important}.wpacu-script-attributes-area.wpacu-lite ul.wpacu-script-attributes-settings label{margin:0!important}.wpacu-script-attributes-area.wpacu-lite ul.wpacu-script-attributes-settings li{margin:0 16px 0 0!important}.wpacu-script-attributes-area.wpacu-lite ul.wpacu-script-attributes-settings li:first-child{margin:0 10px 0 0!important}.wpacu-script-attributes-area.wpacu-lite ul.wpacu-script-attributes-settings li:last-child{margin:0 2px 0 0!important}.wpacu-script-attributes-area .wpacu-script-attributes-settings{background:#fff!important;border:1px solid #eee!important;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;padding:5px 10px!important;list-style:none;display:inline-block;margin:0}.wpacu-script-attributes-area .wpacu-script-attributes-settings input[type=radio]{padding:0;margin:0 5px 0 0}.wpacu-script-attributes-area .wpacu-script-attributes-settings.wpacu-first{margin:0 34px 0 0!important}.wpacu-script-attributes-area .wpacu-script-attributes-settings li{float:left;margin:0 17px 0 0}.wpacu-script-attributes-area .wpacu-script-attributes-settings li:first-child{margin:0 10px 0 0!important}.wpacu-script-attributes-area .wpacu-script-attributes-settings li:last-child{margin:0}.wpacu-script-attributes-area .wpacu-script-attributes-settings:hover{background:#f2faf2}tr.wpacu_not_load td,tr.wpacu_not_load th{background:#FFE1E1!important}.dashicons-wpacu{width:17px;height:17px;margin:2px 0 0;font-size:16px;text-decoration:none}.wpacu_widefat .check-column.wpacu_check{padding:10px}body[class*=wpassetcleanup] #footer-left{border-left:2px solid green;padding-left:10px}#wpassetcleanup_asset_list small{width:auto;float:none;display:inline}#wpacu_meta_box_content{width:99%}#wpacu_meta_box_content .emoji{font-size:18px}#wpacu_meta_box_content h3{margin-left:0;padding-left:0}#wpacu_meta_box_content div.wpacu_note{padding:10px;background-color:#f5f5f5}#wpacu_meta_box_content .wpacu_verified{padding:10px;background-color:#f5f5f5;border-left:1px solid #ddd}#wpacu_meta_box_content .wpacu_verified span{color:#0073aa;font-weight:700}#wpacu_meta_box_content div.wpacu_warning{border:1px solid #c00}#wpacu_meta_box_content ul.wpacu_asset_options{margin:0;padding:0}#wpacu_meta_box_content ul.wpacu_asset_options li{list-style:none;display:inline-block}#wpacu_meta_box_content ul.wpacu_asset_options label{font-weight:400;margin-right:5px;margin-top:5px;margin-bottom:5px}.wpacu-updated-frontend{font-weight:400;background-color:#fff;border-left:4px solid #46b450;border-top:1px solid #46b450;border-right:1px solid #46b450;border-bottom:1px solid #46b450;padding:9px 14px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.wpacu-updated-frontend span.dashicons-yes{color:#46b450;font-size:26px}#wpacu_wrap_assets{color:#000!important;text-align:left!important;clear:both!important;width:90%!important;padding:20px!important;margin:30px 0 0 15px!important;border:1px solid #cdcdcd;z-index:10000!important;position:relative!important;background-color:#fff!important}#wpacu_wrap_assets div.wpacu_warning{border:1px solid #c00;padding:5px 10px}#wpacu_wrap_assets small{display:inline!important;margin:0!important;letter-spacing:normal!important}#wpacu_wrap_assets img,.wpacu_asset_row td label{display:inline-block!important}#wpacu_wrap_assets input[type=checkbox]{margin-right:4px!important}#wpacu_wrap_assets p{line-height:22px!important;margin:10px 0!important;text-align:left!important;font-weight:400!important}#wpacu_wrap_assets p:first-child,.wpacu_verified{margin:0 0 10px!important}#wpacu_wrap_assets h1{margin:0 0 20px!important;font-size:160%!important;text-align:left!important}#wpacu_wrap_assets h3{margin:20px 0;font-size:130%}.wpacu_asset_row td{padding:18px!important;position:relative;border-left:1px solid #cdcdcd;border-right:1px solid #cdcdcd;border-bottom:1px solid #cdcdcd}.wpacu_asset_row td.selected,.wpacu_asset_row td:hover{border:1px solid #cdcdcd;-moz-box-shadow:inset 0 0 12px #cdcdcd;-webkit-box-shadow:inset 0 0 12px #cdcdcd;box-shadow:inset 0 0 12px #cdcdcd}.wpacu_asset_row td:first-child{border-top:1px solid #cdcdcd}.wpacu_asset_row td p{padding:0!important;margin-bottom:10px!important;word-wrap:break-word!important;-ms-word-break:break-all;word-break:break-word}.wpacu_asset_row td label{margin:0!important;cursor:pointer!important;font-size:100%!important;font-weight:400!important}.wpacu_asset_row td label span:not(.dashicons){font-size:100%!important}.wpacu_asset_row td.wpacu_check{width:50px!important}.asset-table-extra-info td{padding:5px!important}body.wp-admin .wpacu_asset_row td.wpacu_check{width:25px!important}.wpacu_asset_row .dashicons-warning{color:red!important}label.wpacu_add_global{cursor:pointer!important}label.wpacu_global_checked{font-weight:700;color:#d54e21}label.wpacu_global_unload_exception{font-weight:700!important}label.wpacu_bulk_unload_active{color:#d54e21}tr.wpacu_global_rule_row.selected{background:#e7e7e7}.nav-tab-wrapper{border-bottom:1px solid #ccc;width:95%}ul.wpacu_asset_options{margin:0 10px 0 0;padding:0}ul.wpacu_asset_options li{margin:0 20px 0 0;list-style:none;display:inline-block;line-height:normal}ul.wpacu_asset_options li.remove_rule label{font-weight:700}ul.wpacu_asset_options label{margin-right:20px;font-weight:400}ul.wpacu_asset_options label input{margin-right:4px}.wpacu_list_table,.wpacu_list_table div,.wpacu_list_table li,.wpacu_list_table p{font-weight:400}.wpacu_widefat{width:99%}.wpacu_striped>tbody>:nth-child(even),ul.wpacu_striped>:nth-child(even){background-color:#fff!important}.wpacu_striped>tbody>:nth-child(odd),ul.wpacu_striped>:nth-child(odd){background-color:#f9f9f9!important}.wpacu_update_btn{-moz-box-shadow:inset 0 1px 0 0 #54a3f7!important;-webkit-box-shadow:inset 0 1px 0 0 #54a3f7!important;box-shadow:inset 0 1px 0 0 #54a3f7!important;background:-webkit-gradient(linear,left top,left bottom,color-stop(.05,#007dc1),color-stop(1,#0061a7))!important;background:-moz-linear-gradient(top,#007dc1 5%,#0061a7 100%)!important;background:-webkit-linear-gradient(top,#007dc1 5%,#0061a7 100%)!important;background:-o-linear-gradient(top,#007dc1 5%,#0061a7 100%)!important;background:-ms-linear-gradient(top,#007dc1 5%,#0061a7 100%)!important;background:linear-gradient(to bottom,#007dc1 5%,#0061a7 100%)!important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#007dc1', endColorstr='#0061a7', GradientType=0)!important;background-color:#007dc1!important;-moz-border-radius:3px!important;-webkit-border-radius:3px!important;border-radius:3px!important;border:1px solid #124d77!important;display:inline-block!important;cursor:pointer!important;color:#fff!important;font-size:15px!important;padding:10px 24px!important;text-decoration:none!important;text-shadow:0 1px 0 #154682!important;height:auto!important;line-height:normal!important}.wpacu-btns .btn:focus,.wpacu-btns .btn:hover,.wpacu-btns a{text-decoration:none}.wpacu_update_btn:hover{background:-webkit-gradient(linear,left top,left bottom,color-stop(.05,#0061a7),color-stop(1,#007dc1))!important;background:-moz-linear-gradient(top,#0061a7 5%,#007dc1 100%)!important;background:-webkit-linear-gradient(top,#0061a7 5%,#007dc1 100%)!important;background:-o-linear-gradient(top,#0061a7 5%,#007dc1 100%)!important;background:-ms-linear-gradient(top,#0061a7 5%,#007dc1 100%)!important;background:linear-gradient(to bottom,#0061a7 5%,#007dc1 100%)!important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#0061a7', endColorstr='#007dc1', GradientType=0)!important;background-color:#0061a7!important}.wpacu_update_btn:active{position:relative!important;top:1px!important}.wpacu-btns .btn{display:inline-block;font-weight:400;line-height:1.25;white-space:nowrap;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border:1px solid transparent;padding:.5rem 1rem;font-size:1rem;-webkit-border-radius:.25rem;-moz-border-radius:.25rem;border-radius:.25rem;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.wpacu-btns .btn.focus,.wpacu-btns .btn:focus{outline:0;-webkit-box-shadow:0 0 0 2px rgba(2,117,216,.25);box-shadow:0 0 0 2px rgba(2,117,216,.25)}.wpacu-btns .btn.disabled,.wpacu-btns .btn:disabled{cursor:not-allowed;opacity:.65}.wpacu-btns .btn.active,.wpacu-btns .btn:active{background-image:none}.wpacu-btns a.btn.disabled,.wpacu-btns fieldset[disabled] a.btn{pointer-events:none}.wpacu-btns .btn-primary{color:#fff;background-color:#0275d8;border-color:#0275d8}.wpacu-btns .btn-primary:hover{color:#fff;background-color:#025aa5;border-color:#01549b}.wpacu-btns .btn-primary.focus,.wpacu-btns .btn-primary:focus{-webkit-box-shadow:0 0 0 2px rgba(2,117,216,.5);box-shadow:0 0 0 2px rgba(2,117,216,.5)}.wpacu-btns .btn-primary.disabled,.wpacu-btns .btn-primary:disabled{background-color:#0275d8;border-color:#0275d8}.wpacu-btns .btn-primary.active,.wpacu-btns .btn-primary:active,.wpacu-btns .show>.btn-primary.dropdown-toggle{color:#fff;background-color:#025aa5;background-image:none;border-color:#01549b}.wpacu-btns .btn-secondary{color:#292b2c;background-color:#fff;border-color:#ccc}.wpacu-btns .btn-secondary:hover{color:#292b2c;background-color:#e6e6e6;border-color:#adadad}.wpacu-btns .btn-secondary.focus,.wpacu-btns .btn-secondary:focus{-webkit-box-shadow:0 0 0 2px rgba(204,204,204,.5);box-shadow:0 0 0 2px rgba(204,204,204,.5)}.wpacu-btns .btn-secondary.disabled,.wpacu-btns .btn-secondary:disabled{background-color:#fff;border-color:#ccc}.wpacu-btns .btn-secondary.active,.wpacu-btns .btn-secondary:active,.wpacu-btns .show>.btn-secondary.dropdown-toggle{color:#292b2c;background-color:#e6e6e6;background-image:none;border-color:#adadad}.wpacu-btns .btn-info{color:#fff;background-color:#5bc0de;border-color:#5bc0de}.wpacu-btns .btn-info:hover{color:#fff;background-color:#31b0d5;border-color:#2aabd2}.wpacu-btns .btn-info.focus,.wpacu-btns .btn-info:focus{-webkit-box-shadow:0 0 0 2px rgba(91,192,222,.5);box-shadow:0 0 0 2px rgba(91,192,222,.5)}.wpacu-btns .btn-info.disabled,.wpacu-btns .btn-info:disabled{background-color:#5bc0de;border-color:#5bc0de}.wpacu-btns .btn-info.active,.wpacu-btns .btn-info:active,.wpacu-btns .show>.btn-info.dropdown-toggle{color:#fff;background-color:#31b0d5;background-image:none;border-color:#2aabd2}.wpacu-btns .btn-success{color:#fff;background-color:#5cb85c;border-color:#5cb85c}.wpacu-btns .btn-success:hover{color:#fff;background-color:#449d44;border-color:#419641}.wpacu-btns .btn-success.focus,.wpacu-btns .btn-success:focus{-webkit-box-shadow:0 0 0 2px rgba(92,184,92,.5);box-shadow:0 0 0 2px rgba(92,184,92,.5)}.wpacu-btns .btn-success.disabled,.wpacu-btns .btn-success:disabled{background-color:#5cb85c;border-color:#5cb85c}.wpacu-btns .btn-success.active,.wpacu-btns .btn-success:active,.wpacu-btns .show>.btn-success.dropdown-toggle{color:#fff;background-color:#449d44;background-image:none;border-color:#419641}.wpacu-btns .btn-warning{color:#fff;background-color:#f0ad4e;border-color:#f0ad4e}.wpacu-btns .btn-warning:hover{color:#fff;background-color:#ec971f;border-color:#eb9316}.wpacu-btns .btn-warning.focus,.wpacu-btns .btn-warning:focus{-webkit-box-shadow:0 0 0 2px rgba(240,173,78,.5);box-shadow:0 0 0 2px rgba(240,173,78,.5)}.wpacu-btns .btn-warning.disabled,.wpacu-btns .btn-warning:disabled{background-color:#f0ad4e;border-color:#f0ad4e}.wpacu-btns .btn-warning.active,.wpacu-btns .btn-warning:active,.wpacu-btns .show>.btn-warning.dropdown-toggle{color:#fff;background-color:#ec971f;background-image:none;border-color:#eb9316}.wpacu-btns .btn-danger{color:#fff;background-color:#d9534f;border-color:#d9534f}.wpacu-btns .btn-danger:hover{color:#fff;background-color:#c9302c;border-color:#c12e2a}.wpacu-btns .btn-danger.focus,.wpacu-btns .btn-danger:focus{-webkit-box-shadow:0 0 0 2px rgba(217,83,79,.5);box-shadow:0 0 0 2px rgba(217,83,79,.5)}.wpacu-btns .btn-danger.disabled,.wpacu-btns .btn-danger:disabled{background-color:#d9534f;border-color:#d9534f}.wpacu-btns .btn-danger.active,.wpacu-btns .btn-danger:active,.wpacu-btns .show>.btn-danger.dropdown-toggle{color:#fff;background-color:#c9302c;background-image:none;border-color:#c12e2a}.wpacu-btns .btn-outline-primary{color:#0275d8;background-image:none;background-color:transparent;border-color:#0275d8}.wpacu-btns .btn-outline-primary:hover{color:#fff;background-color:#0275d8;border-color:#0275d8}.wpacu-btns .btn-outline-primary.focus,.wpacu-btns .btn-outline-primary:focus{-webkit-box-shadow:0 0 0 2px rgba(2,117,216,.5);box-shadow:0 0 0 2px rgba(2,117,216,.5)}.wpacu-btns .btn-outline-primary.disabled,.wpacu-btns .btn-outline-primary:disabled{color:#0275d8;background-color:transparent}.wpacu-btns .btn-outline-primary.active,.wpacu-btns .btn-outline-primary:active,.wpacu-btns .show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#0275d8;border-color:#0275d8}.wpacu-btns .btn-outline-secondary{color:#ccc;background-image:none;background-color:transparent;border-color:#ccc}.wpacu-btns .btn-outline-secondary:hover{color:#fff;background-color:#ccc;border-color:#ccc}.wpacu-btns .btn-outline-secondary.focus,.wpacu-btns .btn-outline-secondary:focus{-webkit-box-shadow:0 0 0 2px rgba(204,204,204,.5);box-shadow:0 0 0 2px rgba(204,204,204,.5)}.wpacu-btns .btn-outline-secondary.disabled,.wpacu-btns .btn-outline-secondary:disabled{color:#ccc;background-color:transparent}.wpacu-btns .btn-outline-secondary.active,.wpacu-btns .btn-outline-secondary:active,.wpacu-btns .show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#ccc;border-color:#ccc}.wpacu-btns .btn-outline-info{color:#5bc0de;background-image:none;background-color:transparent;border-color:#5bc0de}.wpacu-btns .btn-outline-info:hover{color:#fff;background-color:#5bc0de;border-color:#5bc0de}.wpacu-btns .btn-outline-info.focus,.wpacu-btns .btn-outline-info:focus{-webkit-box-shadow:0 0 0 2px rgba(91,192,222,.5);box-shadow:0 0 0 2px rgba(91,192,222,.5)}.wpacu-btns .btn-outline-info.disabled,.wpacu-btns .btn-outline-info:disabled{color:#5bc0de;background-color:transparent}.wpacu-btns .btn-outline-info.active,.wpacu-btns .btn-outline-info:active,.wpacu-btns .show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#5bc0de;border-color:#5bc0de}.wpacu-btns .btn-outline-success{color:#5cb85c;background-image:none;background-color:transparent;border-color:#5cb85c}.wpacu-btns .btn-outline-success:hover{color:#fff;background-color:#5cb85c;border-color:#5cb85c}.wpacu-btns .btn-outline-success.focus,.wpacu-btns .btn-outline-success:focus{-webkit-box-shadow:0 0 0 2px rgba(92,184,92,.5);box-shadow:0 0 0 2px rgba(92,184,92,.5)}.wpacu-btns .btn-outline-success.disabled,.wpacu-btns .btn-outline-success:disabled{color:#5cb85c;background-color:transparent}.wpacu-btns .btn-outline-success.active,.wpacu-btns .btn-outline-success:active,.wpacu-btns .show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#5cb85c;border-color:#5cb85c}.wpacu-btns .btn-outline-warning{color:#f0ad4e;background-image:none;background-color:transparent;border-color:#f0ad4e}.wpacu-btns .btn-outline-warning:hover{color:#fff;background-color:#f0ad4e;border-color:#f0ad4e}.wpacu-btns .btn-outline-warning.focus,.wpacu-btns .btn-outline-warning:focus{-webkit-box-shadow:0 0 0 2px rgba(240,173,78,.5);box-shadow:0 0 0 2px rgba(240,173,78,.5)}.wpacu-btns .btn-outline-warning.disabled,.wpacu-btns .btn-outline-warning:disabled{color:#f0ad4e;background-color:transparent}.wpacu-btns .btn-outline-warning.active,.wpacu-btns .btn-outline-warning:active,.wpacu-btns .show>.btn-outline-warning.dropdown-toggle{color:#fff;background-color:#f0ad4e;border-color:#f0ad4e}.wpacu-btns .btn-outline-danger{color:#d9534f;background-image:none;background-color:transparent;border-color:#d9534f}.wpacu-btns .btn-outline-danger:hover{color:#fff;background-color:#d9534f;border-color:#d9534f}.wpacu-btns .btn-outline-danger.focus,.wpacu-btns .btn-outline-danger:focus{-webkit-box-shadow:0 0 0 2px rgba(217,83,79,.5);box-shadow:0 0 0 2px rgba(217,83,79,.5)}.wpacu-btns .btn-outline-danger.disabled,.wpacu-btns .btn-outline-danger:disabled{color:#d9534f;background-color:transparent}.wpacu-btns .btn-outline-danger.active,.wpacu-btns .btn-outline-danger:active,.wpacu-btns .show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#d9534f;border-color:#d9534f}.wpacu-btns .btn-link{font-weight:400;color:#0275d8;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.wpacu-btns .btn-link,.wpacu-btns .btn-link.active,.wpacu-btns .btn-link:active,.wpacu-btns .btn-link:disabled{background-color:transparent}.wpacu-btns .btn-link,.wpacu-btns .btn-link:active,.wpacu-btns .btn-link:focus,.wpacu-btns .btn-link:hover{border-color:transparent}.wpacu-btns .btn-link:focus,.wpacu-btns .btn-link:hover{color:#014c8c;text-decoration:underline;background-color:transparent}.go-pro-button,.wpacu-btns .btn-link:disabled:focus,.wpacu-btns .btn-link:disabled:hover{text-decoration:none}.wpacu-btns .btn-link:disabled{color:#636c72}.wpacu-btns .btn-group-lg>.btn,.wpacu-btns .btn-lg{padding:.75rem 1.5rem;font-size:1.25rem;-webkit-border-radius:.3rem;-moz-border-radius:.3rem;border-radius:.3rem}.wpacu-btns .btn-group-sm>.btn,.wpacu-btns .btn-sm{padding:.25rem .5rem;font-size:.875rem;-webkit-border-radius:.2rem;-moz-border-radius:.2rem;border-radius:.2rem}.wpacu-btns .btn-block{display:block;width:100%}.wpacu-btns .btn-block+.btn-block{margin-top:.5rem}.wpacu-btns input[type=submit].btn-block,.wpacu-btns input[type=reset].btn-block,.wpacu-btns input[type=button].btn-block{width:100%}.wpacu-btns .fade{opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.go-pro-button{background-color:#4CAF50;border:2px solid #4CAF50;color:#fff;padding:12px 18px;display:inline-block;font-size:16px;margin:4px 2px;cursor:pointer;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-webkit-transition-duration:.4s;transition-duration:.4s}.go-pro-button:hover{background-color:#fff;color:#000;border:2px solid #4CAF50;text-decoration:none}.go-pro-link-no-style,.wordpress-core-file{display:inline-block;color:inherit;text-decoration:none}.wpacu-restore-pos-btn{font-size:14px!important;line-height:normal!important;height:42px!important;padding:0 18px!important;margin-top:10px!important}body.wp-admin .wpacu_asset_row .go-pro-link-no-style .wpacu-tooltip{padding:8px 2px}body.wp-admin .go-pro-link-no-style .wpacu-tooltip{text-shadow:none;font-weight:400;font-size:12px;line-height:16px;padding:8px 11px}.go-pro-link-no-style .wpacu-tooltip,.wordpress-core-file .wpacu-tooltip{font-size:14px;line-height:18px;visibility:hidden;text-align:center;z-index:1}.go-pro-link-no-style{position:relative}.go-pro-link-no-style:not(.nav-tab){font-style:italic}.go-pro-link-no-style.no-transition .wpacu-tooltip{-webkit-transition:0s all ease;transition:0s all ease;-webkit-transition-delay:0s;transition-delay:0s}.go-pro-link-no-style .wpacu-tooltip{position:absolute;width:160px;background-color:#00a7a7;color:#fff;padding:8px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;bottom:100%;bottom:calc(100% + 15px);left:50%;margin-left:-65px;-webkit-transition:.1s all ease;transition:.1s all ease;-webkit-transition-delay:0s;transition-delay:0s}.go-pro-link-no-style .wpacu-tooltip:after{content:"";position:absolute;border-width:10px;border-style:solid;top:100%;left:50%;left:calc(50% - 10px);border-color:#00a7a7 transparent transparent}.go-pro-link-no-style .wpacu-tooltip.wpacu-on-pages-btn{cursor:pointer;margin-left:-77px;width:130px}.go-pro-link-no-style .wpacu-tooltip.wpacu-larger{width:240px}.go-pro-link-no-style:hover .wpacu-tooltip{visibility:visible}.wpacu_list_table tr:first-child .wordpress-core-file .wpacu-tooltip{bottom:-40px;left:120px;margin-left:-86px}.wpacu_list_table tr:first-child .wordpress-core-file .wpacu-tooltip:after{top:41px;left:-20px;border-color:transparent #c00 transparent transparent}.wordpress-core-file{position:relative;font-style:normal}.wordpress-core-file .wpacu-tooltip{position:absolute;width:160px;background-color:#c00;color:#fff;padding:6px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;bottom:100%;bottom:calc(100% + 15px);left:50%;margin-left:-86px;-webkit-transition:.1s all ease;transition:.1s all ease;-webkit-transition-delay:0s;transition-delay:0s}.wordpress-core-file .wpacu-tooltip:after{content:"";position:absolute;border-width:10px;border-style:solid;top:100%;left:50%;left:calc(50% - 10px);border-color:#c00 transparent transparent}.wordpress-core-file:hover .wpacu-tooltip{visibility:visible}.ajax-direct-call-error-area{background:#fff;padding:10px;border:1px solid #c00;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px}.ajax-direct-call-error-area td{padding:6px}.ajax-direct-call-error-area .note{margin-top:0;padding-top:0}.ajax-direct-call-error-area .error-code{color:#c00;font-weight:700}.ajax-wp-remote-post-call-error-area{background:#fff;padding:20px}.ajax-wp-remote-post-call-error-area .table-data{background:0 0;border:1px solid #c66;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.ajax-wp-remote-post-call-error-area .table-data td{padding:10px}.wrap-upgrade-info{background:#fff;padding:0 15px;border:1px solid #cdcdcd;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.wpacu-notice{margin:20px 20px 0 0!important}.wpacu-notice p{font-weight:600!important;font-style:italic}.wpacu-notice .dashicons{font-weight:inherit!important;color:#46b450!important;margin-right:4px;vertical-align:text-bottom;font-size:27px}.wpacu-notice-info{padding:12px 12px 12px 16px;background:#fff;border-left:4px solid #008f9c}.wpacu-notice-info p{margin-top:8px}.wpacu-notice-info p:first-child{margin-top:0}.wpacu-notice-info p:last-child{margin-bottom:0}.wpacu-warning{font-size:15px;padding:10px;background:#fffcec;border:1px solid #fdd5c9;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;margin:0 0 5px;width:100%}.pro-page-unlock-notice{-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;padding:10px;background:#f2faf2;border:1px solid #c0e8c0;width:auto;display:block}.wpacu-license-area .notice,.wpacu-settings-area .notice{margin-left:0;padding:10px!important;width:97%;box-sizing:border-box;font-weight:600;font-style:italic}.wpacu-license-area .notice .dashicons,.wpacu-settings-area .notice .dashicons{color:green}#wpacu-dom-get-type-selections,.wpacu-radio-selections{float:none;clear:both;width:auto;display:inline-block;margin-bottom:0;margin-top:0}#wpacu-dom-get-type-selections.wpacu-vertical,.wpacu-radio-selections.wpacu-vertical{display:block;margin-top:15px;margin-bottom:18px}#wpacu-dom-get-type-selections.wpacu-vertical li,.wpacu-radio-selections.wpacu-vertical li{float:none;margin-bottom:12px}#wpacu-dom-get-type-selections.wpacu-vertical li:last-child,.wpacu-radio-selections.wpacu-vertical li:last-child{margin-bottom:0}#wpacu-dom-get-type-selections li,.wpacu-radio-selections li{margin-right:30px;float:left;margin-bottom:0}#wpacu-dom-get-type-selections li:first-child,.wpacu-radio-selections li:first-child{margin-right:15px}#wpacu-dom-get-type-selections li:last-child,.wpacu-radio-selections li:last-child{margin-right:0}.wpacu_combine_loaded_js_level_area{display:none;background:0 0;border-left:2px solid #008f9c;padding-top:8px;padding-bottom:8px;padding-right:10px;padding-left:10px;margin:20px 0 15px}.wpacu_combine_loaded_js_level_area.wpacu_active{display:block}#wpacu-dom-get-type-infos{margin-bottom:0}#wpacu-dom-get-type-infos li{margin-bottom:0;line-height:20px}.wpacu-wrap small{width:auto;float:none;display:inline}.wpacu-wrap.wpacu-settings-show-all .wpacu-settings-tab-content{display:block;width:100%}.wpacu-wrap.wpacu-settings-show-all .wpacu-settings-area-title{color:#004567;padding:16px 15px;background:#f8f8f8;border-left:5px solid #004567b0;border-top:1px solid #e7e7e7;border-right:1px solid #e7e7e7;border-bottom:1px solid #e7e7e7;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;font-size:1.45em;font-weight:500}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch .wpacu_slider.wpacu_round,.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch .wpacu_slider.wpacu_round{border-radius:29px}.wpacu-wrap.wpacu-settings-show-all #wpacu-update-button-area{margin:0}.wpacu-wrap.wpacu-settings-show-all #wpacu-update-button-area .button{padding:11px 28px;height:auto;font-size:18px}.wpacu-wrap.wpacu-settings-show-all #wpacu-updating-settings{margin-left:224px;top:25px}.wpacu-wrap.wpacu-switch-standard .asset-cleanup-pro_page_wpassetcleanup_settings .wpacu_switch,.wpacu-wrap.wpacu-switch-standard .asset-cleanup_page_wpassetcleanup_settings .wpacu_switch{width:auto;height:auto}.wpacu-wrap.wpacu-switch-standard .asset-cleanup-pro_page_wpassetcleanup_settings .wpacu_switch input,.wpacu-wrap.wpacu-switch-standard .asset-cleanup_page_wpassetcleanup_settings .wpacu_switch input{display:block}.wpacu-wrap.wpacu-switch-standard .asset-cleanup-pro_page_wpassetcleanup_settings .wpacu_switch input[type=checkbox],.wpacu-wrap.wpacu-switch-standard .asset-cleanup_page_wpassetcleanup_settings .wpacu_switch input[type=checkbox]{margin:0 0 3px}.wpacu-wrap.wpacu-switch-standard .asset-cleanup-pro_page_wpassetcleanup_settings .wpacu_switch .wpacu_slider,.wpacu-wrap.wpacu-switch-standard .asset-cleanup_page_wpassetcleanup_settings .wpacu_switch .wpacu_slider{display:none}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch{position:relative;display:inline-block;width:52px;height:29px}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch input{display:none}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch:not(.wpacu_switch_standard) .wpacu_slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;-webkit-transition:.2s;transition:.2s}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch:not(.wpacu_switch_standard) .wpacu_slider:before{position:absolute;content:'';height:22px;width:22px;left:4px;bottom:4px;background-color:#fff;-webkit-transition:.2s;transition:.2s}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch input:checked+.wpacu_slider{background-color:#52af00}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch input:focus+.wpacu_slider{box-shadow:0 0 1px #52af00}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch input:checked+.wpacu_slider:before{-webkit-transform:translateX(22px);-ms-transform:translateX(22px);transform:translateX(22px)}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch .wpacu_slider.wpacu_round:before{border-radius:50%}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch.wpacu_locked_for_pro{opacity:.3}.asset-cleanup-pro_page_wpassetcleanup_settings .setting_title p.wpacu_subtitle,.asset-cleanup_page_wpassetcleanup_settings .setting_title p.wpacu_subtitle{margin-top:4px;line-height:1.4}.asset-cleanup-pro_page_wpassetcleanup_settings .setting_title p.wpacu_subtitle em,.asset-cleanup_page_wpassetcleanup_settings .setting_title p.wpacu_subtitle em{font-weight:200}.asset-cleanup-pro_page_wpassetcleanup_settings .setting_title p.wpacu_read_more,.asset-cleanup_page_wpassetcleanup_settings .setting_title p.wpacu_read_more{margin-top:-10px;font-style:italic;font-size:12px}.asset-cleanup-pro_page_wpassetcleanup_settings .assets_list_inline_code_status_choices,.asset-cleanup-pro_page_wpassetcleanup_settings .assets_list_layout_areas_status_choices,.asset-cleanup-pro_page_wpassetcleanup_settings .input_style_choices,.asset-cleanup_page_wpassetcleanup_settings .assets_list_inline_code_status_choices,.asset-cleanup_page_wpassetcleanup_settings .assets_list_layout_areas_status_choices,.asset-cleanup_page_wpassetcleanup_settings .input_style_choices{list-style:none;margin:0}.asset-cleanup-pro_page_wpassetcleanup_settings .assets_list_inline_code_status_choices li,.asset-cleanup-pro_page_wpassetcleanup_settings .assets_list_layout_areas_status_choices li,.asset-cleanup-pro_page_wpassetcleanup_settings .input_style_choices li,.asset-cleanup_page_wpassetcleanup_settings .assets_list_inline_code_status_choices li,.asset-cleanup_page_wpassetcleanup_settings .assets_list_layout_areas_status_choices li,.asset-cleanup_page_wpassetcleanup_settings .input_style_choices li{float:left;margin-right:30px}.asset-cleanup-pro_page_wpassetcleanup_settings .assets_list_inline_code_status_choices li:last-child,.asset-cleanup-pro_page_wpassetcleanup_settings .assets_list_layout_areas_status_choices li:last-child,.asset-cleanup-pro_page_wpassetcleanup_settings .input_style_choices li:last-child,.asset-cleanup_page_wpassetcleanup_settings .assets_list_inline_code_status_choices li:last-child,.asset-cleanup_page_wpassetcleanup_settings .assets_list_layout_areas_status_choices li:last-child,.asset-cleanup_page_wpassetcleanup_settings .input_style_choices li:last-child{margin-right:0}#wpacu-assets-list-by-location-selected{background:0 0;border:1px solid #e7e7e7;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;padding:8px;clear:both}.notice.notice-success+.wpacu-wrap.wpacu-settings-area{margin-top:20px}.wpacu-form-table th{vertical-align:top;text-align:left;padding:5px 20px 20px 0;width:200px;line-height:1.3;font-weight:600}.wpacu-form-table th label{color:#23282d;font-weight:600;font-size:14px;text-shadow:none;vertical-align:middle;cursor:pointer}.wpacu-form-table td{padding-bottom:25px}.wpacu-form-table td:last-child p:last-child{margin:0}.wpacu-form-table label input[type=checkbox]{height:19px;width:20px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.wpacu-form-table label input[type=checkbox]:checked,.wpacu-form-table label input[type=checkbox]:hover{border:1px solid green}.wpacu-form-table label input[type=checkbox]:checked:before{color:#52af00;font:400 24px/1 dashicons}#wpacu-settings-vertical-tab-wrap{display:table;width:100%}#wpacu-settings-vertical-tab-wrap *{box-sizing:border-box}.wpacu-settings-tab{display:table-cell;width:19%;height:100%;vertical-align:top}.wpacu-settings-tab a{text-decoration:none;border-left:3px solid transparent;display:block;background-color:#f1f1f1;color:#004567;padding:17px 16px;width:100%;outline:0;text-align:left;cursor:pointer;font-size:14px;font-weight:600;border-bottom:1px solid #ccc}.wpacu-settings-tab a:first-child{border-top:1px solid transparent!important}.wpacu-settings-tab a:last-child{border-bottom:1px solid transparent!important}.wpacu-settings-tab a:hover{background-color:#fff;border-left:3px solid #004567;position:relative}.wpacu-settings-tab a.active{color:#004567;background-color:#fff;border-left:3px solid #004567;position:relative;border-bottom:1px solid #ccc}.wpacu-settings-tab a.active:after{content:'';position:absolute;height:100%;width:1px;top:0;right:-1px;background-color:#fff}.wpacu-settings-tab-content{background-color:#fff;display:none;padding:12px 18px;width:79%;border-left:none;height:100%;border-top-right-radius:10px;border-bottom-right-radius:10px}.wpacu-settings-tab-content h2{padding:0 0 15px;border-bottom:1px solid #e7e7e7}.wpacu-settings-tab-content.active{display:table-cell}#wpacu_minify_css_exceptions_area,#wpacu_minify_js_exceptions_area{margin:16px 0 0}#wpacu-update-button-area{position:relative;margin-left:19%}#wpacu-update-button-area.no-left-margin{margin-left:0}#wpacu-update-button-area p{margin-top:10px}#wpacu-update-button-area .button{padding:5px 18px;height:38px;font-size:15px}#wpacu-updating-settings{position:absolute;margin-left:183px;top:19px;display:none}#combine_loaded_js_info_area{position:relative}#combine_loaded_js_info_area.locked-for-pro:before{position:absolute;content:'';height:100%;width:100%;background:#fff;opacity:.5;z-index:10000}.wrap_bulk_unload_options{width:auto;display:inline-flex;-webkit-flex-wrap:wrap;flex-wrap:wrap}.wrap_bulk_unload_options .wpacu_asset_options_wrap{flex-grow:1;margin:5px 10px 14px 0!important;padding:8px 10px 2px!important}.wrap_bulk_unload_options .wpacu_asset_options_wrap .wpacu_slider_text{position:relative!important;vertical-align:top;left:inherit!important;top:inherit!important}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch{position:relative;display:inline-block;width:52px;height:29px;margin-right:5px!important}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch input{display:none}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch .wpacu_slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;-webkit-transition:.15s;transition:.15s}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch .wpacu_slider:before{position:absolute;content:'';height:22px;width:22px;left:4px;bottom:4px;background-color:#fff;-webkit-transition:.15s;transition:.15s}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch input:checked+.wpacu_slider{background-color:#C00}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch input:focus+.wpacu_slider{box-shadow:0 0 1px #C00}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch input:checked+.wpacu_slider:before{-webkit-transform:translateX(22px);-ms-transform:translateX(22px);transform:translateX(22px)}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch .wpacu_slider.wpacu_round:before{border-radius:50%}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_slider_text{position:absolute;left:62px;top:3px}.wpacu_asset_row input{height:auto;min-height:16px}.wpacu_asset_row td{width:100%;text-align:left}.wpacu_asset_row td p:last-child{margin-bottom:0!important}.wpacu_asset_row td .wpacu_asset_options_wrap{padding:8px 10px;margin:15px 0;background:#fff;border:1px solid #eee;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.wpacu_asset_row td .wpacu_asset_options_wrap p:first-child{margin-top:0;margin-bottom:8px!important}.wpacu_asset_row p.wpacu_handle{margin-top:0}.wpacu_asset_row li.wpacu_unload_this_page{display:block!important;position:relative}.wpacu-clearfix:after,.wpacu-clearfix:before{display:table;content:''}.wpacu-contract-expand-area{width:100%;margin:20px 0 0}.wpacu-contract-expand-area .col-left{float:left}.wpacu-contract-expand-area .col-left h4{margin-bottom:0}.wpacu-contract-expand-area .col-right{float:right}.wpacu-clearfix:after{clear:both}.wpacu-wp-button{color:#555;border-color:#ccc;background:#f7f7f7;box-shadow:0 1px 0 #ccc;vertical-align:top}body.wp-admin .wpacu-wp-button{font-size:13px;line-height:26px;height:28px}.wpacu-wp-button.wpacu-wp-button-secondary{display:inline-block;text-decoration:none;height:auto;margin:0 5px 0 0;padding:0 10px 1px;cursor:pointer;border-width:1px;border-style:solid;-webkit-appearance:none;border-radius:3px;white-space:nowrap;box-sizing:border-box}.wpacu-wp-button:hover{background:#fafafa;border-color:#999;color:#23282d}.distinguish-asset-list{list-style:none;margin-left:0;margin-bottom:5px;display:inline-block}.distinguish-asset-list li{float:left;margin-right:20px}.distinguish-asset-list li:last-child{margin-right:0}body[class*=asset-cleanup-pro] a.wpacu-plugin-contracted-wrap-link{padding:16px 6px 16px 41px!important}body[class*=asset-cleanup-pro] .wpacu-area-open .wpacu-plugin-toggle-all{font-size:12px!important;width:calc(100% - 26px)!important}body.wp-admin .wpacu-area-expanded .wpacu-plugin-toggle-all{top:5px}body.wp-admin .wpacu-area-expanded .wpacu-plugin-toggle-all ul li{font-size:12px!important}.wpacu-assets-collapsible-wrap{border:1px solid #cdcdcd}.wpacu-assets-collapsible-wrap.wpacu-by-location{margin-bottom:15px}.wpacu-assets-collapsible-wrap.wpacu-wrap-all,.wpacu-assets-collapsible-wrap.wpacu-wrap-styles{margin-top:20px}.wpacu-assets-collapsible-wrap.wpacu-wrap-scripts{margin-top:10px}.wpacu-assets-collapsible-wrap.wpacu-by-location>a.wpacu-assets-collapsible{padding:15px 15px 15px 43px}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu_list_table{border-width:0;margin:0;border-spacing:inherit;width:100%;box-shadow:3px 3px 2px #ddd;border-bottom-right-radius:5px;border-top-right-radius:5px}.wpacu-assets-collapsible-wrap.wpacu-by-location span.wpacu-child-location-name{font-weight:600}.wpacu-assets-collapsible-wrap.wpacu-by-location span.wpacu-child-location-version{font-weight:200}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-location-child-area[data-wpacu-plugin=oxygen] .icon-area{border-radius:50%}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-location-child-area .wpacu-plugin-toggle-all{display:inline-block;padding:0;font-size:13px;width:100%;width:calc(100% + 46px);min-width:250px;position:absolute;left:100%;left:calc(100% + 6px);margin:0;top:4px}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-location-child-area .wpacu-plugin-toggle-all ul{display:inline-block;margin:0;list-style:none;padding-left:13px;padding-top:0}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-location-child-area .wpacu-plugin-toggle-all ul li{padding:0;margin:0;line-height:normal;font-size:14px}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-location-child-area .wpacu-plugin-toggle-all ul li:first-child{font-style:italic;margin-bottom:5px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-themes .wpacu-assets-collapsible-content>table:last-child{margin-bottom:20px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-themes .wpacu-assets-collapsible-content .wpacu-location-child-area .wpacu-area-title{display:inline;position:relative;z-index:1}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-themes .wpacu-assets-collapsible-content .wpacu-location-child-area .wpacu-area-title:after{content:'';position:absolute;width:100%;left:0;bottom:0;height:1px;background-color:#fdfdfd}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content .wpacu-plugin-assets-wrap{padding:0 0 10px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content .wpacu-plugin-assets-wrap.wpacu-area-open .wpacu-plugin-toggle-all{display:inline-block;padding:7px 12px 16px;font-size:14px;width:100%;text-align:left;border-left:1px solid #cdcdcd;border-right:1px solid #cdcdcd}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content .wpacu-plugin-assets-wrap.wpacu-area-open.wpacu-plugin-assets-last{margin-bottom:18px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link{color:inherit;text-decoration:none;font-weight:inherit;font-style:inherit;font-size:105%;line-height:initial;height:auto;margin:14px 0 0;padding:13px 6px 14px 39px;position:relative;display:block}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link:after{position:absolute;font-size:18px;font-family:Dashicons;right:12px;top:14px;content:"\f132"}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link.wpacu-link-open:after{content:"\f460"}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link.wpacu-link-closed{border:1px solid #cdcdcd}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link:hover{border:1px solid #878787;background:#f9f9f9}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link:hover.wpacu-link-closed{box-shadow:3px 3px 2px #ddd}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link.wpacu-link-open{border-top:1px solid #cdcdcd;border-left:1px solid #cdcdcd;border-right:1px solid #cdcdcd;border-bottom:none}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link.wpacu-link-closed.wpacu-last-wrap-link{margin-bottom:20px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link .icon-plugin-default{top:10px;left:10px;width:30px;height:30px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link .icon-plugin-default .icon-area{width:30px;height:30px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link .icon-plugin-default .icon-area:before{font-size:22px;line-height:22px;top:4px;left:5px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link .wpacu-area-title{position:relative;padding:17px 10px 16px 46px;z-index:1}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link .wpacu-area-title:after{content:'';position:absolute;width:100%;left:0;bottom:0;height:1px;background-color:#fdfdfd}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link.wpacu-area-last{margin-bottom:18px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content .wpacu-area-open{padding:0;max-height:100%}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content .wpacu-area-closed{padding:0;overflow:hidden;max-height:0}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content>table:last-child{margin-bottom:20px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-themes .wpacu-assets-collapsible-content .wpacu-location-child-area .wpacu-area-title{margin-top:0;margin-bottom:-1px;padding:14px 10px 16px 12px!important}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-themes .wpacu-assets-collapsible-content .wpacu-location-child-area .wpacu-area-title.wpacu-theme-has-icon{padding:18px 10px 16px 58px!important}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-assets-collapsible-content .wpacu-location-child-area{margin-top:22px;margin-bottom:-1px;font-size:110%;line-height:initial}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-assets-collapsible-content .wpacu-location-child-area.wpacu-location-child-area-first{margin-top:2px}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-assets-collapsible-content .wpacu-location-child-area.wpacu-area-expanded .wpacu-area-title{display:inline-block;z-index:1;padding:17px 10px 16px 46px}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-assets-collapsible-content .wpacu-location-child-area .wpacu-area-title{display:inline;border-top-right-radius:8px;border-top-left-radius:8px;background-color:#f9f9f9;border-left:1px solid #cdcdcd;border-top:1px solid #cdcdcd;border-bottom:1px solid transparent;border-right:1px solid #cdcdcd;position:relative}.wpacu-assets-collapsible-wrap.wpacu-by-location .icon-plugin-default{position:absolute;padding:0;top:10px;left:10px;width:37px;height:37px}.wpacu-assets-collapsible-wrap.wpacu-by-location .icon-plugin-default:not(.has-icon){color:#b4b9be;background-color:#eee;box-shadow:inset 0 0 10px rgba(160,165,170,.15);-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.wpacu-assets-collapsible-wrap.wpacu-by-location .icon-plugin-default:not(.has-icon) .icon-area:before{content:"\f106";font-family:Dashicons;position:absolute;font-size:28px;line-height:28px;top:5px;left:5px}.wpacu-assets-collapsible-wrap.wpacu-by-location .icon-plugin-default .icon-area{position:relative;width:37px;height:37px}.wpacu-assets-collapsible-wrap.wpacu-by-location .icon-theme{position:absolute;padding:0;top:10px;left:10px;width:37px;height:37px}.wpacu-assets-collapsible-wrap.wpacu-by-location .icon-theme .icon-area{position:relative;width:37px;height:37px}.wpacu-assets-collapsible-wrap.wpacu-wp_core{border:1px solid #c00}.wpacu-assets-collapsible-wrap.wpacu-external .wpacu-assets-collapsible-content,.wpacu-assets-collapsible-wrap.wpacu-wp_core .wpacu-assets-collapsible-content{padding:0}.wpacu-assets-collapsible-wrap.wpacu-external .wpacu-assets-collapsible-content .wpacu_list_table,.wpacu-assets-collapsible-wrap.wpacu-wp_core .wpacu-assets-collapsible-content .wpacu_list_table{width:100%;margin:0}.wpacu-assets-collapsible-wrap.wpacu-external .wpacu-assets-collapsible-content .wpacu_list_table .wpacu_asset_row td,.wpacu-assets-collapsible-wrap.wpacu-wp_core .wpacu-assets-collapsible-content .wpacu_list_table .wpacu_asset_row td{border-left:hidden;border-right:hidden;border-bottom:1px solid #cdcdcd}.wpacu-assets-collapsible-wrap.wpacu-external .wpacu-assets-collapsible-content .wpacu_list_table .wpacu_asset_row:last-child,.wpacu-assets-collapsible-wrap.wpacu-wp_core .wpacu-assets-collapsible-content .wpacu_list_table .wpacu_asset_row:last-child{margin-bottom:0!important}.wpacu-assets-collapsible-wrap.wpacu-external .wpacu-assets-collapsible-content .wpacu_list_table .wpacu_asset_row:last-child td:last-child,.wpacu-assets-collapsible-wrap.wpacu-wp_core .wpacu-assets-collapsible-content .wpacu_list_table .wpacu_asset_row:last-child td:last-child{border-bottom:hidden}a.wpacu-assets-collapsible{color:#000;font-size:20px;text-decoration:none;display:block;position:relative;background-color:#f1f3f8;cursor:pointer;padding:15px 15px 15px 36px;width:auto;border:none;text-align:left;outline:0}a.wpacu-assets-collapsible>span.dashicons{font-size:25px;line-height:normal;position:absolute;top:15px;top:calc(50% - 21px);left:22px;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}a.wpacu-assets-collapsible:hover{background-color:#f1f3f8;text-decoration:none}a.wpacu-assets-collapsible:after{position:absolute;font-size:22px;font-family:Dashicons;right:14px;top:16px}a.wpacu-assets-collapsible:not(.wpacu-assets-collapsible-active):after{content:"\f132"}a.wpacu-assets-collapsible.wpacu-assets-collapsible-active{background-color:#f1f3f8}a.wpacu-assets-collapsible.wpacu-assets-collapsible-active:after{content:"\f460"}.wpacu-assets-collapsible-content{padding:0 16px;max-height:0;overflow:hidden;background-color:#fbfbfb8c}.wpacu-assets-collapsible-content .wpacu-assets-note{margin:0;padding:15px 15px 10px}.wpacu-assets-collapsible-content>div:not(.wpacu-assets-table-list-wrap){padding:16px 0 0}.wpacu-assets-collapsible-content>div>p:first-child{margin-top:0}.wpacu-assets-collapsible-content.wpacu-open{max-height:100%}a.wpacu-assets-inline-code-collapsible{color:inherit;font-size:14px;text-decoration:none;display:inline-block;position:relative;cursor:pointer;width:auto;outline:0;background:#f1f3f8;border:1px solid #cdcdcd;padding:4px 21px 4px 8px;margin:0 0 0 6px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}a.wpacu-assets-inline-code-collapsible:hover{border:1px solid #5c5c5c}a.wpacu-assets-inline-code-collapsible:after{position:absolute;font-size:15px;font-family:Dashicons;right:-3px;top:-1px;height:14px;width:14px;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}a.wpacu-assets-inline-code-collapsible:not(.wpacu-assets-inline-code-collapsible-active):after{content:"\f132"}a.wpacu-assets-inline-code-collapsible.wpacu-assets-inline-code-collapsible-active:after{content:"\f460"}.wpacu-assets-inline-code-collapsible-content{font-size:80%;padding:0 8px;max-height:0;overflow:hidden;background-color:#fbfbfb8c}.wpacu-assets-inline-code-collapsible-content>div{padding:7px 8px 0}.wpacu-assets-inline-code-collapsible-content>div>p{line-height:normal!important}.wpacu-assets-inline-code-collapsible-content>div>p:first-child{margin-top:0}.wpacu-assets-inline-code-collapsible-content.wpacu-open{max-height:100%}.wpacu-wrap-choose-position,.wpacu-wrap-choose-position>div{display:inline}.wpacu-wrap-choose-position select{width:auto;font-size:inherit;display:inline;margin-left:6px;margin-right:4px}.wpacu_table_wrap{margin:20px 0 0}.wpacu_table_wrap>table{border:1px solid #cdcdcd}.wpacu_table_wrap .table{width:100%;max-width:100%;margin-bottom:1rem;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.wpacu_table_wrap .table td,.wpacu_table_wrap .table th{padding:.75rem;vertical-align:top;border-top:1px solid #eceeef}.wpacu_table_wrap .table thead th{vertical-align:bottom;border-bottom:2px solid #eceeef}.wpacu_table_wrap .table tbody+tbody{border-top:2px solid #eceeef}.wpacu_table_wrap .table .table{background-color:#fff}.wpacu_table_wrap .table-sm td,.wpacu_table_wrap .table-sm th{padding:.3rem}.wpacu_table_wrap .table-bordered,.wpacu_table_wrap .table-bordered td,.wpacu_table_wrap .table-bordered th{border:1px solid #eceeef}.wpacu_table_wrap .table-bordered thead td,.wpacu_table_wrap .table-bordered thead th{border-bottom-width:2px}.wpacu_table_wrap .table-striped tbody tr:nth-of-type(even){background-color:#f9f9f9}.wpacu_table_wrap .table-striped tbody tr:nth-of-type(odd){background-color:#fff}.wpacu_table_wrap .table-active,.wpacu_table_wrap .table-active>td,.wpacu_table_wrap .table-active>th,.wpacu_table_wrap .table-hover .table-active:hover,.wpacu_table_wrap .table-hover .table-active:hover>td,.wpacu_table_wrap .table-hover .table-active:hover>th,.wpacu_table_wrap .table-hover tbody tr:hover{background-color:rgba(0,0,0,.075)}.wpacu_table_wrap .table-success,.wpacu_table_wrap .table-success>td,.wpacu_table_wrap .table-success>th{background-color:#dff0d8}.wpacu_table_wrap .table-hover .table-success:hover,.wpacu_table_wrap .table-hover .table-success:hover>td,.wpacu_table_wrap .table-hover .table-success:hover>th{background-color:#d0e9c6}.wpacu_table_wrap .table-info,.wpacu_table_wrap .table-info>td,.wpacu_table_wrap .table-info>th{background-color:#d9edf7}.wpacu_table_wrap .table-hover .table-info:hover,.wpacu_table_wrap .table-hover .table-info:hover>td,.wpacu_table_wrap .table-hover .table-info:hover>th{background-color:#c4e3f3}.wpacu_table_wrap .table-warning,.wpacu_table_wrap .table-warning>td,.wpacu_table_wrap .table-warning>th{background-color:#fcf8e3}.wpacu_table_wrap .table-hover .table-warning:hover,.wpacu_table_wrap .table-hover .table-warning:hover>td,.wpacu_table_wrap .table-hover .table-warning:hover>th{background-color:#faf2cc}.wpacu_table_wrap .table-danger,.wpacu_table_wrap .table-danger>td,.wpacu_table_wrap .table-danger>th{background-color:#f2dede}.wpacu_table_wrap .table-hover .table-danger:hover,.wpacu_table_wrap .table-hover .table-danger:hover>td,.wpacu_table_wrap .table-hover .table-danger:hover>th{background-color:#ebcccc}.wpacu_table_wrap .thead-inverse th{color:#fff;background-color:#292b2c}.wpacu_table_wrap .thead-default th{color:#464a4c;background-color:#eceeef}.wpacu_table_wrap .table-inverse{color:#fff;background-color:#292b2c}.wpacu_table_wrap .table-inverse td,.wpacu_table_wrap .table-inverse th,.wpacu_table_wrap .table-inverse thead th{border-color:#fff}.wpacu_table_wrap .table-inverse.table-bordered,.wpacu_table_wrap .table-responsive.table-bordered{border:0}.wpacu_table_wrap .table-responsive{display:block;width:100%;overflow-x:auto;-ms-overflow-style:-ms-autohiding-scrollbar}.wp-list-table .wpacu_remove_global_attr_row.wpacu_selected,.wp-list-table .wpacu_restore_position_row.wpacu_selected{background:#e7e7e7}ul.hire-reasons{margin-bottom:20px}ul.hire-reasons li{font-size:14px;line-height:22px;margin-bottom:12px}ul.hire-reasons li .dashicons{font-size:23px;line-height:23px}ul.hire-reasons li .dashicons.dashicons-yes{color:green}ol.getting-started li{font-size:14px;line-height:22px;margin-bottom:8px}.wpacu-get-help-wrap p{font-size:14px}.wpacu-get-help-wrap .help-content-wrap{margin:20px 0 25px;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-moz-flex;display:-webkit-flex;display:flex;width:100%}@media only screen and (min-width:768px){.wpacu-get-help-wrap .help-content-wrap{-webkit-box-align:start;-ms-flex-align:start;-ms-grid-row-align:flex-start;align-items:flex-start}}@media only screen and (max-width:767px){.wpacu-get-help-wrap .help-content-wrap{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.wpacu-get-help-wrap .help-content-wrap .help-content{padding:15px;background:#fff;border:1px solid #E0E0E0;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;box-shadow:2px 3px 8px 0 #231f2038;flex:1 1 50%;margin-bottom:10px}.wpacu-get-help-wrap .help-content-wrap .help-content .content-title{margin:5px 0 15px}.wpacu-get-help-wrap .help-content-wrap .help-content .cols-wrap{width:100%;margin:0 auto;display:table}.wpacu-get-help-wrap .help-content-wrap .help-content .wpacu-image-area{margin:5px 0 0;position:relative}.wpacu-get-help-wrap .help-content-wrap .help-content .wpacu-image-area.col-left{float:left;width:48%}.wpacu-get-help-wrap .help-content-wrap .help-content .wpacu-image-area.col-right{float:right;width:48%}.wpacu-get-help-wrap .help-content-wrap .help-content .wpacu-image-area.activate-plugin img{max-width:280px}.wpacu-get-help-wrap .help-content-wrap .help-content .wpacu-image-area img{width:99%;margin:8px 0;border:1px solid #cdcdcd;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.wpacu-get-help-wrap .help-content-wrap .help-content.upgrade-help{order:2}@media only screen and (min-width:768px){.wpacu-get-help-wrap .help-content-wrap .help-content{margin-right:24px}.wpacu-get-help-wrap .help-content-wrap .help-content.upgrade-help{margin-right:0}}.wpacu-get-help-wrap .help-content-wrap .help-content.tech-help{order:1}@media only screen and (max-width:767px){.wpacu-get-help-wrap .help-content-wrap .help-content.tech-help{margin-bottom:30px}}.wpacu-get-help-wrap .help-content-wrap .help-content ul{list-style:none;padding-left:0}.wpacu-get-help-wrap .help-content-wrap .help-content ul li{font-size:14px;line-height:22px;margin-bottom:15px}.wpacu-get-help-wrap .help-content-wrap .help-content p:last-child,.wpacu-get-help-wrap .help-content-wrap .help-content ul li:last-child{margin-bottom:0}#wpacu-license-data-remove-area{display:none;margin:10px 0 25px}#wpacu-license-data-remove-area.wpacu-visible{display:block}span#wpacu-license-data-removed-msg{display:block;padding-left:26px}#wpacu-warning-read{display:none;margin:10px 0}#wpacu-warning-read span.dashicons-warning{color:#c00}#wpacu-warning-read.wpacu-visible{display:block}#wpacu-reset-submit-area{margin:10px 0;clear:both}#wpacu-reset-submit-btn{margin:10px 0 0}.wpacu-tools-area{margin:10px 20px 0 2px}.wpacu-tools-area .wpacu-tools-container{background:#fff;padding:15px;border:1px solid #cdcdcd;width:96%}.wpacu-tools-area .wpacu-tools-container form>div:first-child{margin:0 0 10px}.wpacu-tools-area .wpacu-tools-container form .wpacu-warning{display:none;box-sizing:border-box;margin-top:10px}.wpacu-tools-area .wpacu-tools-container form .wpacu-warning p{margin:0 0 10px;line-height:22px}.wpacu-tools-area .wpacu-tools-container form .wpacu-warning p:only-child{margin:0}.wpacu-tools-area .wpacu-tools-container form .wpacu-warning ul{font-size:13px;list-style-type:disc;padding-left:30px}.wpacu-tools-area .wpacu-tools-container form .wpacu-warning.wpacu-visible{display:block}.wpacu-about-wrap .wpacu-about-text img{width:auto;height:150px;position:absolute;top:20px;right:-20px}@media only screen and (max-width:767px){.wpacu-about-wrap h1{margin:20px}.wpacu-about-wrap .wpacu-about-text img{display:none}.wpacu-about-wrap .wpacu-about-text{margin:20px}}.wpacu-about-wrap .about-wrap-content .area-title{font-size:19px;line-height:19px;margin-bottom:0}.wpacu-about-wrap hr{margin:10px 0}.wpacu-lite-vs-pro-wrap ul{display:flex;top:0;z-index:10;padding-bottom:14px}.wpacu-lite-vs-pro-wrap li{list-style:none;flex:1}.wpacu-lite-vs-pro-wrap li:last-child{border-right:1px solid #DDD}.wpacu-lite-vs-pro-wrap button{width:100%;border:1px solid #DDD;border-right:0;border-top:0;padding:10px;background:#FFF;font-size:14px;font-weight:700;height:60px;color:#999}.wpacu-lite-vs-pro-wrap li.active button{background:#F5F5F5;color:#000}.wpacu-lite-vs-pro-wrap table{border-collapse:collapse;table-layout:fixed;width:100%}.wpacu-lite-vs-pro-wrap th{background:inherit}.wpacu-lite-vs-pro-wrap tr.first{background:inherit;font-size:18px}.wpacu-lite-vs-pro-wrap tr.first .bg-lite{border-top:4px solid #6d6e70;background:#fff;color:#6d6e70}.wpacu-lite-vs-pro-wrap tr.first .bg-pro{border-top:4px solid green;background:#fff;color:green}.wpacu-lite-vs-pro-wrap tr:not(.first){background:#fff}.wpacu-lite-vs-pro-wrap tr:not(:last-child):hover{background:#f8f8f8}.wpacu-lite-vs-pro-wrap td,.wpacu-lite-vs-pro-wrap th{height:53px;border:1px solid #DDD;padding:10px 16px;empty-cells:show;text-align:left}@media only screen and (max-width:767px){.wpacu-lite-vs-pro-wrap td,.wpacu-lite-vs-pro-wrap th{font-size:14px}}.wpacu-lite-vs-pro-wrap td+td,.wpacu-lite-vs-pro-wrap th+th{text-align:center;display:none}.wpacu-lite-vs-pro-wrap td.default{display:table-cell}.wpacu-lite-vs-pro-wrap .txt-l{font-size:28px;font-weight:700}.wpacu-lite-vs-pro-wrap .txt-top{position:relative;top:-9px;left:-2px}.wpacu-lite-vs-pro-wrap svg{width:18px;height:18px}.wpacu-lite-vs-pro-wrap svg path{fill:green}.wpacu-lite-vs-pro-wrap .tick{color:#2CA01C}.wpacu-lite-vs-pro-wrap .tick img{fill:#2CA01C}@media only screen and (max-width:767px){.wpacu-lite-vs-pro-wrap .txt-l{font-size:20px}.wpacu-lite-vs-pro-wrap .tick{font-size:15px}}.wpacu-lite-vs-pro-wrap .na{font-size:18px;opacity:.3;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=30)"}.wpacu-lite-vs-pro-wrap .hide{border:0;background:0 0}.wpacu-lite-vs-pro-wrap td,.wpacu-lite-vs-pro-wrap th{display:table-cell!important;width:auto}.wpacu-lite-vs-pro-wrap td+td,.wpacu-lite-vs-pro-wrap th+th{width:130px}@media only screen and (max-width:767px){.wpacu-lite-vs-pro-wrap .na{font-size:15px}.wpacu-lite-vs-pro-wrap td+td,.wpacu-lite-vs-pro-wrap th+th{width:42px}}@media only screen and (min-width:768px){.wpacu-lite-vs-pro-wrap td .button{font-size:16px!important}}@media only screen and (max-width:767px){.wpacu-lite-vs-pro-wrap td .button{font-size:14px!important;padding:0 20px!important}.wpacu-lite-vs-pro-wrap td .button.button-primary{margin-top:6px;margin-bottom:14px}}@media only screen and (min-width:768px){.wpacu-lite-vs-pro-wrap{margin-bottom:40px;clear:both}}.wpacu-video-areas>div{padding:20px;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.wpacu-video-areas>div:nth-child(odd){background:#fff}.wpacu-video-areas>div:nth-child(even){background:inherit}@media only screen and (min-width:1200px){.wpacu-video-areas .wpacu-video-area-wrapper{margin:0 0 15px;display:flex}.wpacu-video-areas .wpacu-video-area-wrapper .wpacu-col-right{padding:0 20px 0 25px}}@media only screen and (min-width:992px) and (max-width:1199px){.wpacu-video-areas .wpacu-video-area-wrapper{margin:0 0 40px}}.wpacu-video-areas .wpacu-video-area-wrapper ol{font-size:14px}.wpacu-video-areas .wpacu-video-area-wrapper ul{font-size:14px;list-style:disc;margin-left:22px}@media only screen and (min-width:1200px){.wpacu-video-areas .wpacu-video-area-wrapper .wpacu-col-right p:first-child{margin-top:0}.wpacu-video-areas .wpacu-video-area-wrapper .wpacu-col-right p:last-child{margin-bottom:0}}@media only screen and (max-width:1199px){.wpacu-video-areas .wpacu-video-area-wrapper .wpacu-video-wrapper{position:relative;padding-bottom:56.25%;padding-top:30px;height:0;overflow:hidden}.wpacu-video-areas .wpacu-video-area-wrapper .wpacu-video-wrapper iframe{position:absolute;top:0;left:0;width:100%;height:100%}}#wpassetcleanup_asset_list.postbox h2{padding-left:52px!important;position:relative}#wpassetcleanup_asset_list.postbox h2:before{content:'';position:absolute;background-image:url(images/wpacu-logo-transparent-bg-v1.png);background-size:cover;top:6px;left:13px;width:33px;height:26px;opacity:.8;-webkit-filter:grayscale(100%);filter:grayscale(100%)}body.wp-admin .wpacu-modal{display:none;position:fixed;z-index:1000000;padding-top:15%;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#000;background-color:rgba(0,0,0,.4)}body.wp-admin .wpacu-modal-content{background-color:#fefefe;margin:auto;padding:20px;border:1px solid #888;width:80%;max-width:600px;border-radius:10px}body.wp-admin .wpacu-close{color:#aaa;float:right;font-size:28px;font-weight:700}body.wp-admin .wpacu-close:focus,body.wp-admin .wpacu-close:hover{color:#000;text-decoration:none;cursor:pointer}.wpacu-bulk-changes-tabs{display:table;position:relative;overflow:hidden;margin:0;width:100%}.wpacu-bulk-changes-tabs li{border-top:1px solid rgba(40,44,42,.1);border-left:1px solid rgba(40,44,42,.1);border-bottom:1px solid rgba(40,44,42,.1);float:left;line-height:38px;padding:0;position:relative;margin-bottom:12px}.wpacu-bulk-changes-tabs li:last-child{border-right:1px solid rgba(40,44,42,.1)}.wpacu-bulk-changes-tabs a{position:relative;background:rgba(40,44,42,.05);color:#004567;font-size:14px;font-weight:500;display:block;letter-spacing:0;outline:0;padding:6px 20px;text-decoration:none;border-top:3px solid transparent}.wpacu-bulk-changes-tabs a:hover{background:#f1f1f1;border-top:3px solid transparent}.wpacu-bulk-changes-tabs .current a{background:#fff;border-top:3px solid #004567}.wpacu-bulk-changes-tabs .current a:hover{background:#fff}.wpacu-bulk-changes-tabs .current a:after,.wpacu-bulk-changes-tabs .current a:before{top:100%;left:50%;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}.wpacu-bulk-changes-tabs .current a:after{border-color:rgba(136,183,213,0);border-top-color:#fff;border-width:12px;margin-left:-12px}.wpacu-bulk-changes-tabs .current a:before{border-color:rgba(194,225,245,0);border-top-color:rgba(40,44,42,.1);border-width:13px;margin-left:-13px}
|
1 |
+
#wpacu-pages-info-area{width:98%}#wpacu-top-area{margin:15px 0;padding:0 10px}#wpacu-logo-wrap{width:auto;display:inline-block;position:relative}#wpacu-logo-wrap a{display:block}#wpacu-logo-wrap img{width:352px;height:79px}#wpacu-logo-wrap .wpacu-pro-sign{position:absolute;height:auto;font-family:FiraSans-Medium,proxima-nova-1,Montserrat,Helvetica,sans-serif;font-size:13px;font-weight:600;letter-spacing:1px;padding:5px 11px;border-radius:15px;right:-60px;top:30px;width:auto;display:inline-block;text-align:center}#wpacu-logo-wrap .wpacu-pro-sign.wpacu-lite{color:#74777b;background:rgba(40,44,42,.05)}#wpacu-logo-wrap .wpacu-pro-sign.wpacu-pro{color:#004567;background-color:rgba(40,44,42,.05)}#wpacu_meta_box_content .dashicons.dashicons-warning,.wpacu-tabs nav ul li span.license-status.inactive{color:#c00}.wpacu-tabs{position:relative;overflow:hidden;margin:0 auto 20px;width:100%;font-weight:300;font-size:20px}.wpacu-tabs nav{text-align:center}.wpacu-tabs nav ul{position:relative;display:-ms-flexbox;display:-webkit-flex;display:-moz-flex;display:-ms-flex;display:flex;margin:0 auto;padding:0;max-width:1200px;list-style:none;-ms-box-orient:horizontal;-ms-box-pack:center;-webkit-flex-flow:row wrap;-moz-flex-flow:row wrap;-ms-flex-flow:row wrap;flex-flow:row wrap;-webkit-justify-content:center;-moz-justify-content:center;-ms-justify-content:center;justify-content:center}.wpacu-tabs nav ul li{position:relative;z-index:1;display:block;margin:0;text-align:center;-webkit-flex:1;-moz-flex:1;-ms-flex:1;flex:1}.wpacu-tabs nav ul li span.license-status{position:absolute;font-size:12px;left:0;right:50%;bottom:12px;-webkit-transform:translate(50%,50%);transform:translate(50%,50%)}.wpacu-tabs nav ul li span.license-status.active{color:green}.wpacu-tabs nav a{position:relative;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:2.5}.wpacu-tabs nav a span{vertical-align:middle;font-size:14px}.wpacu-tabs nav li.wpacu-tab-current a{color:#74777b}.wpacu-tabs nav a:focus{outline:0}.wpacu-tabs .dashicons{font-size:20px}.no-js .wpacu-content-wrap section{display:block;padding-bottom:2em;border-bottom:1px solid rgba(255,255,255,.6)}.no-flexbox nav ul{display:block}.no-flexbox nav ul li{min-width:15%;display:inline-block}@media screen and (max-width:58em){.wpacu-tabs nav a.icon span{display:none}.wpacu-tabs nav a:before{margin-right:0}}.wpacu-tabs-style-underline nav{background:#fff}.wpacu-tabs-style-underline nav a{color:#74777b;font-size:18px;text-transform:uppercase;text-decoration:none;padding:.25em 0 .5em;border-left:1px solid #e7ecea;-webkit-transition:color .2s;transition:color .2s}.wpacu-tabs-style-underline nav li:last-child a{border-right:1px solid #e7ecea}.wpacu-tabs-style-underline nav li a::after{position:absolute;bottom:0;left:0;width:100%;height:6px;background:#2CC185;content:'';-webkit-transition:-webkit-transform .3s;transition:transform .3s;-webkit-transform:translate3d(0,150%,0);transform:translate3d(0,150%,0)}.wpacu-tabs-style-underline nav li.wpacu-tab-current a::after{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.wpacu-tabs-style-underline nav a span{font-weight:700}.wpacu-tabs-style-topline{max-width:1200px;margin:20px auto 30px 0;width:100%;font-weight:300;text-decoration:none}.wpacu-tabs-style-topline nav li{border:1px solid rgba(40,44,42,.1)}.wpacu-tabs-style-topline nav li:not(:last-child){border-right:none}.wpacu-tabs-style-topline nav li.wpacu-tab-current{border-top-color:#008f9c;border-bottom:none}.wpacu-tabs-style-topline nav a{padding:20px 18px;background:rgba(40,44,42,.05);color:#74777b;line-height:1;-webkit-transition:color .2s;transition:color .2s;text-decoration:none}.wpacu-tabs-style-topline nav a:focus,.wpacu-tabs-style-topline nav a:hover{background:0 0;color:#008f9c}.wpacu-tabs-style-topline nav li.wpacu-tab-current a{background:0 0;box-shadow:inset 0 3px 0 #008f9c;color:#008f9c}.wpacu-tabs-style-topline nav li.wpacu-tab-current a span:not(.dashicons){font-weight:600}.wpacu-tabs-style-topline nav a span{text-transform:uppercase;font-weight:400}.wpacu-tab-nav-wrapper{border-bottom:none!important}.wpacu-tab-nav-wrapper .nav-tab.nav-tab-active{background:#fff;position:relative}.wpacu-tab-nav-wrapper .nav-tab.nav-tab-active:after{content:'';width:100%;bottom:-2px;left:0;position:absolute;border-bottom:2px solid #fff}.wpacu-script-attributes-area{margin:20px 0 0!important}.wpacu-script-attributes-area.wpacu-lite ul.wpacu-script-attributes-settings{padding:5px 7px!important}.wpacu-script-attributes-area.wpacu-lite ul.wpacu-script-attributes-settings.wpacu-first{margin:0 28px 0 0!important}.wpacu-script-attributes-area.wpacu-lite ul.wpacu-script-attributes-settings label{margin:0!important}.wpacu-script-attributes-area.wpacu-lite ul.wpacu-script-attributes-settings li{margin:0 16px 0 0!important}.wpacu-script-attributes-area.wpacu-lite ul.wpacu-script-attributes-settings li:first-child{margin:0 10px 0 0!important}.wpacu-script-attributes-area.wpacu-lite ul.wpacu-script-attributes-settings li:last-child{margin:0 2px 0 0!important}.wpacu-script-attributes-area .wpacu-script-attributes-settings{background:#fff!important;border:1px solid #eee!important;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;padding:5px 10px!important;list-style:none;display:inline-block;margin:0}.wpacu-script-attributes-area .wpacu-script-attributes-settings input[type=radio]{padding:0;margin:0 5px 0 0}.wpacu-script-attributes-area .wpacu-script-attributes-settings.wpacu-first{margin:0 34px 0 0!important}.wpacu-script-attributes-area .wpacu-script-attributes-settings li{float:left;margin:0 17px 0 0}.wpacu-script-attributes-area .wpacu-script-attributes-settings li:first-child{margin:0 10px 0 0!important}.wpacu-script-attributes-area .wpacu-script-attributes-settings li:last-child{margin:0}.wpacu-script-attributes-area .wpacu-script-attributes-settings:hover{background:#f2faf2}tr.wpacu_not_load td,tr.wpacu_not_load th{background:#FFE1E1!important}.dashicons-wpacu{width:17px;height:17px;margin:2px 0 0;font-size:16px;text-decoration:none}#wpacu_meta_box_content,.wpacu_widefat{width:99%}.wpacu_widefat .check-column.wpacu_check{padding:10px}body[class*=wpassetcleanup] #footer-left{border-left:2px solid green;padding-left:10px}#wpassetcleanup_asset_list small{width:auto;float:none;display:inline}#wpacu_meta_box_content .emoji{font-size:18px}#wpacu_meta_box_content h3{margin-left:0;padding-left:0}#wpacu_meta_box_content div.wpacu_note{padding:10px;background-color:#f5f5f5}#wpacu_meta_box_content .wpacu_verified{padding:10px;background-color:#f5f5f5;border-left:1px solid #ddd}#wpacu_meta_box_content .wpacu_verified span{color:#0073aa;font-weight:700}#wpacu_meta_box_content div.wpacu_warning{border:1px solid #c00}#wpacu_meta_box_content ul.wpacu_asset_options{margin:0;padding:0}#wpacu_meta_box_content ul.wpacu_asset_options li{list-style:none;display:inline-block}#wpacu_meta_box_content ul.wpacu_asset_options label{font-weight:400;margin-right:5px;margin-top:5px;margin-bottom:5px}.wpacu-updated-frontend{font-weight:400;background-color:#fff;border-left:4px solid #46b450;border-top:1px solid #46b450;border-right:1px solid #46b450;border-bottom:1px solid #46b450;padding:9px 14px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.wpacu-updated-frontend span.dashicons-yes{color:#46b450;font-size:26px}#wpacu_wrap_assets{color:#000!important;text-align:left!important;clear:both!important;width:90%!important;padding:20px!important;margin:30px 0 0 15px!important;border:1px solid #cdcdcd;z-index:10000!important;position:relative!important;background-color:#fff!important}#wpacu_wrap_assets div.wpacu_warning{border:1px solid #c00;padding:5px 10px}#wpacu_wrap_assets small{display:inline!important;margin:0!important;letter-spacing:normal!important}#wpacu_wrap_assets img,.wpacu_asset_row td label,.wpacu_update_btn{display:inline-block!important}#wpacu_wrap_assets input[type=checkbox]{margin-right:4px!important}#wpacu_wrap_assets p{line-height:22px!important;margin:10px 0!important;text-align:left!important;font-weight:400!important}#wpacu_wrap_assets p:first-child,.wpacu_verified{margin:0 0 10px!important}#wpacu_wrap_assets h1{margin:0 0 20px!important;font-size:160%!important;text-align:left!important}#wpacu_wrap_assets h3{margin:20px 0;font-size:130%}.wpacu_asset_row td{padding:18px!important;position:relative;border-left:1px solid #cdcdcd;border-right:1px solid #cdcdcd;border-bottom:1px solid #cdcdcd}.wpacu_asset_row td.selected,.wpacu_asset_row td:hover{border:1px solid #cdcdcd;-moz-box-shadow:inset 0 0 12px #cdcdcd;-webkit-box-shadow:inset 0 0 12px #cdcdcd;box-shadow:inset 0 0 12px #cdcdcd}.wpacu_asset_row td:first-child{border-top:1px solid #cdcdcd}.wpacu_asset_row td p{padding:0!important;margin-bottom:10px!important;word-wrap:break-word!important;-ms-word-break:break-all;word-break:break-word}.wpacu_asset_row td label{width:auto!important;margin:0!important;cursor:pointer!important;font-size:100%!important;font-weight:400!important}.wpacu_asset_row td label span:not(.dashicons){font-size:100%!important}.wpacu_asset_row td.wpacu_check{width:50px!important}.asset-table-extra-info td{padding:5px!important}body.wp-admin .wpacu_asset_row td.wpacu_check{width:25px!important}.wpacu_asset_row .dashicons-warning{color:red!important}label.wpacu_add_global{cursor:pointer!important}label.wpacu_global_checked{font-weight:700;color:#d54e21}label.wpacu_global_unload_exception{font-weight:700!important}label.wpacu_bulk_unload_active{color:#d54e21}tr.wpacu_global_rule_row.selected{background:#e7e7e7}.nav-tab-wrapper{border-bottom:1px solid #ccc;width:95%}ul.wpacu_asset_options{margin:0 10px 0 0;padding:0}ul.wpacu_asset_options li{margin:0 20px 0 0;list-style:none;display:inline-block;line-height:normal}ul.wpacu_asset_options li.remove_rule label{font-weight:700}ul.wpacu_asset_options label{margin-right:20px;font-weight:400}ul.wpacu_asset_options label input{margin-right:4px}.wpacu_list_table,.wpacu_list_table div,.wpacu_list_table li,.wpacu_list_table p{font-weight:400}.wpacu_striped>tbody>:nth-child(even),ul.wpacu_striped>:nth-child(even){background-color:#fff!important}.wpacu_striped>tbody>:nth-child(odd),ul.wpacu_striped>:nth-child(odd){background-color:#f9f9f9!important}.wpacu_update_btn{-moz-box-shadow:inset 0 1px 0 0 #54a3f7!important;-webkit-box-shadow:inset 0 1px 0 0 #54a3f7!important;box-shadow:inset 0 1px 0 0 #54a3f7!important;background:-webkit-gradient(linear,left top,left bottom,color-stop(.05,#007dc1),color-stop(1,#0061a7))!important;background:-moz-linear-gradient(top,#007dc1 5%,#0061a7 100%)!important;background:-webkit-linear-gradient(top,#007dc1 5%,#0061a7 100%)!important;background:-o-linear-gradient(top,#007dc1 5%,#0061a7 100%)!important;background:-ms-linear-gradient(top,#007dc1 5%,#0061a7 100%)!important;background:linear-gradient(to bottom,#007dc1 5%,#0061a7 100%)!important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#007dc1', endColorstr='#0061a7', GradientType=0)!important;background-color:#007dc1!important;-moz-border-radius:3px!important;-webkit-border-radius:3px!important;border-radius:3px!important;border:1px solid #124d77!important;cursor:pointer!important;color:#fff!important;font-size:15px!important;padding:10px 24px!important;text-decoration:none!important;text-shadow:0 1px 0 #154682!important;height:auto!important;line-height:normal!important}.wpacu-btns .btn:focus,.wpacu-btns .btn:hover,.wpacu-btns a{text-decoration:none}.wpacu_update_btn:hover{background:-webkit-gradient(linear,left top,left bottom,color-stop(.05,#0061a7),color-stop(1,#007dc1))!important;background:-moz-linear-gradient(top,#0061a7 5%,#007dc1 100%)!important;background:-webkit-linear-gradient(top,#0061a7 5%,#007dc1 100%)!important;background:-o-linear-gradient(top,#0061a7 5%,#007dc1 100%)!important;background:-ms-linear-gradient(top,#0061a7 5%,#007dc1 100%)!important;background:linear-gradient(to bottom,#0061a7 5%,#007dc1 100%)!important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#0061a7', endColorstr='#007dc1', GradientType=0)!important;background-color:#0061a7!important}.wpacu_update_btn:active{position:relative!important;top:1px!important}.wpacu-btns .btn{display:inline-block;font-weight:400;line-height:1.25;text-align:center;white-space:nowrap;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border:1px solid transparent;padding:.5rem 1rem;font-size:1rem;-webkit-border-radius:.25rem;-moz-border-radius:.25rem;border-radius:.25rem;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.wpacu-btns .btn.focus,.wpacu-btns .btn:focus{outline:0;-webkit-box-shadow:0 0 0 2px rgba(2,117,216,.25);box-shadow:0 0 0 2px rgba(2,117,216,.25)}.wpacu-btns .btn.disabled,.wpacu-btns .btn:disabled{cursor:not-allowed;opacity:.65}.wpacu-btns .btn.active,.wpacu-btns .btn:active{background-image:none}.wpacu-btns a.btn.disabled,.wpacu-btns fieldset[disabled] a.btn{pointer-events:none}.wpacu-btns .btn-primary{color:#fff;background-color:#0275d8;border-color:#0275d8}.wpacu-btns .btn-primary:hover{color:#fff;background-color:#025aa5;border-color:#01549b}.wpacu-btns .btn-primary.focus,.wpacu-btns .btn-primary:focus{-webkit-box-shadow:0 0 0 2px rgba(2,117,216,.5);box-shadow:0 0 0 2px rgba(2,117,216,.5)}.wpacu-btns .btn-primary.disabled,.wpacu-btns .btn-primary:disabled{background-color:#0275d8;border-color:#0275d8}.wpacu-btns .btn-primary.active,.wpacu-btns .btn-primary:active,.wpacu-btns .show>.btn-primary.dropdown-toggle{color:#fff;background-color:#025aa5;background-image:none;border-color:#01549b}.wpacu-btns .btn-secondary{color:#292b2c;background-color:#fff;border-color:#ccc}.wpacu-btns .btn-secondary:hover{color:#292b2c;background-color:#e6e6e6;border-color:#adadad}.wpacu-btns .btn-secondary.focus,.wpacu-btns .btn-secondary:focus{-webkit-box-shadow:0 0 0 2px rgba(204,204,204,.5);box-shadow:0 0 0 2px rgba(204,204,204,.5)}.wpacu-btns .btn-secondary.disabled,.wpacu-btns .btn-secondary:disabled{background-color:#fff;border-color:#ccc}.wpacu-btns .btn-secondary.active,.wpacu-btns .btn-secondary:active,.wpacu-btns .show>.btn-secondary.dropdown-toggle{color:#292b2c;background-color:#e6e6e6;background-image:none;border-color:#adadad}.wpacu-btns .btn-info{color:#fff;background-color:#5bc0de;border-color:#5bc0de}.wpacu-btns .btn-info:hover{color:#fff;background-color:#31b0d5;border-color:#2aabd2}.wpacu-btns .btn-info.focus,.wpacu-btns .btn-info:focus{-webkit-box-shadow:0 0 0 2px rgba(91,192,222,.5);box-shadow:0 0 0 2px rgba(91,192,222,.5)}.wpacu-btns .btn-info.disabled,.wpacu-btns .btn-info:disabled{background-color:#5bc0de;border-color:#5bc0de}.wpacu-btns .btn-info.active,.wpacu-btns .btn-info:active,.wpacu-btns .show>.btn-info.dropdown-toggle{color:#fff;background-color:#31b0d5;background-image:none;border-color:#2aabd2}.wpacu-btns .btn-success{color:#fff;background-color:#5cb85c;border-color:#5cb85c}.wpacu-btns .btn-success:hover{color:#fff;background-color:#449d44;border-color:#419641}.wpacu-btns .btn-success.focus,.wpacu-btns .btn-success:focus{-webkit-box-shadow:0 0 0 2px rgba(92,184,92,.5);box-shadow:0 0 0 2px rgba(92,184,92,.5)}.wpacu-btns .btn-success.disabled,.wpacu-btns .btn-success:disabled{background-color:#5cb85c;border-color:#5cb85c}.wpacu-btns .btn-success.active,.wpacu-btns .btn-success:active,.wpacu-btns .show>.btn-success.dropdown-toggle{color:#fff;background-color:#449d44;background-image:none;border-color:#419641}.wpacu-btns .btn-warning{color:#fff;background-color:#f0ad4e;border-color:#f0ad4e}.wpacu-btns .btn-warning:hover{color:#fff;background-color:#ec971f;border-color:#eb9316}.wpacu-btns .btn-warning.focus,.wpacu-btns .btn-warning:focus{-webkit-box-shadow:0 0 0 2px rgba(240,173,78,.5);box-shadow:0 0 0 2px rgba(240,173,78,.5)}.wpacu-btns .btn-warning.disabled,.wpacu-btns .btn-warning:disabled{background-color:#f0ad4e;border-color:#f0ad4e}.wpacu-btns .btn-warning.active,.wpacu-btns .btn-warning:active,.wpacu-btns .show>.btn-warning.dropdown-toggle{color:#fff;background-color:#ec971f;background-image:none;border-color:#eb9316}.wpacu-btns .btn-danger{color:#fff;background-color:#d9534f;border-color:#d9534f}.wpacu-btns .btn-danger:hover{color:#fff;background-color:#c9302c;border-color:#c12e2a}.wpacu-btns .btn-danger.focus,.wpacu-btns .btn-danger:focus{-webkit-box-shadow:0 0 0 2px rgba(217,83,79,.5);box-shadow:0 0 0 2px rgba(217,83,79,.5)}.wpacu-btns .btn-danger.disabled,.wpacu-btns .btn-danger:disabled{background-color:#d9534f;border-color:#d9534f}.wpacu-btns .btn-danger.active,.wpacu-btns .btn-danger:active,.wpacu-btns .show>.btn-danger.dropdown-toggle{color:#fff;background-color:#c9302c;background-image:none;border-color:#c12e2a}.wpacu-btns .btn-outline-primary{color:#0275d8;background-image:none;background-color:transparent;border-color:#0275d8}.wpacu-btns .btn-outline-primary:hover{color:#fff;background-color:#0275d8;border-color:#0275d8}.wpacu-btns .btn-outline-primary.focus,.wpacu-btns .btn-outline-primary:focus{-webkit-box-shadow:0 0 0 2px rgba(2,117,216,.5);box-shadow:0 0 0 2px rgba(2,117,216,.5)}.wpacu-btns .btn-outline-primary.disabled,.wpacu-btns .btn-outline-primary:disabled{color:#0275d8;background-color:transparent}.wpacu-btns .btn-outline-primary.active,.wpacu-btns .btn-outline-primary:active,.wpacu-btns .show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#0275d8;border-color:#0275d8}.wpacu-btns .btn-outline-secondary{color:#ccc;background-image:none;background-color:transparent;border-color:#ccc}.wpacu-btns .btn-outline-secondary:hover{color:#fff;background-color:#ccc;border-color:#ccc}.wpacu-btns .btn-outline-secondary.focus,.wpacu-btns .btn-outline-secondary:focus{-webkit-box-shadow:0 0 0 2px rgba(204,204,204,.5);box-shadow:0 0 0 2px rgba(204,204,204,.5)}.wpacu-btns .btn-outline-secondary.disabled,.wpacu-btns .btn-outline-secondary:disabled{color:#ccc;background-color:transparent}.wpacu-btns .btn-outline-secondary.active,.wpacu-btns .btn-outline-secondary:active,.wpacu-btns .show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#ccc;border-color:#ccc}.wpacu-btns .btn-outline-info{color:#5bc0de;background-image:none;background-color:transparent;border-color:#5bc0de}.wpacu-btns .btn-outline-info:hover{color:#fff;background-color:#5bc0de;border-color:#5bc0de}.wpacu-btns .btn-outline-info.focus,.wpacu-btns .btn-outline-info:focus{-webkit-box-shadow:0 0 0 2px rgba(91,192,222,.5);box-shadow:0 0 0 2px rgba(91,192,222,.5)}.wpacu-btns .btn-outline-info.disabled,.wpacu-btns .btn-outline-info:disabled{color:#5bc0de;background-color:transparent}.wpacu-btns .btn-outline-info.active,.wpacu-btns .btn-outline-info:active,.wpacu-btns .show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#5bc0de;border-color:#5bc0de}.wpacu-btns .btn-outline-success{color:#5cb85c;background-image:none;background-color:transparent;border-color:#5cb85c}.wpacu-btns .btn-outline-success:hover{color:#fff;background-color:#5cb85c;border-color:#5cb85c}.wpacu-btns .btn-outline-success.focus,.wpacu-btns .btn-outline-success:focus{-webkit-box-shadow:0 0 0 2px rgba(92,184,92,.5);box-shadow:0 0 0 2px rgba(92,184,92,.5)}.wpacu-btns .btn-outline-success.disabled,.wpacu-btns .btn-outline-success:disabled{color:#5cb85c;background-color:transparent}.wpacu-btns .btn-outline-success.active,.wpacu-btns .btn-outline-success:active,.wpacu-btns .show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#5cb85c;border-color:#5cb85c}.wpacu-btns .btn-outline-warning{color:#f0ad4e;background-image:none;background-color:transparent;border-color:#f0ad4e}.wpacu-btns .btn-outline-warning:hover{color:#fff;background-color:#f0ad4e;border-color:#f0ad4e}.wpacu-btns .btn-outline-warning.focus,.wpacu-btns .btn-outline-warning:focus{-webkit-box-shadow:0 0 0 2px rgba(240,173,78,.5);box-shadow:0 0 0 2px rgba(240,173,78,.5)}.wpacu-btns .btn-outline-warning.disabled,.wpacu-btns .btn-outline-warning:disabled{color:#f0ad4e;background-color:transparent}.wpacu-btns .btn-outline-warning.active,.wpacu-btns .btn-outline-warning:active,.wpacu-btns .show>.btn-outline-warning.dropdown-toggle{color:#fff;background-color:#f0ad4e;border-color:#f0ad4e}.wpacu-btns .btn-outline-danger{color:#d9534f;background-image:none;background-color:transparent;border-color:#d9534f}.wpacu-btns .btn-outline-danger:hover{color:#fff;background-color:#d9534f;border-color:#d9534f}.wpacu-btns .btn-outline-danger.focus,.wpacu-btns .btn-outline-danger:focus{-webkit-box-shadow:0 0 0 2px rgba(217,83,79,.5);box-shadow:0 0 0 2px rgba(217,83,79,.5)}.wpacu-btns .btn-outline-danger.disabled,.wpacu-btns .btn-outline-danger:disabled{color:#d9534f;background-color:transparent}.wpacu-btns .btn-outline-danger.active,.wpacu-btns .btn-outline-danger:active,.wpacu-btns .show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#d9534f;border-color:#d9534f}.wpacu-btns .btn-link{font-weight:400;color:#0275d8;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.wpacu-btns .btn-link,.wpacu-btns .btn-link.active,.wpacu-btns .btn-link:active,.wpacu-btns .btn-link:disabled{background-color:transparent}.wpacu-btns .btn-link,.wpacu-btns .btn-link:active,.wpacu-btns .btn-link:focus,.wpacu-btns .btn-link:hover{border-color:transparent}.wpacu-btns .btn-link:focus,.wpacu-btns .btn-link:hover{color:#014c8c;text-decoration:underline;background-color:transparent}.wpacu-btns .btn-link:disabled{color:#636c72}.wpacu-btns .btn-link:disabled:focus,.wpacu-btns .btn-link:disabled:hover{text-decoration:none}.wpacu-btns .btn-group-lg>.btn,.wpacu-btns .btn-lg{padding:.75rem 1.5rem;font-size:1.25rem;-webkit-border-radius:.3rem;-moz-border-radius:.3rem;border-radius:.3rem}.wpacu-btns .btn-group-sm>.btn,.wpacu-btns .btn-sm{padding:.25rem .5rem;font-size:.875rem;-webkit-border-radius:.2rem;-moz-border-radius:.2rem;border-radius:.2rem}.wpacu-btns .btn-block{display:block;width:100%}.wpacu-btns .btn-block+.btn-block{margin-top:.5rem}.wpacu-btns input[type=reset].btn-block,.wpacu-btns input[type=button].btn-block,.wpacu-btns input[type=submit].btn-block{width:100%}.wpacu-btns .fade{opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.go-pro-button{background-color:#4CAF50;border:2px solid #4CAF50;color:#fff;padding:12px 18px;text-align:center;text-decoration:none;display:inline-block;font-size:16px;margin:4px 2px;cursor:pointer;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-webkit-transition-duration:.4s;transition-duration:.4s}.go-pro-button:hover{background-color:#fff;color:#000;border:2px solid #4CAF50;text-decoration:none}.wpacu-restore-pos-btn{font-size:14px!important;line-height:normal!important;height:42px!important;padding:0 18px!important;margin-top:10px!important}body.wp-admin .wpacu_asset_row .go-pro-link-no-style .wpacu-tooltip{padding:8px 2px}body.wp-admin .go-pro-link-no-style .wpacu-tooltip{text-shadow:none;font-weight:400;font-size:12px;line-height:16px;padding:8px 11px}.go-pro-link-no-style .wpacu-tooltip,.wordpress-core-file .wpacu-tooltip{font-size:14px;line-height:18px;visibility:hidden;text-align:center;z-index:1}.go-pro-link-no-style{position:relative;display:inline-block;color:inherit;text-decoration:none}.go-pro-link-no-style:not(.nav-tab){font-style:italic}.go-pro-link-no-style.no-transition .wpacu-tooltip{-webkit-transition:0s all ease;transition:0s all ease;-webkit-transition-delay:0s;transition-delay:0s}.go-pro-link-no-style .wpacu-tooltip{position:absolute;width:160px;background-color:#00a7a7;color:#fff;padding:8px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;bottom:100%;bottom:calc(100% + 15px);left:50%;margin-left:-65px;-webkit-transition:.1s all ease;transition:.1s all ease;-webkit-transition-delay:0s;transition-delay:0s}.go-pro-link-no-style .wpacu-tooltip:after{content:"";position:absolute;border-width:10px;border-style:solid;top:100%;left:50%;left:calc(50% - 10px);border-color:#00a7a7 transparent transparent}.go-pro-link-no-style .wpacu-tooltip.wpacu-on-pages-btn{cursor:pointer;margin-left:-77px;width:130px}.go-pro-link-no-style .wpacu-tooltip.wpacu-larger{width:240px}.go-pro-link-no-style:hover .wpacu-tooltip{visibility:visible}.wpacu_list_table tr:first-child .wordpress-core-file .wpacu-tooltip{bottom:-40px;left:120px;margin-left:-86px}.wpacu_list_table tr:first-child .wordpress-core-file .wpacu-tooltip:after{top:41px;left:-20px;border-color:transparent #c00 transparent transparent}.wordpress-core-file{position:relative;display:inline-block;font-style:normal;color:inherit;text-decoration:none}.wordpress-core-file .wpacu-tooltip{position:absolute;width:160px;background-color:#c00;color:#fff;padding:6px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;bottom:100%;bottom:calc(100% + 15px);left:50%;margin-left:-86px;-webkit-transition:.1s all ease;transition:.1s all ease;-webkit-transition-delay:0s;transition-delay:0s}.wordpress-core-file .wpacu-tooltip:after{content:"";position:absolute;border-width:10px;border-style:solid;top:100%;left:50%;left:calc(50% - 10px);border-color:#c00 transparent transparent}.wordpress-core-file:hover .wpacu-tooltip{visibility:visible}.ajax-direct-call-error-area{background:#fff;padding:10px;border:1px solid #c00;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px}.ajax-direct-call-error-area td{padding:6px}.ajax-direct-call-error-area .note{margin-top:0;padding-top:0}.ajax-direct-call-error-area .error-code{color:#c00;font-weight:700}.ajax-wp-remote-post-call-error-area{background:#fff;padding:20px}.ajax-wp-remote-post-call-error-area .table-data{background:0 0;border:1px solid #c66;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.ajax-wp-remote-post-call-error-area .table-data td{padding:10px}.wrap-upgrade-info{background:#fff;padding:0 15px;border:1px solid #cdcdcd;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.wpacu-notice{margin:20px 20px 0 0!important}.wpacu-notice p{font-weight:600!important;font-style:italic}.wpacu-notice .dashicons{font-weight:inherit!important;color:#46b450!important;margin-right:4px;vertical-align:text-bottom;font-size:27px}.wpacu-notice-info{padding:12px 12px 12px 16px;background:#fff;border-left:4px solid #008f9c}.wpacu-notice-info p{margin-top:8px}.wpacu-notice-info p:first-child{margin-top:0}.wpacu-notice-info p:last-child{margin-bottom:0}.wpacu-warning{font-size:15px;padding:10px;background:#fffcec;border:1px solid #fdd5c9;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;margin:0 0 5px;width:100%}.pro-page-unlock-notice{-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;padding:10px;background:#f2faf2;border:1px solid #c0e8c0;width:auto;display:block}.wpacu-license-area .notice,.wpacu-settings-area .notice{margin-left:0;padding:10px!important;width:97%;box-sizing:border-box;font-weight:600;font-style:italic}.wpacu-license-area .notice .dashicons,.wpacu-settings-area .notice .dashicons{color:green}#wpacu-dom-get-type-selections,.wpacu-radio-selections{float:none;clear:both;width:auto;display:inline-block;margin-bottom:0;margin-top:0}#wpacu-dom-get-type-selections.wpacu-vertical,.wpacu-radio-selections.wpacu-vertical{display:block;margin-top:15px;margin-bottom:18px}#wpacu-dom-get-type-selections.wpacu-vertical li,.wpacu-radio-selections.wpacu-vertical li{float:none;margin-bottom:12px}#wpacu-dom-get-type-selections.wpacu-vertical li:last-child,.wpacu-radio-selections.wpacu-vertical li:last-child{margin-bottom:0}#wpacu-dom-get-type-selections li,.wpacu-radio-selections li{margin-right:30px;float:left;margin-bottom:0}#wpacu-dom-get-type-selections li:first-child,.wpacu-radio-selections li:first-child{margin-right:15px}#wpacu-dom-get-type-selections li:last-child,.wpacu-radio-selections li:last-child{margin-right:0}.wpacu_combine_loaded_js_level_area{display:none;background:0 0;border-left:2px solid #008f9c;padding-top:8px;padding-bottom:8px;padding-right:10px;padding-left:10px;margin:20px 0 15px}.wpacu_combine_loaded_js_level_area.wpacu_active{display:block}#wpacu-dom-get-type-infos{margin-bottom:0}#wpacu-dom-get-type-infos li{margin-bottom:0;line-height:20px}.wpacu-wrap small{width:auto;float:none;display:inline}.wpacu-wrap.wpacu-settings-show-all .wpacu-settings-tab-content{display:block;width:100%}.wpacu-wrap.wpacu-settings-show-all .wpacu-settings-area-title{color:#004567;padding:16px 15px;background:#f8f8f8;border-left:5px solid #004567b0;border-top:1px solid #e7e7e7;border-right:1px solid #e7e7e7;border-bottom:1px solid #e7e7e7;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;font-size:1.45em;font-weight:500}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch .wpacu_slider.wpacu_round,.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch .wpacu_slider.wpacu_round{border-radius:29px}.wpacu-wrap.wpacu-settings-show-all #wpacu-update-button-area{margin:0}.wpacu-wrap.wpacu-settings-show-all #wpacu-update-button-area .button{padding:11px 28px;height:auto;font-size:18px}.wpacu-wrap.wpacu-settings-show-all #wpacu-updating-settings{margin-left:224px;top:25px}.wpacu-wrap.wpacu-switch-standard .asset-cleanup-pro_page_wpassetcleanup_settings .wpacu_switch,.wpacu-wrap.wpacu-switch-standard .asset-cleanup_page_wpassetcleanup_settings .wpacu_switch{width:auto;height:auto}.wpacu-wrap.wpacu-switch-standard .asset-cleanup-pro_page_wpassetcleanup_settings .wpacu_switch input,.wpacu-wrap.wpacu-switch-standard .asset-cleanup_page_wpassetcleanup_settings .wpacu_switch input{display:block}.wpacu-wrap.wpacu-switch-standard .asset-cleanup-pro_page_wpassetcleanup_settings .wpacu_switch input[type=checkbox],.wpacu-wrap.wpacu-switch-standard .asset-cleanup_page_wpassetcleanup_settings .wpacu_switch input[type=checkbox]{margin:0 0 3px}.wpacu-wrap.wpacu-switch-standard .asset-cleanup-pro_page_wpassetcleanup_settings .wpacu_switch .wpacu_slider,.wpacu-wrap.wpacu-switch-standard .asset-cleanup_page_wpassetcleanup_settings .wpacu_switch .wpacu_slider{display:none}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch{position:relative;display:inline-block;width:52px;height:29px}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch input{display:none}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch:not(.wpacu_switch_standard) .wpacu_slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;-webkit-transition:.2s;transition:.2s}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch:not(.wpacu_switch_standard) .wpacu_slider:before{position:absolute;content:'';height:22px;width:22px;left:4px;bottom:4px;background-color:#fff;-webkit-transition:.2s;transition:.2s}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch input:checked+.wpacu_slider{background-color:#52af00}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch input:focus+.wpacu_slider{box-shadow:0 0 1px #52af00}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch input:checked+.wpacu_slider:before{-webkit-transform:translateX(22px);-ms-transform:translateX(22px);transform:translateX(22px)}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch .wpacu_slider.wpacu_round:before{border-radius:50%}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch.wpacu_locked_for_pro{opacity:.3}.asset-cleanup-pro_page_wpassetcleanup_settings .setting_title p.wpacu_subtitle,.asset-cleanup_page_wpassetcleanup_settings .setting_title p.wpacu_subtitle{margin-top:4px;line-height:1.4}.asset-cleanup-pro_page_wpassetcleanup_settings .setting_title p.wpacu_subtitle em,.asset-cleanup_page_wpassetcleanup_settings .setting_title p.wpacu_subtitle em{font-weight:200}.asset-cleanup-pro_page_wpassetcleanup_settings .setting_title p.wpacu_read_more,.asset-cleanup_page_wpassetcleanup_settings .setting_title p.wpacu_read_more{margin-top:-10px;font-style:italic;font-size:12px}.asset-cleanup-pro_page_wpassetcleanup_settings .assets_list_inline_code_status_choices,.asset-cleanup-pro_page_wpassetcleanup_settings .assets_list_layout_areas_status_choices,.asset-cleanup-pro_page_wpassetcleanup_settings .input_style_choices,.asset-cleanup_page_wpassetcleanup_settings .assets_list_inline_code_status_choices,.asset-cleanup_page_wpassetcleanup_settings .assets_list_layout_areas_status_choices,.asset-cleanup_page_wpassetcleanup_settings .input_style_choices{list-style:none;margin:0}.asset-cleanup-pro_page_wpassetcleanup_settings .assets_list_inline_code_status_choices li,.asset-cleanup-pro_page_wpassetcleanup_settings .assets_list_layout_areas_status_choices li,.asset-cleanup-pro_page_wpassetcleanup_settings .input_style_choices li,.asset-cleanup_page_wpassetcleanup_settings .assets_list_inline_code_status_choices li,.asset-cleanup_page_wpassetcleanup_settings .assets_list_layout_areas_status_choices li,.asset-cleanup_page_wpassetcleanup_settings .input_style_choices li{float:left;margin-right:30px}.asset-cleanup-pro_page_wpassetcleanup_settings .assets_list_inline_code_status_choices li:last-child,.asset-cleanup-pro_page_wpassetcleanup_settings .assets_list_layout_areas_status_choices li:last-child,.asset-cleanup-pro_page_wpassetcleanup_settings .input_style_choices li:last-child,.asset-cleanup_page_wpassetcleanup_settings .assets_list_inline_code_status_choices li:last-child,.asset-cleanup_page_wpassetcleanup_settings .assets_list_layout_areas_status_choices li:last-child,.asset-cleanup_page_wpassetcleanup_settings .input_style_choices li:last-child{margin-right:0}#wpacu-assets-list-by-location-selected{background:0 0;border:1px solid #e7e7e7;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;padding:8px;clear:both}.notice.notice-success+.wpacu-wrap.wpacu-settings-area{margin-top:20px}.wpacu-form-table th{vertical-align:top;text-align:left;padding:5px 20px 20px 0;width:200px;line-height:1.3;font-weight:600}.wpacu-form-table th label{color:#23282d;font-weight:600;font-size:14px;text-shadow:none;vertical-align:middle;cursor:pointer}.wpacu-form-table td{padding-bottom:25px}.wpacu-form-table td:last-child p:last-child{margin:0}.wpacu-form-table label input[type=checkbox]{height:19px;width:20px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.wpacu-form-table label input[type=checkbox]:checked,.wpacu-form-table label input[type=checkbox]:hover{border:1px solid green}.wpacu-form-table label input[type=checkbox]:checked:before{color:#52af00;font:400 24px/1 dashicons}#wpacu-settings-vertical-tab-wrap{display:table;width:100%}#wpacu-settings-vertical-tab-wrap *{box-sizing:border-box}.wpacu-settings-tab{display:table-cell;width:19%;height:100%;vertical-align:top}.wpacu-settings-tab a{text-decoration:none;border-left:3px solid transparent;display:block;background-color:#f1f1f1;color:#004567;padding:17px 16px;width:100%;outline:0;text-align:left;cursor:pointer;font-size:14px;font-weight:600;border-bottom:1px solid #ccc}.wpacu-settings-tab a:first-child{border-top:1px solid transparent!important}.wpacu-settings-tab a:last-child{border-bottom:1px solid transparent!important}.wpacu-settings-tab a:hover{background-color:#fff;border-left:3px solid #004567;position:relative}.wpacu-settings-tab a.active{color:#004567;background-color:#fff;border-left:3px solid #004567;position:relative;border-bottom:1px solid #ccc}.wpacu-settings-tab a.active:after{content:'';position:absolute;height:100%;width:1px;top:0;right:-1px;background-color:#fff}.wpacu-settings-tab-content{background-color:#fff;display:none;padding:12px 18px;width:79%;border-left:none;height:100%;border-top-right-radius:10px;border-bottom-right-radius:10px}.wpacu-settings-tab-content h2{padding:0 0 15px;border-bottom:1px solid #e7e7e7}.wpacu-settings-tab-content.active{display:table-cell}#wpacu_minify_css_exceptions_area,#wpacu_minify_js_exceptions_area{margin:16px 0 0}#wpacu-update-button-area{position:relative;margin-left:19%}#wpacu-update-button-area.no-left-margin{margin-left:0}#wpacu-update-button-area p{margin-top:10px}#wpacu-update-button-area .button{padding:5px 18px;height:38px;font-size:15px}#wpacu-updating-settings{position:absolute;margin-left:183px;top:19px;display:none}#combine_loaded_js_info_area{position:relative}#combine_loaded_js_info_area.locked-for-pro:before{position:absolute;content:'';height:100%;width:100%;background:#fff;opacity:.5;z-index:10000}.wrap_bulk_unload_options{width:auto;display:inline-flex;-webkit-flex-wrap:wrap;flex-wrap:wrap}.wrap_bulk_unload_options .wpacu_asset_options_wrap{flex-grow:1;margin:5px 10px 14px 0!important;padding:8px 10px 2px!important}.wrap_bulk_unload_options .wpacu_asset_options_wrap .wpacu_slider_text{position:relative!important;vertical-align:top;left:inherit!important;top:inherit!important}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch{position:relative;display:inline-block;min-width:52px;width:52px;height:29px;margin-right:5px!important}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch input{display:none}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch .wpacu_slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;-webkit-transition:.15s;transition:.15s}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch .wpacu_slider:before{position:absolute;content:'';height:22px;width:22px;left:4px;bottom:4px;background-color:#fff;-webkit-transition:.15s;transition:.15s}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch input:checked+.wpacu_slider{background-color:#C00}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch input:focus+.wpacu_slider{box-shadow:0 0 1px #C00}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch input:checked+.wpacu_slider:before{-webkit-transform:translateX(22px);-ms-transform:translateX(22px);transform:translateX(22px)}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch .wpacu_slider.wpacu_round:before{border-radius:50%}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_slider_text{position:absolute;left:62px;top:3px}.wpacu_asset_row input{height:auto;min-height:16px}.wpacu_asset_row td{width:100%;text-align:left}.wpacu_asset_row td p:last-child{margin-bottom:0!important}.wpacu_asset_row td .wpacu_asset_options_wrap{padding:8px 10px;margin:15px 0;background:#fff;border:1px solid #eee;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.wpacu_asset_row td .wpacu_asset_options_wrap p:first-child{margin-top:0;margin-bottom:8px!important}.wpacu_asset_row p.wpacu_handle{margin-top:0}.wpacu_asset_row li.wpacu_unload_this_page{display:block!important;position:relative}.wpacu-clearfix:after,.wpacu-clearfix:before{display:table;content:''}.wpacu-contract-expand-area{width:100%;margin:20px 0 0}.wpacu-contract-expand-area .col-left{float:left}.wpacu-contract-expand-area .col-left h4{margin-bottom:0}.wpacu-contract-expand-area .col-right{float:right}.wpacu-clearfix:after{clear:both}.wpacu-wp-button{color:#555;border-color:#ccc;background:#f7f7f7;box-shadow:0 1px 0 #ccc;vertical-align:top}body.wp-admin .wpacu-wp-button{font-size:13px;line-height:26px;height:28px}.wpacu-wp-button.wpacu-wp-button-secondary{display:inline-block;text-decoration:none;height:auto;margin:0 5px 0 0;padding:0 10px 1px;cursor:pointer;border-width:1px;border-style:solid;-webkit-appearance:none;border-radius:3px;white-space:nowrap;box-sizing:border-box}.wpacu-wp-button:hover{background:#fafafa;border-color:#999;color:#23282d}.distinguish-asset-list{list-style:none;margin-left:0;margin-bottom:5px;display:inline-block}.distinguish-asset-list li{float:left;margin-right:20px}.distinguish-asset-list li:last-child{margin-right:0}body[class*=asset-cleanup-pro] a.wpacu-plugin-contracted-wrap-link{padding:16px 6px 16px 41px!important}body[class*=asset-cleanup-pro] .wpacu-area-open .wpacu-plugin-toggle-all{font-size:12px!important;width:calc(100% - 26px)!important}body.wp-admin .wpacu-area-expanded .wpacu-plugin-toggle-all{top:5px}body.wp-admin .wpacu-area-expanded .wpacu-plugin-toggle-all ul li{font-size:12px!important}.wpacu-assets-collapsible-wrap{border:1px solid #cdcdcd}.wpacu-assets-collapsible-wrap.wpacu-by-location{margin-bottom:15px}.wpacu-assets-collapsible-wrap.wpacu-wrap-all,.wpacu-assets-collapsible-wrap.wpacu-wrap-styles{margin-top:20px}.wpacu-assets-collapsible-wrap.wpacu-wrap-scripts{margin-top:10px}.wpacu-assets-collapsible-wrap.wpacu-by-location>a.wpacu-assets-collapsible{padding:15px 15px 15px 43px}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu_list_table{border-width:0;margin:0;border-spacing:inherit;width:100%;box-shadow:3px 3px 2px #ddd;border-bottom-right-radius:5px;border-top-right-radius:5px}.wpacu-assets-collapsible-wrap.wpacu-by-location span.wpacu-child-location-name{font-weight:600}.wpacu-assets-collapsible-wrap.wpacu-by-location span.wpacu-child-location-version{font-weight:200}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-location-child-area[data-wpacu-plugin=oxygen] .icon-area{border-radius:50%}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-location-child-area .wpacu-plugin-toggle-all{display:inline-block;padding:0;font-size:13px;width:100%;width:calc(100% + 46px);min-width:250px;position:absolute;left:100%;left:calc(100% + 6px);margin:0;top:4px}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-location-child-area .wpacu-plugin-toggle-all ul{display:inline-block;margin:0;list-style:none;padding-left:13px;padding-top:0}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-location-child-area .wpacu-plugin-toggle-all ul li{padding:0;margin:0;line-height:normal;font-size:14px}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-location-child-area .wpacu-plugin-toggle-all ul li:first-child{font-style:italic;margin-bottom:5px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-themes .wpacu-assets-collapsible-content>table:last-child{margin-bottom:20px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-themes .wpacu-assets-collapsible-content .wpacu-location-child-area .wpacu-area-title{display:inline;position:relative;z-index:1}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-themes .wpacu-assets-collapsible-content .wpacu-location-child-area .wpacu-area-title:after{content:'';position:absolute;width:100%;left:0;bottom:0;height:1px;background-color:#fdfdfd}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content .wpacu-plugin-assets-wrap{padding:0 0 10px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content .wpacu-plugin-assets-wrap.wpacu-area-open .wpacu-plugin-toggle-all{display:inline-block;padding:7px 12px 16px;font-size:14px;width:100%;text-align:left;border-left:1px solid #cdcdcd;border-right:1px solid #cdcdcd}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content .wpacu-plugin-assets-wrap.wpacu-area-open.wpacu-plugin-assets-last{margin-bottom:18px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link{color:inherit;text-decoration:none;font-weight:inherit;font-style:inherit;font-size:105%;line-height:initial;height:auto;margin:14px 0 0;padding:13px 6px 14px 39px;position:relative;display:block}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link:after{position:absolute;font-size:18px;font-family:Dashicons;right:12px;top:14px;content:"\f132"}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link.wpacu-link-open:after{content:"\f460"}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link.wpacu-link-closed{border:1px solid #cdcdcd}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link:hover{border:1px solid #878787;background:#f9f9f9}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link:hover.wpacu-link-closed{box-shadow:3px 3px 2px #ddd}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link.wpacu-link-open{border-top:1px solid #cdcdcd;border-left:1px solid #cdcdcd;border-right:1px solid #cdcdcd;border-bottom:none}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link.wpacu-link-closed.wpacu-last-wrap-link{margin-bottom:20px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link .icon-plugin-default{top:10px;left:10px;width:30px;height:30px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link .icon-plugin-default .icon-area{width:30px;height:30px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link .icon-plugin-default .icon-area:before{font-size:22px;line-height:22px;top:4px;left:5px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link .wpacu-area-title{position:relative;padding:17px 10px 16px 46px;z-index:1}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link .wpacu-area-title:after{content:'';position:absolute;width:100%;left:0;bottom:0;height:1px;background-color:#fdfdfd}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link.wpacu-area-last{margin-bottom:18px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content .wpacu-area-open{padding:0;max-height:100%}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content .wpacu-area-closed{padding:0;overflow:hidden;max-height:0}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content>table:last-child{margin-bottom:20px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-themes .wpacu-assets-collapsible-content .wpacu-location-child-area .wpacu-area-title{margin-top:0;margin-bottom:-1px;padding:14px 10px 16px 12px!important}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-themes .wpacu-assets-collapsible-content .wpacu-location-child-area .wpacu-area-title.wpacu-theme-has-icon{padding:18px 10px 16px 58px!important}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-assets-collapsible-content .wpacu-location-child-area{margin-top:22px;margin-bottom:-1px;font-size:110%;line-height:initial}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-assets-collapsible-content .wpacu-location-child-area.wpacu-location-child-area-first{margin-top:2px}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-assets-collapsible-content .wpacu-location-child-area.wpacu-area-expanded .wpacu-area-title{display:inline-block;z-index:1;padding:17px 10px 16px 46px}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-assets-collapsible-content .wpacu-location-child-area .wpacu-area-title{display:inline;border-top-right-radius:8px;border-top-left-radius:8px;background-color:#f9f9f9;border-left:1px solid #cdcdcd;border-top:1px solid #cdcdcd;border-bottom:1px solid transparent;border-right:1px solid #cdcdcd;position:relative}.wpacu-assets-collapsible-wrap.wpacu-by-location .icon-plugin-default{position:absolute;padding:0;top:10px;left:10px;width:37px;height:37px}.wpacu-assets-collapsible-wrap.wpacu-by-location .icon-plugin-default:not(.has-icon){color:#b4b9be;background-color:#eee;box-shadow:inset 0 0 10px rgba(160,165,170,.15);-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.wpacu-assets-collapsible-wrap.wpacu-by-location .icon-plugin-default:not(.has-icon) .icon-area:before{content:"\f106";font-family:Dashicons;position:absolute;font-size:28px;line-height:28px;top:5px;left:5px}.wpacu-assets-collapsible-wrap.wpacu-by-location .icon-plugin-default .icon-area{position:relative;width:37px;height:37px}.wpacu-assets-collapsible-wrap.wpacu-by-location .icon-theme{position:absolute;padding:0;top:10px;left:10px;width:37px;height:37px}.wpacu-assets-collapsible-wrap.wpacu-by-location .icon-theme .icon-area{position:relative;width:37px;height:37px}.wpacu-assets-collapsible-wrap.wpacu-wp_core{border:1px solid #c00}.wpacu-assets-collapsible-wrap.wpacu-external .wpacu-assets-collapsible-content,.wpacu-assets-collapsible-wrap.wpacu-wp_core .wpacu-assets-collapsible-content{padding:0}.wpacu-assets-collapsible-wrap.wpacu-external .wpacu-assets-collapsible-content .wpacu_list_table,.wpacu-assets-collapsible-wrap.wpacu-wp_core .wpacu-assets-collapsible-content .wpacu_list_table{width:100%;margin:0}.wpacu-assets-collapsible-wrap.wpacu-external .wpacu-assets-collapsible-content .wpacu_list_table .wpacu_asset_row td,.wpacu-assets-collapsible-wrap.wpacu-wp_core .wpacu-assets-collapsible-content .wpacu_list_table .wpacu_asset_row td{border-left:hidden;border-right:hidden;border-bottom:1px solid #cdcdcd}.wpacu-assets-collapsible-wrap.wpacu-external .wpacu-assets-collapsible-content .wpacu_list_table .wpacu_asset_row:last-child,.wpacu-assets-collapsible-wrap.wpacu-wp_core .wpacu-assets-collapsible-content .wpacu_list_table .wpacu_asset_row:last-child{margin-bottom:0!important}.wpacu-assets-collapsible-wrap.wpacu-external .wpacu-assets-collapsible-content .wpacu_list_table .wpacu_asset_row:last-child td:last-child,.wpacu-assets-collapsible-wrap.wpacu-wp_core .wpacu-assets-collapsible-content .wpacu_list_table .wpacu_asset_row:last-child td:last-child{border-bottom:hidden}a.wpacu-assets-collapsible{color:#000;font-size:20px;text-decoration:none;display:block;position:relative;background-color:#f1f3f8;cursor:pointer;padding:15px 15px 15px 36px;width:auto;border:none;text-align:left;outline:0}a.wpacu-assets-collapsible>span.dashicons{font-size:25px;line-height:normal;position:absolute;top:15px;top:calc(50% - 21px);left:22px;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}a.wpacu-assets-collapsible:hover{background-color:#f1f3f8;text-decoration:none}a.wpacu-assets-collapsible:after{position:absolute;font-size:22px;font-family:Dashicons;right:14px;top:16px}a.wpacu-assets-collapsible:not(.wpacu-assets-collapsible-active):after{content:"\f132"}a.wpacu-assets-collapsible.wpacu-assets-collapsible-active{background-color:#f1f3f8}a.wpacu-assets-collapsible.wpacu-assets-collapsible-active:after{content:"\f460"}.wpacu-assets-collapsible-content{padding:0 16px;max-height:0;overflow:hidden;background-color:#fbfbfb8c}.wpacu-assets-collapsible-content .wpacu-assets-note{margin:0;padding:15px 15px 10px}.wpacu-assets-collapsible-content>div:not(.wpacu-assets-table-list-wrap){padding:16px 0 0}.wpacu-assets-collapsible-content>div>p:first-child{margin-top:0}.wpacu-assets-collapsible-content.wpacu-open{max-height:100%}a.wpacu-assets-inline-code-collapsible{color:inherit;font-size:14px;text-decoration:none;display:inline-block;position:relative;cursor:pointer;width:auto;outline:0;background:#f1f3f8;border:1px solid #cdcdcd;padding:4px 21px 4px 8px;margin:0 0 0 6px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}a.wpacu-assets-inline-code-collapsible:hover{border:1px solid #5c5c5c}a.wpacu-assets-inline-code-collapsible:after{position:absolute;font-size:15px;font-family:Dashicons;right:-3px;top:-1px;height:14px;width:14px;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}a.wpacu-assets-inline-code-collapsible:not(.wpacu-assets-inline-code-collapsible-active):after{content:"\f132"}a.wpacu-assets-inline-code-collapsible.wpacu-assets-inline-code-collapsible-active:after{content:"\f460"}.wpacu-assets-inline-code-collapsible-content{font-size:80%;padding:0 8px;max-height:0;overflow:hidden;background-color:#fbfbfb8c}.wpacu-assets-inline-code-collapsible-content>div{padding:7px 8px 0}.wpacu-assets-inline-code-collapsible-content>div>p{line-height:normal!important}.wpacu-assets-inline-code-collapsible-content>div>p:first-child{margin-top:0}.wpacu-assets-inline-code-collapsible-content.wpacu-open{max-height:100%}.wpacu-wrap-choose-position,.wpacu-wrap-choose-position>div{display:inline}.wpacu-wrap-choose-position select{width:auto;font-size:inherit;display:inline;margin-left:6px;margin-right:4px}.wpacu_table_wrap{margin:20px 0 0}.wpacu_table_wrap>table{border:1px solid #cdcdcd}.wpacu_table_wrap .table{width:100%;max-width:100%;margin-bottom:1rem;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.wpacu_table_wrap .table td,.wpacu_table_wrap .table th{padding:.75rem;vertical-align:top;border-top:1px solid #eceeef}.wpacu_table_wrap .table thead th{vertical-align:bottom;border-bottom:2px solid #eceeef}.wpacu_table_wrap .table tbody+tbody{border-top:2px solid #eceeef}.wpacu_table_wrap .table .table{background-color:#fff}.wpacu_table_wrap .table-sm td,.wpacu_table_wrap .table-sm th{padding:.3rem}.wpacu_table_wrap .table-bordered,.wpacu_table_wrap .table-bordered td,.wpacu_table_wrap .table-bordered th{border:1px solid #eceeef}.wpacu_table_wrap .table-bordered thead td,.wpacu_table_wrap .table-bordered thead th{border-bottom-width:2px}.wpacu_table_wrap .table-striped tbody tr:nth-of-type(even){background-color:#f9f9f9}.wpacu_table_wrap .table-striped tbody tr:nth-of-type(odd){background-color:#fff}.wpacu_table_wrap .table-active,.wpacu_table_wrap .table-active>td,.wpacu_table_wrap .table-active>th,.wpacu_table_wrap .table-hover .table-active:hover,.wpacu_table_wrap .table-hover .table-active:hover>td,.wpacu_table_wrap .table-hover .table-active:hover>th,.wpacu_table_wrap .table-hover tbody tr:hover{background-color:rgba(0,0,0,.075)}.wpacu_table_wrap .table-success,.wpacu_table_wrap .table-success>td,.wpacu_table_wrap .table-success>th{background-color:#dff0d8}.wpacu_table_wrap .table-hover .table-success:hover,.wpacu_table_wrap .table-hover .table-success:hover>td,.wpacu_table_wrap .table-hover .table-success:hover>th{background-color:#d0e9c6}.wpacu_table_wrap .table-info,.wpacu_table_wrap .table-info>td,.wpacu_table_wrap .table-info>th{background-color:#d9edf7}.wpacu_table_wrap .table-hover .table-info:hover,.wpacu_table_wrap .table-hover .table-info:hover>td,.wpacu_table_wrap .table-hover .table-info:hover>th{background-color:#c4e3f3}.wpacu_table_wrap .table-warning,.wpacu_table_wrap .table-warning>td,.wpacu_table_wrap .table-warning>th{background-color:#fcf8e3}.wpacu_table_wrap .table-hover .table-warning:hover,.wpacu_table_wrap .table-hover .table-warning:hover>td,.wpacu_table_wrap .table-hover .table-warning:hover>th{background-color:#faf2cc}.wpacu_table_wrap .table-danger,.wpacu_table_wrap .table-danger>td,.wpacu_table_wrap .table-danger>th{background-color:#f2dede}.wpacu_table_wrap .table-hover .table-danger:hover,.wpacu_table_wrap .table-hover .table-danger:hover>td,.wpacu_table_wrap .table-hover .table-danger:hover>th{background-color:#ebcccc}.wpacu_table_wrap .thead-inverse th{color:#fff;background-color:#292b2c}.wpacu_table_wrap .thead-default th{color:#464a4c;background-color:#eceeef}.wpacu_table_wrap .table-inverse{color:#fff;background-color:#292b2c}.wpacu_table_wrap .table-inverse td,.wpacu_table_wrap .table-inverse th,.wpacu_table_wrap .table-inverse thead th{border-color:#fff}.wpacu_table_wrap .table-inverse.table-bordered,.wpacu_table_wrap .table-responsive.table-bordered{border:0}.wpacu_table_wrap .table-responsive{display:block;width:100%;overflow-x:auto;-ms-overflow-style:-ms-autohiding-scrollbar}.wp-list-table .wpacu_remove_global_attr_row.wpacu_selected,.wp-list-table .wpacu_restore_position_row.wpacu_selected{background:#e7e7e7}ul.hire-reasons{margin-bottom:20px}ul.hire-reasons li{font-size:14px;line-height:22px;margin-bottom:12px}ul.hire-reasons li .dashicons{font-size:23px;line-height:23px}ul.hire-reasons li .dashicons.dashicons-yes{color:green}ol.getting-started li{font-size:14px;line-height:22px;margin-bottom:8px}.wpacu-get-help-wrap p{font-size:14px}.wpacu-get-help-wrap .help-content-wrap{margin:20px 0 25px;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-moz-flex;display:-webkit-flex;display:flex;width:100%}@media only screen and (min-width:768px){.wpacu-get-help-wrap .help-content-wrap{-webkit-box-align:start;-ms-flex-align:start;-ms-grid-row-align:flex-start;align-items:flex-start}}@media only screen and (max-width:767px){.wpacu-get-help-wrap .help-content-wrap{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.wpacu-get-help-wrap .help-content-wrap .help-content{padding:15px;background:#fff;border:1px solid #E0E0E0;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;box-shadow:2px 3px 8px 0 #231f2038;flex:1 1 50%;margin-bottom:10px}.wpacu-get-help-wrap .help-content-wrap .help-content .content-title{margin:5px 0 15px}.wpacu-get-help-wrap .help-content-wrap .help-content .cols-wrap{width:100%;margin:0 auto;display:table}.wpacu-get-help-wrap .help-content-wrap .help-content .wpacu-image-area{margin:5px 0 0;position:relative}.wpacu-get-help-wrap .help-content-wrap .help-content .wpacu-image-area.col-left{float:left;width:48%}.wpacu-get-help-wrap .help-content-wrap .help-content .wpacu-image-area.col-right{float:right;width:48%}.wpacu-get-help-wrap .help-content-wrap .help-content .wpacu-image-area.activate-plugin img{max-width:280px}.wpacu-get-help-wrap .help-content-wrap .help-content .wpacu-image-area img{width:99%;margin:8px 0;border:1px solid #cdcdcd;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.wpacu-get-help-wrap .help-content-wrap .help-content.upgrade-help{order:2}@media only screen and (min-width:768px){.wpacu-get-help-wrap .help-content-wrap .help-content{margin-right:24px}.wpacu-get-help-wrap .help-content-wrap .help-content.upgrade-help{margin-right:0}}.wpacu-get-help-wrap .help-content-wrap .help-content.tech-help{order:1}@media only screen and (max-width:767px){.wpacu-get-help-wrap .help-content-wrap .help-content.tech-help{margin-bottom:30px}}.wpacu-get-help-wrap .help-content-wrap .help-content ul{list-style:none;padding-left:0}.wpacu-get-help-wrap .help-content-wrap .help-content ul li{font-size:14px;line-height:22px;margin-bottom:15px}.wpacu-get-help-wrap .help-content-wrap .help-content p:last-child,.wpacu-get-help-wrap .help-content-wrap .help-content ul li:last-child{margin-bottom:0}#wpacu-license-data-remove-area{display:none;margin:10px 0 25px}#wpacu-license-data-remove-area.wpacu-visible{display:block}span#wpacu-license-data-removed-msg{display:block;padding-left:26px}#wpacu-warning-read{display:none;margin:10px 0}#wpacu-warning-read span.dashicons-warning{color:#c00}#wpacu-warning-read.wpacu-visible{display:block}#wpacu-reset-submit-area{margin:10px 0;clear:both}#wpacu-reset-submit-btn{margin:10px 0 0}.wpacu-tools-area{margin:10px 20px 0 2px}.wpacu-tools-area .wpacu-tools-container{background:#fff;padding:15px;border:1px solid #cdcdcd;width:96%}.wpacu-tools-area .wpacu-tools-container form>div:first-child{margin:0 0 10px}.wpacu-tools-area .wpacu-tools-container form .wpacu-warning{display:none;box-sizing:border-box;margin-top:10px}.wpacu-tools-area .wpacu-tools-container form .wpacu-warning p{margin:0 0 10px;line-height:22px}.wpacu-tools-area .wpacu-tools-container form .wpacu-warning p:only-child{margin:0}.wpacu-tools-area .wpacu-tools-container form .wpacu-warning ul{font-size:13px;list-style-type:disc;padding-left:30px}.wpacu-tools-area .wpacu-tools-container form .wpacu-warning.wpacu-visible{display:block}.wpacu-about-wrap .wpacu-about-text img{width:auto;height:150px;position:absolute;top:20px;right:-20px}@media only screen and (max-width:767px){.wpacu-about-wrap h1{margin:20px}.wpacu-about-wrap .wpacu-about-text img{display:none}.wpacu-about-wrap .wpacu-about-text{margin:20px}}.wpacu-about-wrap .about-wrap-content .area-title{font-size:19px;line-height:19px;margin-bottom:0}.wpacu-about-wrap hr{margin:10px 0}.wpacu-lite-vs-pro-wrap ul{display:flex;top:0;z-index:10;padding-bottom:14px}.wpacu-lite-vs-pro-wrap li{list-style:none;flex:1}.wpacu-lite-vs-pro-wrap li:last-child{border-right:1px solid #DDD}.wpacu-lite-vs-pro-wrap button{width:100%;border:1px solid #DDD;border-right:0;border-top:0;padding:10px;background:#FFF;font-size:14px;font-weight:700;height:60px;color:#999}.wpacu-lite-vs-pro-wrap li.active button{background:#F5F5F5;color:#000}.wpacu-lite-vs-pro-wrap table{border-collapse:collapse;table-layout:fixed;width:100%}.wpacu-lite-vs-pro-wrap th{background:inherit}.wpacu-lite-vs-pro-wrap tr.first{background:inherit;font-size:18px}.wpacu-lite-vs-pro-wrap tr.first .bg-lite{border-top:4px solid #6d6e70;background:#fff;color:#6d6e70}.wpacu-lite-vs-pro-wrap tr.first .bg-pro{border-top:4px solid green;background:#fff;color:green}.wpacu-lite-vs-pro-wrap tr:not(.first){background:#fff}.wpacu-lite-vs-pro-wrap tr:not(:last-child):hover{background:#f8f8f8}.wpacu-lite-vs-pro-wrap td,.wpacu-lite-vs-pro-wrap th{height:53px;border:1px solid #DDD;padding:10px 16px;empty-cells:show;text-align:left}@media only screen and (max-width:767px){.wpacu-lite-vs-pro-wrap td,.wpacu-lite-vs-pro-wrap th{font-size:14px}}.wpacu-lite-vs-pro-wrap td+td,.wpacu-lite-vs-pro-wrap th+th{text-align:center;display:none}.wpacu-lite-vs-pro-wrap td.default{display:table-cell}.wpacu-lite-vs-pro-wrap .txt-l{font-size:28px;font-weight:700}.wpacu-lite-vs-pro-wrap .txt-top{position:relative;top:-9px;left:-2px}.wpacu-lite-vs-pro-wrap svg{width:18px;height:18px}.wpacu-lite-vs-pro-wrap svg path{fill:green}.wpacu-lite-vs-pro-wrap .tick{color:#2CA01C}.wpacu-lite-vs-pro-wrap .tick img{fill:#2CA01C}@media only screen and (max-width:767px){.wpacu-lite-vs-pro-wrap .txt-l{font-size:20px}.wpacu-lite-vs-pro-wrap .tick{font-size:15px}}.wpacu-lite-vs-pro-wrap .na{font-size:18px;opacity:.3;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=30)"}.wpacu-lite-vs-pro-wrap .hide{border:0;background:0 0}.wpacu-lite-vs-pro-wrap td,.wpacu-lite-vs-pro-wrap th{display:table-cell!important;width:auto}.wpacu-lite-vs-pro-wrap td+td,.wpacu-lite-vs-pro-wrap th+th{width:130px}@media only screen and (max-width:767px){.wpacu-lite-vs-pro-wrap .na{font-size:15px}.wpacu-lite-vs-pro-wrap td+td,.wpacu-lite-vs-pro-wrap th+th{width:42px}}@media only screen and (min-width:768px){.wpacu-lite-vs-pro-wrap td .button{font-size:16px!important}}@media only screen and (max-width:767px){.wpacu-lite-vs-pro-wrap td .button{font-size:14px!important;padding:0 20px!important}.wpacu-lite-vs-pro-wrap td .button.button-primary{margin-top:6px;margin-bottom:14px}}@media only screen and (min-width:768px){.wpacu-lite-vs-pro-wrap{margin-bottom:40px;clear:both}}.wpacu-video-areas>div{padding:20px;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.wpacu-video-areas>div:nth-child(odd){background:#fff}.wpacu-video-areas>div:nth-child(even){background:inherit}@media only screen and (min-width:1200px){.wpacu-video-areas .wpacu-video-area-wrapper{margin:0 0 15px;display:flex}.wpacu-video-areas .wpacu-video-area-wrapper .wpacu-col-right{padding:0 20px 0 25px}}@media only screen and (min-width:992px) and (max-width:1199px){.wpacu-video-areas .wpacu-video-area-wrapper{margin:0 0 40px}}.wpacu-video-areas .wpacu-video-area-wrapper ol{font-size:14px}.wpacu-video-areas .wpacu-video-area-wrapper ul{font-size:14px;list-style:disc;margin-left:22px}@media only screen and (min-width:1200px){.wpacu-video-areas .wpacu-video-area-wrapper .wpacu-col-right p:first-child{margin-top:0}.wpacu-video-areas .wpacu-video-area-wrapper .wpacu-col-right p:last-child{margin-bottom:0}}@media only screen and (max-width:1199px){.wpacu-video-areas .wpacu-video-area-wrapper .wpacu-video-wrapper{position:relative;padding-bottom:56.25%;padding-top:30px;height:0;overflow:hidden}.wpacu-video-areas .wpacu-video-area-wrapper .wpacu-video-wrapper iframe{position:absolute;top:0;left:0;width:100%;height:100%}}#wpassetcleanup_asset_list.postbox h2{padding-left:52px!important;position:relative}#wpassetcleanup_asset_list.postbox h2:before{content:'';position:absolute;background-image:url(images/wpacu-logo-transparent-bg-v1.png);background-size:cover;top:6px;left:13px;width:33px;height:26px;opacity:.8;-webkit-filter:grayscale(100%);filter:grayscale(100%)}body.wp-admin .wpacu-modal{display:none;position:fixed;z-index:1000000;padding-top:15%;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#000;background-color:rgba(0,0,0,.4)}body.wp-admin .wpacu-modal-content{background-color:#fefefe;margin:auto;padding:20px;border:1px solid #888;width:80%;max-width:600px;border-radius:10px}body.wp-admin .wpacu-close{color:#aaa;float:right;font-size:28px;font-weight:700}body.wp-admin .wpacu-close:focus,body.wp-admin .wpacu-close:hover{color:#000;text-decoration:none;cursor:pointer}.wpacu-bulk-changes-tabs{display:table;position:relative;overflow:hidden;margin:0;width:100%}.wpacu-bulk-changes-tabs li{border-top:1px solid rgba(40,44,42,.1);border-left:1px solid rgba(40,44,42,.1);border-bottom:1px solid rgba(40,44,42,.1);float:left;line-height:38px;padding:0;position:relative;margin-bottom:12px}.wpacu-bulk-changes-tabs li:last-child{border-right:1px solid rgba(40,44,42,.1)}.wpacu-bulk-changes-tabs a{position:relative;background:rgba(40,44,42,.05);color:#004567;font-size:14px;font-weight:500;display:block;letter-spacing:0;outline:0;padding:6px 20px;text-decoration:none;border-top:3px solid transparent}.wpacu-bulk-changes-tabs a:hover{background:#f1f1f1;border-top:3px solid transparent}.wpacu-bulk-changes-tabs .current a{background:#fff;border-top:3px solid #004567}.wpacu-bulk-changes-tabs .current a:hover{background:#fff}.wpacu-bulk-changes-tabs .current a:after,.wpacu-bulk-changes-tabs .current a:before{top:100%;left:50%;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}.wpacu-bulk-changes-tabs .current a:after{border-color:rgba(136,183,213,0);border-top-color:#fff;border-width:12px;margin-left:-12px}.wpacu-bulk-changes-tabs .current a:before{border-color:rgba(194,225,245,0);border-top-color:rgba(40,44,42,.1);border-width:13px;margin-left:-13px}
|
classes/AdminBar.php
CHANGED
@@ -41,22 +41,22 @@ class AdminBar
|
|
41 |
$wp_admin_bar->add_menu(array(
|
42 |
'id' => 'assetcleanup-parent',
|
43 |
'title' => $topTitle,
|
44 |
-
'href' => admin_url
|
45 |
));
|
46 |
|
47 |
$wp_admin_bar->add_menu(array(
|
48 |
'parent' => 'assetcleanup-parent',
|
49 |
'id' => 'assetcleanup-settings',
|
50 |
-
'title' =>
|
51 |
'href' => admin_url( 'admin.php?page=' . WPACU_PLUGIN_ID . '_settings')
|
52 |
));
|
53 |
|
54 |
$wp_admin_bar->add_menu( array(
|
55 |
'parent' => 'assetcleanup-parent',
|
56 |
'id' => 'assetcleanup-clear-css-js-files-cache',
|
57 |
-
'title' =>
|
58 |
-
'href' => wp_nonce_url(
|
59 |
-
'assetcleanup_clear_assets_cache
|
60 |
) );
|
61 |
|
62 |
// Only trigger in the front-end view
|
@@ -70,7 +70,7 @@ class AdminBar
|
|
70 |
$wp_admin_bar->add_menu(array(
|
71 |
'parent' => 'assetcleanup-parent',
|
72 |
'id' => 'assetcleanup-homepage',
|
73 |
-
'title' =>
|
74 |
'href' => $homepageManageAssetsHref
|
75 |
));
|
76 |
} else {
|
@@ -80,8 +80,8 @@ class AdminBar
|
|
80 |
$wp_admin_bar->add_menu( array(
|
81 |
'parent' => 'assetcleanup-parent',
|
82 |
'id' => 'assetcleanup-homepage',
|
83 |
-
'title' =>
|
84 |
-
'href' => admin_url
|
85 |
) );
|
86 |
}
|
87 |
}
|
@@ -91,7 +91,7 @@ class AdminBar
|
|
91 |
$wp_admin_bar->add_menu(array(
|
92 |
'parent' => 'assetcleanup-parent',
|
93 |
'id' => 'assetcleanup-jump-to-assets-list',
|
94 |
-
'title' =>
|
95 |
'href' => '#wpacu_wrap_assets'
|
96 |
));
|
97 |
}
|
@@ -99,14 +99,14 @@ class AdminBar
|
|
99 |
$wp_admin_bar->add_menu(array(
|
100 |
'parent' => 'assetcleanup-parent',
|
101 |
'id' => 'assetcleanup-bulk-unloaded',
|
102 |
-
'title' =>
|
103 |
'href' => admin_url( 'admin.php?page=' . WPACU_PLUGIN_ID . '_bulk_unloads')
|
104 |
));
|
105 |
|
106 |
$wp_admin_bar->add_menu(array(
|
107 |
'parent' => 'assetcleanup-parent',
|
108 |
'id' => 'assetcleanup-support-forum',
|
109 |
-
'title' =>
|
110 |
'href' => 'https://wordpress.org/support/plugin/wp-asset-clean-up',
|
111 |
'meta' => array('target' => '_blank')
|
112 |
));
|
41 |
$wp_admin_bar->add_menu(array(
|
42 |
'id' => 'assetcleanup-parent',
|
43 |
'title' => $topTitle,
|
44 |
+
'href' => admin_url('admin.php?page=' . WPACU_PLUGIN_ID . '_settings')
|
45 |
));
|
46 |
|
47 |
$wp_admin_bar->add_menu(array(
|
48 |
'parent' => 'assetcleanup-parent',
|
49 |
'id' => 'assetcleanup-settings',
|
50 |
+
'title' => __('Settings', WPACU_PLUGIN_TEXT_DOMAIN),
|
51 |
'href' => admin_url( 'admin.php?page=' . WPACU_PLUGIN_ID . '_settings')
|
52 |
));
|
53 |
|
54 |
$wp_admin_bar->add_menu( array(
|
55 |
'parent' => 'assetcleanup-parent',
|
56 |
'id' => 'assetcleanup-clear-css-js-files-cache',
|
57 |
+
'title' => __('Clear CSS/JS Files Cache', WPACU_PLUGIN_TEXT_DOMAIN),
|
58 |
+
'href' => wp_nonce_url(admin_url('admin-post.php?action=assetcleanup_clear_assets_cache' . $goBackToCurrentUrl),
|
59 |
+
'assetcleanup_clear_assets_cache')
|
60 |
) );
|
61 |
|
62 |
// Only trigger in the front-end view
|
70 |
$wp_admin_bar->add_menu(array(
|
71 |
'parent' => 'assetcleanup-parent',
|
72 |
'id' => 'assetcleanup-homepage',
|
73 |
+
'title' => __('Manage Homepage Assets', WPACU_PLUGIN_TEXT_DOMAIN),
|
74 |
'href' => $homepageManageAssetsHref
|
75 |
));
|
76 |
} else {
|
80 |
$wp_admin_bar->add_menu( array(
|
81 |
'parent' => 'assetcleanup-parent',
|
82 |
'id' => 'assetcleanup-homepage',
|
83 |
+
'title' => __('Manage Page Assets', WPACU_PLUGIN_TEXT_DOMAIN),
|
84 |
+
'href' => admin_url('admin.php?page=' . WPACU_PLUGIN_ID . '_assets_manager&wpacu_for=homepage')
|
85 |
) );
|
86 |
}
|
87 |
}
|
91 |
$wp_admin_bar->add_menu(array(
|
92 |
'parent' => 'assetcleanup-parent',
|
93 |
'id' => 'assetcleanup-jump-to-assets-list',
|
94 |
+
'title' => __('Manage Page Assets', WPACU_PLUGIN_TEXT_DOMAIN),
|
95 |
'href' => '#wpacu_wrap_assets'
|
96 |
));
|
97 |
}
|
99 |
$wp_admin_bar->add_menu(array(
|
100 |
'parent' => 'assetcleanup-parent',
|
101 |
'id' => 'assetcleanup-bulk-unloaded',
|
102 |
+
'title' => __('Bulk Changes', WPACU_PLUGIN_TEXT_DOMAIN),
|
103 |
'href' => admin_url( 'admin.php?page=' . WPACU_PLUGIN_ID . '_bulk_unloads')
|
104 |
));
|
105 |
|
106 |
$wp_admin_bar->add_menu(array(
|
107 |
'parent' => 'assetcleanup-parent',
|
108 |
'id' => 'assetcleanup-support-forum',
|
109 |
+
'title' => __('Support Forum', WPACU_PLUGIN_TEXT_DOMAIN),
|
110 |
'href' => 'https://wordpress.org/support/plugin/wp-asset-clean-up',
|
111 |
'meta' => array('target' => '_blank')
|
112 |
));
|
classes/BulkUnloads.php
CHANGED
@@ -104,9 +104,7 @@ class BulkUnloads
|
|
104 |
*/
|
105 |
public function update()
|
106 |
{
|
107 |
-
|
108 |
-
|
109 |
-
if (! $wpacuIsValidPostRequest) {
|
110 |
return;
|
111 |
}
|
112 |
|
@@ -138,8 +136,11 @@ class BulkUnloads
|
|
138 |
{
|
139 |
?>
|
140 |
<div class="updated notice wpacu-notice is-dismissible">
|
141 |
-
<p><span class="dashicons dashicons-yes"></span>
|
142 |
-
|
|
|
|
|
|
|
143 |
</div>
|
144 |
<?php
|
145 |
}
|
@@ -151,8 +152,14 @@ class BulkUnloads
|
|
151 |
{
|
152 |
?>
|
153 |
<div class="updated notice wpacu-notice is-dismissible">
|
154 |
-
<p><span class="dashicons dashicons-yes"></span>
|
155 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
156 |
</div>
|
157 |
<?php
|
158 |
}
|
104 |
*/
|
105 |
public function update()
|
106 |
{
|
107 |
+
if (! Misc::getVar('post', 'wpacu_bulk_unloads_nonce')) {
|
|
|
|
|
108 |
return;
|
109 |
}
|
110 |
|
136 |
{
|
137 |
?>
|
138 |
<div class="updated notice wpacu-notice is-dismissible">
|
139 |
+
<p><span class="dashicons dashicons-yes"></span>
|
140 |
+
<?php
|
141 |
+
_e('The selected styles/scripts were removed from the global unload list and they will now load in the pages/posts, unless you have other rules that would prevent them from loading.', WPACU_PLUGIN_TEXT_DOMAIN);
|
142 |
+
?>
|
143 |
+
</p>
|
144 |
</div>
|
145 |
<?php
|
146 |
}
|
152 |
{
|
153 |
?>
|
154 |
<div class="updated notice wpacu-notice is-dismissible">
|
155 |
+
<p><span class="dashicons dashicons-yes"></span>
|
156 |
+
<?php
|
157 |
+
echo sprintf(
|
158 |
+
__('The selected styles/scripts were removed from the unload list for <strong><u>%s</u></strong> post type and they will now load in the pages/posts, unless you have other rules that would prevent them from loading.', WPACU_PLUGIN_TEXT_DOMAIN),
|
159 |
+
$this->wpacuPostType
|
160 |
+
);
|
161 |
+
?>
|
162 |
+
</p>
|
163 |
</div>
|
164 |
<?php
|
165 |
}
|
classes/Main.php
CHANGED
@@ -120,6 +120,13 @@ class Main
|
|
120 |
*/
|
121 |
public $isAjaxCall = false;
|
122 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
123 |
/**
|
124 |
* Populated in the Parser constructor
|
125 |
*
|
@@ -164,19 +171,22 @@ class Main
|
|
164 |
'query-monitor'
|
165 |
);
|
166 |
|
167 |
-
|
168 |
-
|
169 |
-
}
|
170 |
|
171 |
// Early Triggers
|
172 |
add_action('wp', array($this, 'setVarsBeforeUpdate'), 8);
|
173 |
add_action('wp', array($this, 'setVarsAfterAnyUpdate'), 10);
|
174 |
|
175 |
-
|
|
|
|
|
|
|
|
|
176 |
|
177 |
-
// "Direct" AJAX call
|
178 |
-
// Do not
|
179 |
-
if ($this->isAjaxCall) {
|
180 |
Misc::noAdminBarLoad();
|
181 |
}
|
182 |
|
@@ -188,7 +198,12 @@ class Main
|
|
188 |
// If there are reasons to prevent the unloading in case 'test mode' is enabled,
|
189 |
// then the prevention will trigger within filterStyles() and filterScripts()
|
190 |
|
191 |
-
if (!
|
|
|
|
|
|
|
|
|
|
|
192 |
// Unload Styles - HEAD
|
193 |
add_action( 'wp_print_styles', array( $this, 'filterStyles' ), 100000 );
|
194 |
|
@@ -225,11 +240,9 @@ class Main
|
|
225 |
self::$domGetType = $this->settings['dom_get_type'];
|
226 |
}
|
227 |
|
228 |
-
$calledFromDashboard = isset($_REQUEST[WPACU_LOAD_ASSETS_REQ_KEY]);
|
229 |
-
|
230 |
// Fetch the page in the background to see what scripts/styles are already loading
|
231 |
-
if ($
|
232 |
-
if ($
|
233 |
Misc::noAdminBarLoad();
|
234 |
}
|
235 |
|
@@ -278,14 +291,22 @@ class Main
|
|
278 |
*/
|
279 |
public function setVarsBeforeUpdate()
|
280 |
{
|
281 |
-
|
282 |
-
|
283 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
284 |
|
285 |
-
// it will update $this->isUpdateable;
|
286 |
$this->getCurrentPostId();
|
287 |
|
288 |
-
|
289 |
}
|
290 |
|
291 |
/**
|
@@ -293,7 +314,7 @@ class Main
|
|
293 |
*/
|
294 |
public function setVarsAfterAnyUpdate()
|
295 |
{
|
296 |
-
if
|
297 |
$this->globalUnloaded = $this->getGlobalUnload();
|
298 |
|
299 |
// [wpacu_lite]
|
@@ -711,7 +732,7 @@ class Main
|
|
711 |
}
|
712 |
|
713 |
$isFrontEndEditView = $this->isFrontendEditView;
|
714 |
-
$isDashboardEditView = (!$isFrontEndEditView &&
|
715 |
|
716 |
if (!$isFrontEndEditView && !$isDashboardEditView) {
|
717 |
return;
|
@@ -999,10 +1020,16 @@ class Main
|
|
999 |
$data = $this->setPageTemplate($data);
|
1000 |
}
|
1001 |
|
1002 |
-
|
1003 |
-
|
|
|
|
|
|
|
1004 |
|
1005 |
-
|
|
|
|
|
|
|
1006 |
|
1007 |
$this->parseTemplate('settings-frontend', $data, true);
|
1008 |
} elseif ($isDashboardEditView) {
|
@@ -1064,7 +1091,7 @@ class Main
|
|
1064 |
*/
|
1065 |
public function ajaxGetJsonListCallback()
|
1066 |
{
|
1067 |
-
$postId =
|
1068 |
$pageUrl = Misc::getVar('post', 'page_url'); // post, page, custom post type, home page etc.
|
1069 |
|
1070 |
// Not homepage, but a post/page? Check if it's published in case AJAX call
|
@@ -1103,8 +1130,8 @@ class Main
|
|
1103 |
if (! $wpacuList) {
|
1104 |
$data = array(
|
1105 |
'is_dashboard_view' => true,
|
1106 |
-
|
1107 |
-
'wp_remote_post' => $wpRemotePost
|
1108 |
);
|
1109 |
|
1110 |
$this->parseTemplate('meta-box-loaded', $data, true);
|
@@ -1192,9 +1219,9 @@ class Main
|
|
1192 |
return;
|
1193 |
}
|
1194 |
|
1195 |
-
$activePluginsIcons = Misc::fetchActiveFreePluginsIcons();
|
1196 |
|
1197 |
-
if ($activePluginsIcons) {
|
1198 |
echo print_r($activePluginsIcons, true)."\n";
|
1199 |
exit;
|
1200 |
}
|
@@ -1650,7 +1677,7 @@ class Main
|
|
1650 |
// This request specifically asks for all the assets to be loaded in order to print them in the assets management list
|
1651 |
// This is for the AJAX requests within the Dashboard, thus the admin needs to see all the assets,
|
1652 |
// including ones marked for unload, in case he/she decides to change their rules
|
1653 |
-
if
|
1654 |
return true;
|
1655 |
}
|
1656 |
|
@@ -1682,9 +1709,17 @@ class Main
|
|
1682 |
add_action ($current_screen->taxonomy . '_edit_form_fields', function ($tag) {
|
1683 |
?>
|
1684 |
<tr class="form-field">
|
1685 |
-
<th scope="row" valign="top"><label for="wpassetcleanup_list"><?php echo WPACU_PLUGIN_TITLE; ?> CSS & JavaScript Load Manager
|
1686 |
<td data-wpacu-taxonomy="<?php echo $tag->taxonomy; ?>">
|
1687 |
-
<img width="20" height="20" src="<?php echo WPACU_PLUGIN_URL; ?>/assets/icons/icon-lock.svg" valign="top" alt="" />
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1688 |
</td>
|
1689 |
</tr>
|
1690 |
<?php
|
120 |
*/
|
121 |
public $isAjaxCall = false;
|
122 |
|
123 |
+
/**
|
124 |
+
* Fetch CSS/JS list from the Dashboard
|
125 |
+
*
|
126 |
+
* @var bool
|
127 |
+
*/
|
128 |
+
public $isGetAssetsCall = false;
|
129 |
+
|
130 |
/**
|
131 |
* Populated in the Parser constructor
|
132 |
*
|
171 |
'query-monitor'
|
172 |
);
|
173 |
|
174 |
+
$this->isAjaxCall = (! empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) === 'xmlhttprequest');
|
175 |
+
$this->isGetAssetsCall = isset($_REQUEST[WPACU_LOAD_ASSETS_REQ_KEY]) && $_REQUEST[WPACU_LOAD_ASSETS_REQ_KEY];
|
|
|
176 |
|
177 |
// Early Triggers
|
178 |
add_action('wp', array($this, 'setVarsBeforeUpdate'), 8);
|
179 |
add_action('wp', array($this, 'setVarsAfterAnyUpdate'), 10);
|
180 |
|
181 |
+
// Fetch Assets AJAX Call? Make sure the output is as clean as possible (no plugins interfering with it)
|
182 |
+
if ($this->isGetAssetsCall) {
|
183 |
+
$wpacuMisc = new Misc();
|
184 |
+
$wpacuMisc->cleanUpHtmlOutputForAssetsCall();
|
185 |
+
}
|
186 |
|
187 |
+
// "Direct" AJAX call or "WP Remote Post" method used?
|
188 |
+
// Do not trigger the admin bar as it's not relevant
|
189 |
+
if ($this->isAjaxCall || $this->isGetAssetsCall) {
|
190 |
Misc::noAdminBarLoad();
|
191 |
}
|
192 |
|
198 |
// If there are reasons to prevent the unloading in case 'test mode' is enabled,
|
199 |
// then the prevention will trigger within filterStyles() and filterScripts()
|
200 |
|
201 |
+
if (! $this->isGetAssetsCall) { // No AJAX call from the Dashboard? Trigger the code below
|
202 |
+
// SG Optimizer Compatibility: Unload Styles - HEAD (Before pre_combine_header_styles() from Combinator)
|
203 |
+
if (get_option('siteground_optimizer_combine_css')) {
|
204 |
+
add_action( 'wp_print_styles', array( $this, 'filterStyles' ), 9 ); // priority should be below 10
|
205 |
+
}
|
206 |
+
|
207 |
// Unload Styles - HEAD
|
208 |
add_action( 'wp_print_styles', array( $this, 'filterStyles' ), 100000 );
|
209 |
|
240 |
self::$domGetType = $this->settings['dom_get_type'];
|
241 |
}
|
242 |
|
|
|
|
|
243 |
// Fetch the page in the background to see what scripts/styles are already loading
|
244 |
+
if ($this->isGetAssetsCall || $this->frontendShow()) {
|
245 |
+
if ($this->isGetAssetsCall) {
|
246 |
Misc::noAdminBarLoad();
|
247 |
}
|
248 |
|
291 |
*/
|
292 |
public function setVarsBeforeUpdate()
|
293 |
{
|
294 |
+
// Conditions
|
295 |
+
// 1) User has rights to manage the assets and the option is enabled in plugin's Settings
|
296 |
+
// 2) Not an AJAX call from the Dashboard
|
297 |
+
// 3) Not inside the Dashboard
|
298 |
+
$this->isFrontendEditView = ($this->frontendShow() && Menu::userCanManageAssets() // 1
|
299 |
+
&& !$this->isGetAssetsCall // 2
|
300 |
+
&& !is_admin()); // 3
|
301 |
+
|
302 |
+
if ($this->isFrontendEditView) {
|
303 |
+
$wpacuMisc = new Misc();
|
304 |
+
$wpacuMisc->cleanUpHtmlOutputForAssetsCall();
|
305 |
+
}
|
306 |
|
|
|
307 |
$this->getCurrentPostId();
|
308 |
|
309 |
+
define('WPACU_CURRENT_PAGE_ID', $this->getCurrentPostId());
|
310 |
}
|
311 |
|
312 |
/**
|
314 |
*/
|
315 |
public function setVarsAfterAnyUpdate()
|
316 |
{
|
317 |
+
if (! $this->isGetAssetsCall && ! is_admin()) {
|
318 |
$this->globalUnloaded = $this->getGlobalUnload();
|
319 |
|
320 |
// [wpacu_lite]
|
732 |
}
|
733 |
|
734 |
$isFrontEndEditView = $this->isFrontendEditView;
|
735 |
+
$isDashboardEditView = (!$isFrontEndEditView && $this->isGetAssetsCall);
|
736 |
|
737 |
if (!$isFrontEndEditView && !$isDashboardEditView) {
|
738 |
return;
|
1020 |
$data = $this->setPageTemplate($data);
|
1021 |
}
|
1022 |
|
1023 |
+
// [wpacu_lite]
|
1024 |
+
if ($this->isUpdateable) {
|
1025 |
+
// [/wpacu_lite]
|
1026 |
+
$data['total_styles'] = ! empty($data['all']['styles']) ? count($data['all']['styles']) : 0;
|
1027 |
+
$data['total_scripts'] = ! empty($data['all']['scripts']) ? count($data['all']['scripts']) : 0;
|
1028 |
|
1029 |
+
$data['all_deps'] = $this->getAllDeps($data['all']);
|
1030 |
+
// [wpacu_lite]
|
1031 |
+
}
|
1032 |
+
// [/wpacu_lite]
|
1033 |
|
1034 |
$this->parseTemplate('settings-frontend', $data, true);
|
1035 |
} elseif ($isDashboardEditView) {
|
1091 |
*/
|
1092 |
public function ajaxGetJsonListCallback()
|
1093 |
{
|
1094 |
+
$postId = (int)Misc::getVar('post', 'post_id'); // if any (could be home page for instance)
|
1095 |
$pageUrl = Misc::getVar('post', 'page_url'); // post, page, custom post type, home page etc.
|
1096 |
|
1097 |
// Not homepage, but a post/page? Check if it's published in case AJAX call
|
1130 |
if (! $wpacuList) {
|
1131 |
$data = array(
|
1132 |
'is_dashboard_view' => true,
|
1133 |
+
'plugin_settings' => $settings->getAll(),
|
1134 |
+
'wp_remote_post' => $wpRemotePost
|
1135 |
);
|
1136 |
|
1137 |
$this->parseTemplate('meta-box-loaded', $data, true);
|
1219 |
return;
|
1220 |
}
|
1221 |
|
1222 |
+
$activePluginsIcons = Misc::fetchActiveFreePluginsIcons() ?: array();
|
1223 |
|
1224 |
+
if ($activePluginsIcons && is_array($activePluginsIcons) && ! empty($activePluginsIcons)) {
|
1225 |
echo print_r($activePluginsIcons, true)."\n";
|
1226 |
exit;
|
1227 |
}
|
1677 |
// This request specifically asks for all the assets to be loaded in order to print them in the assets management list
|
1678 |
// This is for the AJAX requests within the Dashboard, thus the admin needs to see all the assets,
|
1679 |
// including ones marked for unload, in case he/she decides to change their rules
|
1680 |
+
if ($this->isGetAssetsCall) {
|
1681 |
return true;
|
1682 |
}
|
1683 |
|
1709 |
add_action ($current_screen->taxonomy . '_edit_form_fields', function ($tag) {
|
1710 |
?>
|
1711 |
<tr class="form-field">
|
1712 |
+
<th scope="row" valign="top"><label for="wpassetcleanup_list"><?php echo WPACU_PLUGIN_TITLE; ?> <?php _e('CSS & JavaScript Load Manager', WPACU_PLUGIN_TEXT_DOMAIN); ?></label></th>
|
1713 |
<td data-wpacu-taxonomy="<?php echo $tag->taxonomy; ?>">
|
1714 |
+
<img width="20" height="20" src="<?php echo WPACU_PLUGIN_URL; ?>/assets/icons/icon-lock.svg" valign="top" alt="" />
|
1715 |
+
<?php
|
1716 |
+
echo sprintf(
|
1717 |
+
__('Managing the loading of the styles & scripts files for this <strong>%s</strong> taxonomy is %savailable in the Pro version%s', WPACU_PLUGIN_TEXT_DOMAIN),
|
1718 |
+
$tag->taxonomy,
|
1719 |
+
'<a href="'.WPACU_PLUGIN_GO_PRO_URL.'?utm_source=taxonomy_edit_page&utm_medium=upgrade_link" target="_blank">',
|
1720 |
+
'</a>'
|
1721 |
+
);
|
1722 |
+
?>
|
1723 |
</td>
|
1724 |
</tr>
|
1725 |
<?php
|
classes/MetaBoxes.php
CHANGED
@@ -11,7 +11,12 @@ class MetaBoxes
|
|
11 |
* @var array
|
12 |
*/
|
13 |
public $noMetaBoxesForPostTypes = array(
|
14 |
-
|
|
|
|
|
|
|
|
|
|
|
15 |
);
|
16 |
|
17 |
/**
|
11 |
* @var array
|
12 |
*/
|
13 |
public $noMetaBoxesForPostTypes = array(
|
14 |
+
// Oxygen Page Builder
|
15 |
+
'ct_template',
|
16 |
+
|
17 |
+
// Themify Page Builder (Layout & Layout Part)
|
18 |
+
'tbuilder_layout',
|
19 |
+
'tbuilder_layout_part'
|
20 |
);
|
21 |
|
22 |
/**
|
classes/Misc.php
CHANGED
@@ -343,6 +343,22 @@ class Misc
|
|
343 |
return in_array('woocommerce/woocommerce.php', apply_filters('active_plugins', get_option('active_plugins')));
|
344 |
}
|
345 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
346 |
/**
|
347 |
* @param $requestMethod
|
348 |
* @param $key
|
@@ -367,6 +383,23 @@ class Misc
|
|
367 |
return $defaultValue;
|
368 |
}
|
369 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
370 |
/**
|
371 |
* @param bool $onlyTransient
|
372 |
*
|
@@ -386,13 +419,13 @@ class Misc
|
|
386 |
|
387 |
// Do not fetch the icons from the WordPress.org repository if only transient was required
|
388 |
if ($onlyTransient) {
|
389 |
-
return
|
390 |
}
|
391 |
|
392 |
$allActivePlugins = get_option('active_plugins');
|
393 |
|
394 |
if (empty($allActivePlugins)) {
|
395 |
-
return
|
396 |
}
|
397 |
|
398 |
foreach ($allActivePlugins as $activePlugin) {
|
@@ -463,7 +496,7 @@ class Misc
|
|
463 |
}
|
464 |
|
465 |
if (empty($activePluginsIcons)) {
|
466 |
-
return
|
467 |
}
|
468 |
|
469 |
set_transient('wpacu_active_plugins_icons', json_encode($activePluginsIcons), 1209600); // in seconds
|
@@ -477,7 +510,7 @@ class Misc
|
|
477 |
public static function getAllActivePluginsIcons()
|
478 |
{
|
479 |
$popularPluginsIcons = array(
|
480 |
-
'elementor' => WPACU_PLUGIN_URL . '/assets/icons/premium-plugins/elementor
|
481 |
'elementor-pro' => WPACU_PLUGIN_URL . '/assets/icons/premium-plugins/elementor-pro.jpg',
|
482 |
'oxygen' => WPACU_PLUGIN_URL . '/assets/icons/premium-plugins/oxygen.png',
|
483 |
'gravityforms' => WPACU_PLUGIN_URL . '/assets/icons/premium-plugins/gravityforms-blue.svg',
|
@@ -487,7 +520,7 @@ class Misc
|
|
487 |
'monarch' => WPACU_PLUGIN_URL . '/assets/icons/premium-plugins/monarch.jpg'
|
488 |
);
|
489 |
|
490 |
-
$allActivePluginsIcons = self::fetchActiveFreePluginsIcons(true
|
491 |
|
492 |
foreach (get_option('active_plugins') as $activePlugin) {
|
493 |
if (strpos($activePlugin, '/') !== false) {
|
@@ -530,6 +563,86 @@ class Misc
|
|
530 |
return '';
|
531 |
}
|
532 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
533 |
/**
|
534 |
* Triggers only in the front-end view (e.g. Homepage URL, /contact/, /about/ etc.)
|
535 |
* Except the situations below: no page builders edit mode etc.
|
@@ -537,12 +650,7 @@ class Misc
|
|
537 |
* @return bool
|
538 |
*/
|
539 |
public static function triggerFrontendOptimization()
|
540 |
-
|
541 |
-
// "Oxygen Builder" Edit Mode
|
542 |
-
if (isset($_GET['ct_builder'], $_GET['ct_inner']) && $_GET['ct_builder'] === 'true' && $_GET['ct_inner'] === 'true') {
|
543 |
-
return false;
|
544 |
-
}
|
545 |
-
|
546 |
// "Elementor" Edit Mode
|
547 |
if (isset($_GET['elementor-preview']) && $_GET['elementor-preview']) {
|
548 |
return false;
|
343 |
return in_array('woocommerce/woocommerce.php', apply_filters('active_plugins', get_option('active_plugins')));
|
344 |
}
|
345 |
|
346 |
+
/**
|
347 |
+
* @param $array
|
348 |
+
*
|
349 |
+
* @return mixed
|
350 |
+
*/
|
351 |
+
public static function arrayKeyFirst($array)
|
352 |
+
{
|
353 |
+
if (function_exists('array_key_first')) {
|
354 |
+
return array_key_first($array);
|
355 |
+
}
|
356 |
+
|
357 |
+
$arrayKeys = array_keys($array);
|
358 |
+
|
359 |
+
return $arrayKeys[0];
|
360 |
+
}
|
361 |
+
|
362 |
/**
|
363 |
* @param $requestMethod
|
364 |
* @param $key
|
383 |
return $defaultValue;
|
384 |
}
|
385 |
|
386 |
+
/**
|
387 |
+
* @param $optionName
|
388 |
+
* @param $optionValue
|
389 |
+
* @param string $autoload
|
390 |
+
*/
|
391 |
+
public static function addUpdateOption($optionName, $optionValue, $autoload = 'no')
|
392 |
+
{
|
393 |
+
// Nothing in the database | Add it
|
394 |
+
if (! get_option($optionName)) {
|
395 |
+
add_option($optionName, $optionValue, '', $autoload);
|
396 |
+
return;
|
397 |
+
}
|
398 |
+
|
399 |
+
// Value is in the database already | Update it
|
400 |
+
update_option($optionName, $optionValue, $autoload);
|
401 |
+
}
|
402 |
+
|
403 |
/**
|
404 |
* @param bool $onlyTransient
|
405 |
*
|
419 |
|
420 |
// Do not fetch the icons from the WordPress.org repository if only transient was required
|
421 |
if ($onlyTransient) {
|
422 |
+
return array();
|
423 |
}
|
424 |
|
425 |
$allActivePlugins = get_option('active_plugins');
|
426 |
|
427 |
if (empty($allActivePlugins)) {
|
428 |
+
return array();
|
429 |
}
|
430 |
|
431 |
foreach ($allActivePlugins as $activePlugin) {
|
496 |
}
|
497 |
|
498 |
if (empty($activePluginsIcons)) {
|
499 |
+
return array();
|
500 |
}
|
501 |
|
502 |
set_transient('wpacu_active_plugins_icons', json_encode($activePluginsIcons), 1209600); // in seconds
|
510 |
public static function getAllActivePluginsIcons()
|
511 |
{
|
512 |
$popularPluginsIcons = array(
|
513 |
+
'elementor' => WPACU_PLUGIN_URL . '/assets/icons/premium-plugins/elementor.svg',
|
514 |
'elementor-pro' => WPACU_PLUGIN_URL . '/assets/icons/premium-plugins/elementor-pro.jpg',
|
515 |
'oxygen' => WPACU_PLUGIN_URL . '/assets/icons/premium-plugins/oxygen.png',
|
516 |
'gravityforms' => WPACU_PLUGIN_URL . '/assets/icons/premium-plugins/gravityforms-blue.svg',
|
520 |
'monarch' => WPACU_PLUGIN_URL . '/assets/icons/premium-plugins/monarch.jpg'
|
521 |
);
|
522 |
|
523 |
+
$allActivePluginsIcons = self::fetchActiveFreePluginsIcons(true) ?: array();
|
524 |
|
525 |
foreach (get_option('active_plugins') as $activePlugin) {
|
526 |
if (strpos($activePlugin, '/') !== false) {
|
563 |
return '';
|
564 |
}
|
565 |
|
566 |
+
/**
|
567 |
+
*
|
568 |
+
*/
|
569 |
+
public function cleanUpHtmlOutputForAssetsCall()
|
570 |
+
{
|
571 |
+
// W3 Total Cache: No Minify
|
572 |
+
add_filter('w3tc_minify_enable', '__return_false');
|
573 |
+
|
574 |
+
// SG Optimizer Plugin
|
575 |
+
$sgOptimizerMapping = array(
|
576 |
+
'autoflush' => 'siteground_optimizer_autoflush_cache',
|
577 |
+
'dynamic-cache' => 'siteground_optimizer_enable_cache',
|
578 |
+
'memcache' => 'siteground_optimizer_enable_memcached',
|
579 |
+
'ssl-fix' => 'siteground_optimizer_fix_insecure_content',
|
580 |
+
'html' => 'siteground_optimizer_optimize_html',
|
581 |
+
'js' => 'siteground_optimizer_optimize_javascript',
|
582 |
+
'js-async' => 'siteground_optimizer_optimize_javascript_async',
|
583 |
+
'css' => 'siteground_optimizer_optimize_css',
|
584 |
+
'combine-css' => 'siteground_optimizer_combine_css',
|
585 |
+
'querystring' => 'siteground_optimizer_remove_query_strings',
|
586 |
+
'emojis' => 'siteground_optimizer_disable_emojis',
|
587 |
+
'images' => 'siteground_optimizer_optimize_images',
|
588 |
+
'lazyload_images' => 'siteground_optimizer_lazyload_images',
|
589 |
+
'lazyload_gravatars' => 'siteground_optimizer_lazyload_gravatars',
|
590 |
+
'lazyload_thumbnails' => 'siteground_optimizer_lazyload_thumbnails',
|
591 |
+
'lazyload_responsive' => 'siteground_optimizer_lazyload_responsive',
|
592 |
+
'lazyload_textwidgets' => 'siteground_optimizer_lazyload_textwidgets',
|
593 |
+
'ssl' => 'siteground_optimizer_ssl_enabled',
|
594 |
+
'gzip' => 'siteground_optimizer_enable_gzip_compression',
|
595 |
+
'browser-caching' => 'siteground_optimizer_enable_browser_caching',
|
596 |
+
);
|
597 |
+
|
598 |
+
foreach ($sgOptimizerMapping as $optionName) {
|
599 |
+
add_filter('pre_option_'.$optionName, '__return_false');
|
600 |
+
}
|
601 |
+
|
602 |
+
// Fallback in case SG Optimizer is triggered BEFORE Asset CleanUp and the filter above will not work
|
603 |
+
add_filter('sgo_css_combine_exclude', array($this, 'allCssHandles'));
|
604 |
+
add_filter('sgo_css_minify_exclude', array($this, 'allCssHandles'));
|
605 |
+
add_filter('sgo_js_minify_exclude', array($this, 'allJsHandles'));
|
606 |
+
add_filter('sgo_js_async_exclude', array($this, 'allJsHandles'));
|
607 |
+
|
608 |
+
add_filter('sgo_html_minify_exclude_params', function ($excludeParams) {
|
609 |
+
$excludeParams[] = WPACU_LOAD_ASSETS_REQ_KEY;
|
610 |
+
return $excludeParams;
|
611 |
+
});
|
612 |
+
}
|
613 |
+
|
614 |
+
/**
|
615 |
+
* @return array
|
616 |
+
*/
|
617 |
+
public function allCssHandles()
|
618 |
+
{
|
619 |
+
global $wp_styles;
|
620 |
+
|
621 |
+
$allCssHandles = array();
|
622 |
+
|
623 |
+
if (isset($wp_styles->registered) && ! empty($wp_styles->registered)) {
|
624 |
+
$allCssHandles = array_keys($wp_styles->registered);
|
625 |
+
}
|
626 |
+
|
627 |
+
return $allCssHandles;
|
628 |
+
}
|
629 |
+
|
630 |
+
/**
|
631 |
+
* @return array
|
632 |
+
*/
|
633 |
+
public function allJsHandles()
|
634 |
+
{
|
635 |
+
global $wp_scripts;
|
636 |
+
|
637 |
+
$allJsHandles = array();
|
638 |
+
|
639 |
+
if (isset($wp_scripts->registered) && ! empty($wp_scripts->registered)) {
|
640 |
+
$allJsHandles = array_keys($wp_scripts->registered);
|
641 |
+
}
|
642 |
+
|
643 |
+
return $allJsHandles;
|
644 |
+
}
|
645 |
+
|
646 |
/**
|
647 |
* Triggers only in the front-end view (e.g. Homepage URL, /contact/, /about/ etc.)
|
648 |
* Except the situations below: no page builders edit mode etc.
|
650 |
* @return bool
|
651 |
*/
|
652 |
public static function triggerFrontendOptimization()
|
653 |
+
{
|
|
|
|
|
|
|
|
|
|
|
654 |
// "Elementor" Edit Mode
|
655 |
if (isset($_GET['elementor-preview']) && $_GET['elementor-preview']) {
|
656 |
return false;
|
classes/OptimiseAssets/MinifyCss.php
CHANGED
@@ -273,17 +273,16 @@ class MinifyCss
|
|
273 |
*/
|
274 |
public function skipMinify($src)
|
275 |
{
|
276 |
-
|
277 |
-
|
278 |
$regExps = array(
|
279 |
'#/wp-content/plugins/wp-asset-clean-up(.*?).min.css#',
|
280 |
|
281 |
// Other libraries from the core that end in .min.css
|
282 |
'#/wp-includes/css/(.*?).min.css#',
|
283 |
|
284 |
-
// Files within /wp-content/uploads/
|
285 |
// Could belong to plugins such as "Elementor, "Oxygen" etc.
|
286 |
-
'#/wp-content/uploads/(.*?).css
|
|
|
287 |
|
288 |
);
|
289 |
|
273 |
*/
|
274 |
public function skipMinify($src)
|
275 |
{
|
|
|
|
|
276 |
$regExps = array(
|
277 |
'#/wp-content/plugins/wp-asset-clean-up(.*?).min.css#',
|
278 |
|
279 |
// Other libraries from the core that end in .min.css
|
280 |
'#/wp-includes/css/(.*?).min.css#',
|
281 |
|
282 |
+
// Files within /wp-content/uploads/ or /wp-content/cache/
|
283 |
// Could belong to plugins such as "Elementor, "Oxygen" etc.
|
284 |
+
'#/wp-content/uploads/(.*?).css#',
|
285 |
+
'#/wp-content/cache/(.*?).css#'
|
286 |
|
287 |
);
|
288 |
|
classes/OptimiseAssets/MinifyJs.php
CHANGED
@@ -402,8 +402,10 @@ class MinifyJs
|
|
402 |
'#/wp-includes/js/jquery/jquery.js#',
|
403 |
|
404 |
// Files within /wp-content/uploads/
|
|
|
405 |
// Could belong to plugins such as "Elementor, "Oxygen" etc.
|
406 |
-
'#/wp-content/uploads/(.*?).js
|
|
|
407 |
|
408 |
);
|
409 |
|
402 |
'#/wp-includes/js/jquery/jquery.js#',
|
403 |
|
404 |
// Files within /wp-content/uploads/
|
405 |
+
// Files within /wp-content/uploads/ or /wp-content/cache/
|
406 |
// Could belong to plugins such as "Elementor, "Oxygen" etc.
|
407 |
+
'#/wp-content/uploads/(.*?).js#',
|
408 |
+
'#/wp-content/cache/(.*?).js#'
|
409 |
|
410 |
);
|
411 |
|
classes/OptimiseAssets/OptimizeCss.php
CHANGED
@@ -189,7 +189,7 @@ class OptimizeCss
|
|
189 |
}
|
190 |
|
191 |
$maybeDoCssCombine = $this->maybeDoCssCombine( sha1( implode( '', $combinedUriPaths ) ),
|
192 |
-
$localAssetsPaths, $linkHrefs );
|
193 |
|
194 |
// Local path to combined CSS file
|
195 |
$localFinalCssFile = $maybeDoCssCombine['local_final_css_file'];
|
@@ -291,15 +291,16 @@ HTML;
|
|
291 |
* @param $shaOneCombinedUriPaths
|
292 |
* @param $localAssetsPaths
|
293 |
* @param $linkHrefs
|
|
|
294 |
*
|
295 |
* @return array
|
296 |
*/
|
297 |
-
public function maybeDoCssCombine($shaOneCombinedUriPaths, $localAssetsPaths, $linkHrefs)
|
298 |
{
|
299 |
$current_user = wp_get_current_user();
|
300 |
$dirToUserCachedFile = ((isset($current_user->ID) && $current_user->ID > 0) ? 'logged-in/'.$current_user->ID.'/' : '');
|
301 |
|
302 |
-
$uriToFinalCssFile = $dirToUserCachedFile . $shaOneCombinedUriPaths . '.css';
|
303 |
$localFinalCssFile = WP_CONTENT_DIR . self::$relPathCssCacheDir . $uriToFinalCssFile;
|
304 |
|
305 |
$localDirForCssFile = WP_CONTENT_DIR . self::$relPathCssCacheDir . $dirToUserCachedFile;
|
189 |
}
|
190 |
|
191 |
$maybeDoCssCombine = $this->maybeDoCssCombine( sha1( implode( '', $combinedUriPaths ) ),
|
192 |
+
$localAssetsPaths, $linkHrefs, $docLocationTag );
|
193 |
|
194 |
// Local path to combined CSS file
|
195 |
$localFinalCssFile = $maybeDoCssCombine['local_final_css_file'];
|
291 |
* @param $shaOneCombinedUriPaths
|
292 |
* @param $localAssetsPaths
|
293 |
* @param $linkHrefs
|
294 |
+
* @param $docLocationTag
|
295 |
*
|
296 |
* @return array
|
297 |
*/
|
298 |
+
public function maybeDoCssCombine($shaOneCombinedUriPaths, $localAssetsPaths, $linkHrefs, $docLocationTag)
|
299 |
{
|
300 |
$current_user = wp_get_current_user();
|
301 |
$dirToUserCachedFile = ((isset($current_user->ID) && $current_user->ID > 0) ? 'logged-in/'.$current_user->ID.'/' : '');
|
302 |
|
303 |
+
$uriToFinalCssFile = $dirToUserCachedFile . $docLocationTag . '-' .$shaOneCombinedUriPaths . '.css';
|
304 |
$localFinalCssFile = WP_CONTENT_DIR . self::$relPathCssCacheDir . $uriToFinalCssFile;
|
305 |
|
306 |
$localDirForCssFile = WP_CONTENT_DIR . self::$relPathCssCacheDir . $dirToUserCachedFile;
|
classes/OptimiseAssets/OptimizeJs.php
CHANGED
@@ -204,7 +204,7 @@ class OptimizeJs
|
|
204 |
$groupIndex ++;
|
205 |
}
|
206 |
|
207 |
-
if ($reachedBody
|
208 |
$bodyGroupIndexes[] = $groupIndex;
|
209 |
}
|
210 |
}
|
@@ -241,9 +241,13 @@ class OptimizeJs
|
|
241 |
$groupScriptTags[] = $groupFileData['html'];
|
242 |
}
|
243 |
|
|
|
|
|
|
|
244 |
$maybeDoJsCombine = $this->maybeDoJsCombine(
|
245 |
sha1( implode( '', $combinedUriPaths ) ) . '-' . $groupNo,
|
246 |
-
$localAssetsPaths
|
|
|
247 |
);
|
248 |
|
249 |
// Local path to combined CSS file
|
@@ -270,7 +274,7 @@ class OptimizeJs
|
|
270 |
'script_tags' => $groupScriptTagsFilter
|
271 |
);
|
272 |
|
273 |
-
if (in_array($groupIndex, $bodyGroupIndexes)) {
|
274 |
$finalCacheList[ $groupNo ]['extras'][] = 'defer';
|
275 |
}
|
276 |
|
@@ -376,6 +380,9 @@ HTML;
|
|
376 |
*/
|
377 |
public function lastScriptSrcFromHead($htmlSource)
|
378 |
{
|
|
|
|
|
|
|
379 |
$bodyHtml = Misc::extractBetween( $htmlSource, '<head', '</head>' );
|
380 |
|
381 |
$regExpPattern = '#<script[^>]*>.*?</script>#is';
|
@@ -414,15 +421,16 @@ HTML;
|
|
414 |
/**
|
415 |
* @param $shaOneCombinedUriPaths
|
416 |
* @param $localAssetsPaths
|
|
|
417 |
*
|
418 |
* @return array
|
419 |
*/
|
420 |
-
public function maybeDoJsCombine($shaOneCombinedUriPaths, $localAssetsPaths)
|
421 |
{
|
422 |
$current_user = wp_get_current_user();
|
423 |
$dirToUserCachedFile = ((isset($current_user->ID) && $current_user->ID > 0) ? 'logged-in/'.$current_user->ID.'/' : '');
|
424 |
|
425 |
-
$uriToFinalJsFile = $dirToUserCachedFile . $shaOneCombinedUriPaths . '.js';
|
426 |
|
427 |
$localFinalJsFile = WP_CONTENT_DIR . self::$relPathJsCacheDir . $uriToFinalJsFile;
|
428 |
$localDirForJsFile = WP_CONTENT_DIR . self::$relPathJsCacheDir . $dirToUserCachedFile;
|
204 |
$groupIndex ++;
|
205 |
}
|
206 |
|
207 |
+
if ($reachedBody) {
|
208 |
$bodyGroupIndexes[] = $groupIndex;
|
209 |
}
|
210 |
}
|
241 |
$groupScriptTags[] = $groupFileData['html'];
|
242 |
}
|
243 |
|
244 |
+
// <head> or <body>
|
245 |
+
$docLocationScript = in_array($groupIndex, $bodyGroupIndexes) ? 'body' : 'head';
|
246 |
+
|
247 |
$maybeDoJsCombine = $this->maybeDoJsCombine(
|
248 |
sha1( implode( '', $combinedUriPaths ) ) . '-' . $groupNo,
|
249 |
+
$localAssetsPaths,
|
250 |
+
$docLocationScript
|
251 |
);
|
252 |
|
253 |
// Local path to combined CSS file
|
274 |
'script_tags' => $groupScriptTagsFilter
|
275 |
);
|
276 |
|
277 |
+
if (Main::instance()->settings['combine_loaded_js_defer_body'] && in_array($groupIndex, $bodyGroupIndexes)) {
|
278 |
$finalCacheList[ $groupNo ]['extras'][] = 'defer';
|
279 |
}
|
280 |
|
380 |
*/
|
381 |
public function lastScriptSrcFromHead($htmlSource)
|
382 |
{
|
383 |
+
// Do not check MSIE conditional comments as they are not combined
|
384 |
+
$htmlSource = OptimizeCommon::cleanerHtmlSource($htmlSource);
|
385 |
+
|
386 |
$bodyHtml = Misc::extractBetween( $htmlSource, '<head', '</head>' );
|
387 |
|
388 |
$regExpPattern = '#<script[^>]*>.*?</script>#is';
|
421 |
/**
|
422 |
* @param $shaOneCombinedUriPaths
|
423 |
* @param $localAssetsPaths
|
424 |
+
* @param $doclocationScript
|
425 |
*
|
426 |
* @return array
|
427 |
*/
|
428 |
+
public function maybeDoJsCombine($shaOneCombinedUriPaths, $localAssetsPaths, $docLocationScript)
|
429 |
{
|
430 |
$current_user = wp_get_current_user();
|
431 |
$dirToUserCachedFile = ((isset($current_user->ID) && $current_user->ID > 0) ? 'logged-in/'.$current_user->ID.'/' : '');
|
432 |
|
433 |
+
$uriToFinalJsFile = $dirToUserCachedFile . $docLocationScript . '-' . $shaOneCombinedUriPaths . '.js';
|
434 |
|
435 |
$localFinalJsFile = WP_CONTENT_DIR . self::$relPathJsCacheDir . $uriToFinalJsFile;
|
436 |
$localDirForJsFile = WP_CONTENT_DIR . self::$relPathJsCacheDir . $dirToUserCachedFile;
|
classes/OwnAssets.php
CHANGED
@@ -103,7 +103,7 @@ class OwnAssets
|
|
103 |
}
|
104 |
|
105 |
$page = Misc::getVar('get', 'page');
|
106 |
-
$getPostId =
|
107 |
|
108 |
// Only load the plugin's assets when they are needed
|
109 |
// This an example of assets that are correctly loaded in WordPress
|
103 |
}
|
104 |
|
105 |
$page = Misc::getVar('get', 'page');
|
106 |
+
$getPostId = (int)Misc::getVar('get', 'post');
|
107 |
|
108 |
// Only load the plugin's assets when they are needed
|
109 |
// This an example of assets that are correctly loaded in WordPress
|
classes/Plugin.php
CHANGED
@@ -43,7 +43,16 @@ class Plugin
|
|
43 |
public function adminFooter($text)
|
44 |
{
|
45 |
if (isset($_GET['page']) && strpos($_GET['page'], WPACU_PLUGIN_ID) !== false) {
|
46 |
-
$text =
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
47 |
}
|
48 |
|
49 |
return $text;
|
@@ -165,7 +174,7 @@ HTACCESS;
|
|
165 |
|
166 |
// If the Pro version is not installed (active or not), show the upgrade link
|
167 |
if (! array_key_exists('wp-asset-clean-up-pro/wpacu.php', $allPlugins)) {
|
168 |
-
$links['go_pro'] = '<a target="_blank" style="font-weight: bold;" href="'.WPACU_PLUGIN_GO_PRO_URL
|
169 |
}
|
170 |
// [/wpacu_lite]
|
171 |
|
43 |
public function adminFooter($text)
|
44 |
{
|
45 |
if (isset($_GET['page']) && strpos($_GET['page'], WPACU_PLUGIN_ID) !== false) {
|
46 |
+
$text = sprintf(__('Thank you for using %s', WPACU_PLUGIN_TEXT_DOMAIN), WPACU_PLUGIN_TITLE.' v'.WPACU_PLUGIN_VERSION)
|
47 |
+
. ' <span class="dashicons dashicons-smiley"></span> ';
|
48 |
+
|
49 |
+
$text .= sprintf(
|
50 |
+
__('If you like it, please %s<strong>rate</strong> %s%s %s on WordPress.org to help me spread the word to the community.', WPACU_PLUGIN_TEXT_DOMAIN),
|
51 |
+
'<a target="_blank" href="'.self::RATE_URL.'">',
|
52 |
+
WPACU_PLUGIN_TITLE,
|
53 |
+
'</a>',
|
54 |
+
'<a target="_blank" href="'.self::RATE_URL.'"><span class="dashicons dashicons-wpacu dashicons-star-filled"></span><span class="dashicons dashicons-wpacu dashicons-star-filled"></span><span class="dashicons dashicons-wpacu dashicons-star-filled"></span><span class="dashicons dashicons-wpacu dashicons-star-filled"></span><span class="dashicons dashicons-wpacu dashicons-star-filled"></span></a>'
|
55 |
+
);
|
56 |
}
|
57 |
|
58 |
return $text;
|
174 |
|
175 |
// If the Pro version is not installed (active or not), show the upgrade link
|
176 |
if (! array_key_exists('wp-asset-clean-up-pro/wpacu.php', $allPlugins)) {
|
177 |
+
$links['go_pro'] = '<a target="_blank" style="font-weight: bold;" href="'.WPACU_PLUGIN_GO_PRO_URL.'">'.__('Go Pro', WPACU_PLUGIN_TEXT_DOMAIN).'</a>';
|
178 |
}
|
179 |
// [/wpacu_lite]
|
180 |
|
classes/Settings.php
CHANGED
@@ -106,8 +106,12 @@ class Settings
|
|
106 |
// Direct AJAX call by default (not via WP Remote Post)
|
107 |
'dom_get_type' => 'direct',
|
108 |
|
109 |
-
// Very good especially for page builders: Divi Visual Builder, Oxygen Builder, WPBakery etc.
|
110 |
-
'
|
|
|
|
|
|
|
|
|
111 |
|
112 |
// Since v1.2.9.3 (lite), the default value is "by-location" (All Styles & All Scripts - By Location (Theme, Plugins, Custom & External))
|
113 |
// Prior to that it's "two-lists" (All Styles & All Scripts - 2 separate lists)
|
@@ -118,8 +122,11 @@ class Settings
|
|
118 |
|
119 |
'assets_list_inline_code_status' => 'contracted',
|
120 |
|
121 |
-
'minify_loaded_css_exceptions' => '(.*?).min.css',
|
122 |
-
'minify_loaded_js_exceptions' => '(.*?).min.js',
|
|
|
|
|
|
|
123 |
|
124 |
'input_style' => 'enhanced',
|
125 |
|
@@ -173,7 +180,7 @@ class Settings
|
|
173 |
*/
|
174 |
public function saveSettings()
|
175 |
{
|
176 |
-
if
|
177 |
return;
|
178 |
}
|
179 |
|
@@ -369,7 +376,7 @@ class Settings
|
|
369 |
$wpacuUpdate->removeEverywhereUnloads(array(), $removeFromUnloadList);
|
370 |
}
|
371 |
|
372 |
-
|
373 |
|
374 |
$this->redirectAfterUpdate();
|
375 |
}
|
@@ -379,8 +386,10 @@ class Settings
|
|
379 |
*/
|
380 |
public function redirectAfterUpdate()
|
381 |
{
|
382 |
-
$tabArea =
|
|
|
383 |
set_transient('wpacu_settings_updated', 1, 30);
|
|
|
384 |
wp_redirect(admin_url('admin.php?page=wpassetcleanup_settings&wpacu_selected_tab_area='.$tabArea.'&wpacu_time='.time()));
|
385 |
exit();
|
386 |
}
|
106 |
// Direct AJAX call by default (not via WP Remote Post)
|
107 |
'dom_get_type' => 'direct',
|
108 |
|
109 |
+
// Very good especially for page builders: Divi Visual Builder, Oxygen Builder, WPBakery, Beaver Builder etc.
|
110 |
+
// It is also hidden in preview mode (if query strings such as 'preview_nonce' are used)
|
111 |
+
'frontend_show_exceptions' => 'et_fb=1'."\n"
|
112 |
+
.'ct_builder=true'."\n"
|
113 |
+
.'vc_editable=true'."\n"
|
114 |
+
.'preview_nonce='."\n",
|
115 |
|
116 |
// Since v1.2.9.3 (lite), the default value is "by-location" (All Styles & All Scripts - By Location (Theme, Plugins, Custom & External))
|
117 |
// Prior to that it's "two-lists" (All Styles & All Scripts - 2 separate lists)
|
122 |
|
123 |
'assets_list_inline_code_status' => 'contracted',
|
124 |
|
125 |
+
'minify_loaded_css_exceptions' => '(.*?).min.css'. "\n". '/plugins/wd-instagram-feed/(.*?).css',
|
126 |
+
'minify_loaded_js_exceptions' => '(.*?).min.js' . "\n". '/plugins/wd-instagram-feed/(.*?).js',
|
127 |
+
|
128 |
+
'combine_loaded_css_exceptions' => '/plugins/wd-instagram-feed/(.*?).css',
|
129 |
+
'combine_loaded_js_exceptions' => '/plugins/wd-instagram-feed/(.*?).js',
|
130 |
|
131 |
'input_style' => 'enhanced',
|
132 |
|
180 |
*/
|
181 |
public function saveSettings()
|
182 |
{
|
183 |
+
if (! Misc::getVar('post', 'wpacu_settings_nonce')) {
|
184 |
return;
|
185 |
}
|
186 |
|
376 |
$wpacuUpdate->removeEverywhereUnloads(array(), $removeFromUnloadList);
|
377 |
}
|
378 |
|
379 |
+
Misc::addUpdateOption(WPACU_PLUGIN_ID . '_settings', json_encode($settings));
|
380 |
|
381 |
$this->redirectAfterUpdate();
|
382 |
}
|
386 |
*/
|
387 |
public function redirectAfterUpdate()
|
388 |
{
|
389 |
+
$tabArea = Misc::getVar('post', 'wpacu_selected_tab_area', 'wpacu-setting-plugin-usage-settings');
|
390 |
+
|
391 |
set_transient('wpacu_settings_updated', 1, 30);
|
392 |
+
|
393 |
wp_redirect(admin_url('admin.php?page=wpassetcleanup_settings&wpacu_selected_tab_area='.$tabArea.'&wpacu_time='.time()));
|
394 |
exit();
|
395 |
}
|
classes/Tools.php
CHANGED
@@ -58,11 +58,11 @@ class Tools
|
|
58 |
add_action('wpacu_admin_notices', array($this, 'resetDone'));
|
59 |
}
|
60 |
|
61 |
-
if (
|
62 |
$this->doReset();
|
63 |
}
|
64 |
|
65 |
-
if (
|
66 |
$this->downloadSystemInfo();
|
67 |
}
|
68 |
}
|
@@ -180,7 +180,28 @@ class Tools
|
|
180 |
|
181 |
$return .= 'Disable Emojis? '. (($settings['disable_emojis'] == 1) ? 'Yes' : 'No') . "\n";
|
182 |
$return .= 'Disable jQuery Migrate (site-wide)? '. (($settings['disable_jquery_migrate'] == 1) ? 'Yes' : 'No') . "\n";
|
183 |
-
$return .= 'Disable Comment Reply (site-wide)? '. (($settings['disable_comment_reply'] == 1) ? 'Yes' : 'No') . "\n";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
184 |
|
185 |
// WordPress configuration.
|
186 |
// Get theme info.
|
@@ -326,9 +347,7 @@ class Tools
|
|
326 |
exit();
|
327 |
}
|
328 |
|
329 |
-
|
330 |
-
|
331 |
-
if (! $isValidPostRequest) {
|
332 |
return;
|
333 |
}
|
334 |
|
@@ -350,20 +369,20 @@ class Tools
|
|
350 |
public function doReset()
|
351 |
{
|
352 |
// Several security checks before proceeding with the chosen action
|
353 |
-
if ( !
|
354 |
return;
|
355 |
}
|
356 |
|
357 |
\check_admin_referer('wpacu_tools_reset', 'wpacu_tools_reset_nonce');
|
358 |
|
359 |
-
$wpacuResetValue =
|
360 |
|
361 |
if (! $wpacuResetValue) {
|
362 |
exit('Error: Field not found, the action is not valid!');
|
363 |
}
|
364 |
|
365 |
// Has to be confirmed
|
366 |
-
$wpacuConfirmedValue =
|
367 |
|
368 |
if ($wpacuConfirmedValue !== 'yes') {
|
369 |
exit('Error: Action needs to be confirmed.');
|
@@ -377,28 +396,50 @@ class Tools
|
|
377 |
|
378 |
$this->resetChoice = $wpacuResetValue;
|
379 |
|
|
|
|
|
380 |
if ($wpacuResetValue === 'reset_everything') {
|
381 |
// `usermeta` and `termmeta` might have traces from the Pro version (if ever used)
|
382 |
foreach (array('postmeta', 'usermeta', 'termmeta') as $tableBaseName) {
|
383 |
-
|
384 |
-
|
|
|
385 |
SQL;
|
386 |
-
$wpdb->
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
387 |
}
|
388 |
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
|
|
393 |
SQL;
|
394 |
-
$wpdb->
|
|
|
|
|
|
|
|
|
395 |
|
396 |
-
delete_option
|
397 |
|
398 |
// Remove the license data?
|
399 |
if (Misc::getVar('post', 'wpacu-remove-license-data') !== '') {
|
400 |
-
delete_option
|
401 |
-
delete_option
|
402 |
$this->licenseDataRemoved = true;
|
403 |
}
|
404 |
|
@@ -408,10 +449,7 @@ SQL;
|
|
408 |
// Refers to the plugins' icons shown when viewing assets list by location is enabled
|
409 |
delete_transient('wpacu_active_plugins_icons');
|
410 |
} elseif ($wpacuResetValue === 'reset_settings') {
|
411 |
-
|
412 |
-
DELETE FROM `{$wpdb->prefix}options` WHERE option_name='wpassetcleanup_settings'
|
413 |
-
SQL;
|
414 |
-
$wpdb->query($sqlQuery);
|
415 |
}
|
416 |
|
417 |
// Also make 'jQuery Migrate' and 'Comment Reply' core files to load again
|
58 |
add_action('wpacu_admin_notices', array($this, 'resetDone'));
|
59 |
}
|
60 |
|
61 |
+
if (Misc::getVar('post', 'wpacu-tools-reset')) {
|
62 |
$this->doReset();
|
63 |
}
|
64 |
|
65 |
+
if (Misc::getVar('post', 'wpacu-get-system-info')) {
|
66 |
$this->downloadSystemInfo();
|
67 |
}
|
68 |
}
|
180 |
|
181 |
$return .= 'Disable Emojis? '. (($settings['disable_emojis'] == 1) ? 'Yes' : 'No') . "\n";
|
182 |
$return .= 'Disable jQuery Migrate (site-wide)? '. (($settings['disable_jquery_migrate'] == 1) ? 'Yes' : 'No') . "\n";
|
183 |
+
$return .= 'Disable Comment Reply (site-wide)? '. (($settings['disable_comment_reply'] == 1) ? 'Yes' : 'No') . "\n\n";
|
184 |
+
|
185 |
+
$return .= 'Remove "Really Simple Discovery (RSD)" link tag? '. (($settings['remove_rsd_link'] == 1) ? 'Yes' : 'No') . "\n";
|
186 |
+
$return .= 'Remove "Windows Live Writer" link tag? '. (($settings['remove_wlw_link'] == 1) ? 'Yes' : 'No') . "\n";
|
187 |
+
$return .= 'Remove "REST API" link tag? '. (($settings['remove_rest_api_link'] == 1) ? 'Yes' : 'No') . "\n";
|
188 |
+
$return .= 'Remove Pages/Posts "Shortlink" tag? '. (($settings['remove_shortlink'] == 1) ? 'Yes' : 'No') . "\n";
|
189 |
+
$return .= 'Remove "Post\'s Relational Links" tag? '. (($settings['remove_posts_rel_links'] == 1) ? 'Yes' : 'No') . "\n";
|
190 |
+
$return .= 'Remove "WordPress version" meta tag? '. (($settings['remove_wp_version'] == 1) ? 'Yes' : 'No') . "\n";
|
191 |
+
$return .= 'Remove All "generator" meta tags? '. (($settings['remove_generator_tag'] == 1) ? 'Yes' : 'No') . "\n";
|
192 |
+
$return .= 'Remove Main RSS Feed Link? '. (($settings['remove_main_feed_link'] == 1) ? 'Yes' : 'No') . "\n";
|
193 |
+
$return .= 'Remove Comment RSS Feed Link? '. (($settings['remove_comment_feed_link'] == 1) ? 'Yes' : 'No') . "\n";
|
194 |
+
|
195 |
+
$xmlProtocolStatus = 'Enabled (default)';
|
196 |
+
|
197 |
+
if ($settings['disable_xmlrpc'] === 'disable_pingback') {
|
198 |
+
$xmlProtocolStatus = 'Disable XML-RPC Pingback Only';
|
199 |
+
} elseif ($settings['disable_xmlrpc'] === 'disable_all') {
|
200 |
+
$xmlProtocolStatus = 'Disable XML-RPC Completely';
|
201 |
+
}
|
202 |
+
|
203 |
+
$return .= "\n" . 'XML-RPC protocol: '. $xmlProtocolStatus . "\n";
|
204 |
+
|
205 |
|
206 |
// WordPress configuration.
|
207 |
// Get theme info.
|
347 |
exit();
|
348 |
}
|
349 |
|
350 |
+
if (! Misc::getVar('post', 'wpacu_get_system_info_nonce')) {
|
|
|
|
|
351 |
return;
|
352 |
}
|
353 |
|
369 |
public function doReset()
|
370 |
{
|
371 |
// Several security checks before proceeding with the chosen action
|
372 |
+
if ( ! Misc::getVar('post', 'wpacu_tools_reset_nonce')) {
|
373 |
return;
|
374 |
}
|
375 |
|
376 |
\check_admin_referer('wpacu_tools_reset', 'wpacu_tools_reset_nonce');
|
377 |
|
378 |
+
$wpacuResetValue = Misc::getVar('post', 'wpacu-reset', false);
|
379 |
|
380 |
if (! $wpacuResetValue) {
|
381 |
exit('Error: Field not found, the action is not valid!');
|
382 |
}
|
383 |
|
384 |
// Has to be confirmed
|
385 |
+
$wpacuConfirmedValue = Misc::getVar('post', 'wpacu-action-confirmed', false);
|
386 |
|
387 |
if ($wpacuConfirmedValue !== 'yes') {
|
388 |
exit('Error: Action needs to be confirmed.');
|
396 |
|
397 |
$this->resetChoice = $wpacuResetValue;
|
398 |
|
399 |
+
$wpacuPluginId = WPACU_PLUGIN_ID;
|
400 |
+
|
401 |
if ($wpacuResetValue === 'reset_everything') {
|
402 |
// `usermeta` and `termmeta` might have traces from the Pro version (if ever used)
|
403 |
foreach (array('postmeta', 'usermeta', 'termmeta') as $tableBaseName) {
|
404 |
+
// Get all Asset CleanUp meta keys from all WordPress meta tables where it can be possibly used
|
405 |
+
$wpacuGetMetaKeysQuery = <<<SQL
|
406 |
+
SELECT meta_key FROM `{$wpdb->prefix}{$tableBaseName}` WHERE meta_key LIKE '_{$wpacuPluginId}_%'
|
407 |
SQL;
|
408 |
+
$wpacuMetaKeys = $wpdb->get_col($wpacuGetMetaKeysQuery);
|
409 |
+
|
410 |
+
if ($tableBaseName === 'postmeta') { // e.g. Posts, Pages, Custom Post Types)
|
411 |
+
foreach ($wpacuMetaKeys as $postMetaKey) {
|
412 |
+
delete_post_meta_by_key($postMetaKey);
|
413 |
+
}
|
414 |
+
} elseif ($tableBaseName === 'usermeta') { // User Meta: Pro version (if used)
|
415 |
+
foreach ($wpacuMetaKeys as $userMetaKey) {
|
416 |
+
delete_metadata('user', 0, $userMetaKey, '', true);
|
417 |
+
}
|
418 |
+
} elseif ($tableBaseName === 'termmeta') { // e.g. Taxonomy: Pro version (if used)
|
419 |
+
foreach ($wpacuMetaKeys as $termMetaKey) {
|
420 |
+
delete_metadata('term', 0, $termMetaKey, '', true);
|
421 |
+
}
|
422 |
+
}
|
423 |
}
|
424 |
|
425 |
+
// Fetch all Asset CleanUp options except the license key related ones
|
426 |
+
$sqlQueryGetOptions = <<<SQL
|
427 |
+
SELECT option_name FROM `{$wpdb->prefix}options`
|
428 |
+
WHERE option_name LIKE '{$wpacuPluginId}_%'
|
429 |
+
AND option_name NOT IN('{$wpacuPluginId}_pro_license_key', '{$wpacuPluginId}_pro_license_status')
|
430 |
SQL;
|
431 |
+
$wpacuOptionNames = $wpdb->get_col($sqlQueryGetOptions);
|
432 |
+
|
433 |
+
foreach ($wpacuOptionNames as $wpacuOptionName) {
|
434 |
+
delete_option($wpacuOptionName);
|
435 |
+
}
|
436 |
|
437 |
+
delete_option($wpacuPluginId.'_do_activation_redirect_first_time');
|
438 |
|
439 |
// Remove the license data?
|
440 |
if (Misc::getVar('post', 'wpacu-remove-license-data') !== '') {
|
441 |
+
delete_option($wpacuPluginId . '_pro_license_key');
|
442 |
+
delete_option($wpacuPluginId . '_pro_license_status');
|
443 |
$this->licenseDataRemoved = true;
|
444 |
}
|
445 |
|
449 |
// Refers to the plugins' icons shown when viewing assets list by location is enabled
|
450 |
delete_transient('wpacu_active_plugins_icons');
|
451 |
} elseif ($wpacuResetValue === 'reset_settings') {
|
452 |
+
delete_option($wpacuPluginId.'_settings');
|
|
|
|
|
|
|
453 |
}
|
454 |
|
455 |
// Also make 'jQuery Migrate' and 'Comment Reply' core files to load again
|
classes/Update.php
CHANGED
@@ -41,12 +41,14 @@ class Update
|
|
41 |
*/
|
42 |
public function __construct()
|
43 |
{
|
|
|
44 |
$this->updateDoneMsg['homepage'] = <<<HTML
|
45 |
-
<span class="dashicons dashicons-yes"></span>
|
46 |
HTML;
|
47 |
|
|
|
48 |
$this->updateDoneMsg['page'] = <<<HTML
|
49 |
-
<span class="dashicons dashicons-yes"></span>
|
50 |
HTML;
|
51 |
}
|
52 |
|
@@ -121,7 +123,7 @@ HTML;
|
|
121 |
// Form submitted from the homepage
|
122 |
// e.g. from a page such as latest blog posts, not a static page that was selected as home page)
|
123 |
if (! ($postId > 0) && Misc::isHomePage()) {
|
124 |
-
$wpacuNoLoadAssets =
|
125 |
$this->updateFrontPage($wpacuNoLoadAssets);
|
126 |
return;
|
127 |
}
|
@@ -142,7 +144,7 @@ HTML;
|
|
142 |
public function redirectAfterFrontEndUpdate()
|
143 |
{
|
144 |
// It triggers ONLY on front-end view, when a valid POST request is made
|
145 |
-
if
|
146 |
return;
|
147 |
}
|
148 |
|
@@ -205,7 +207,7 @@ HTML;
|
|
205 |
|
206 |
// This is triggered only if the "Asset CleanUp" meta box was loaded with the list of assets
|
207 |
// Otherwise, $_POST[WPACU_PLUGIN_ID] will be taken as empty which might be not if there are values in the database
|
208 |
-
if (!
|
209 |
return;
|
210 |
}
|
211 |
|
@@ -221,8 +223,7 @@ HTML;
|
|
221 |
return;
|
222 |
}
|
223 |
|
224 |
-
$wpacuNoLoadAssets =
|
225 |
-
? $_POST[WPACU_PLUGIN_ID] : array();
|
226 |
|
227 |
if (is_array($wpacuNoLoadAssets)) {
|
228 |
global $wpdb;
|
@@ -269,7 +270,7 @@ HTML;
|
|
269 |
{
|
270 |
// Needed in case the user clicks "Update" on a page without assets retrieved
|
271 |
// Avoid resetting the existing values
|
272 |
-
if (!
|
273 |
return;
|
274 |
}
|
275 |
|
@@ -279,9 +280,7 @@ HTML;
|
|
279 |
|
280 |
$jsonNoAssetsLoadList = json_encode($wpacuNoLoadAssets);
|
281 |
|
282 |
-
|
283 |
-
add_option( WPACU_PLUGIN_ID . '_front_page_no_load', $jsonNoAssetsLoadList);
|
284 |
-
}
|
285 |
|
286 |
// If globally disabled, make exception to load for submitted assets
|
287 |
$this->saveLoadExceptions('front_page');
|
@@ -402,7 +401,7 @@ HTML;
|
|
402 |
update_post_meta($postId, '_' . WPACU_PLUGIN_ID . '_load_exceptions', $jsonLoadExceptions);
|
403 |
}
|
404 |
} elseif ($type === 'front_page') {
|
405 |
-
|
406 |
}
|
407 |
|
408 |
}
|
@@ -415,15 +414,13 @@ HTML;
|
|
415 |
{
|
416 |
// Is the "Asset CleanUp: Page Options" meta box not loaded?
|
417 |
// Then do not perform any update below
|
418 |
-
$pageOptionsMetaBoxLoaded =
|
419 |
|
420 |
if (! $pageOptionsMetaBoxLoaded) {
|
421 |
return;
|
422 |
}
|
423 |
|
424 |
-
$pageOptions =
|
425 |
-
? $_POST[WPACU_PLUGIN_ID.'_page_options']
|
426 |
-
: array();
|
427 |
|
428 |
// In order for the "Apply the selected options" to work
|
429 |
// At least one of the checkboxes above have to be enabled
|
@@ -454,11 +451,8 @@ HTML;
|
|
454 |
* Any global (all pages / everywhere) UNLOADS?
|
455 |
* Coming from a POST request
|
456 |
*/
|
457 |
-
$reqStyles
|
458 |
-
|
459 |
-
|
460 |
-
$reqScripts = (isset($_POST['wpacu_global_unload_scripts']) && is_array($_POST['wpacu_global_unload_scripts']))
|
461 |
-
? $_POST['wpacu_global_unload_scripts'] : array();
|
462 |
|
463 |
$this->saveToEverywhereUnloads($reqStyles, $reqScripts);
|
464 |
|
@@ -476,7 +470,7 @@ HTML;
|
|
476 |
public function saveToEverywhereUnloads($reqStyles = array(), $reqScripts = array())
|
477 |
{
|
478 |
// Is there any entry already in JSON format?
|
479 |
-
$existingListJson = get_option(
|
480 |
|
481 |
// Default list as array
|
482 |
$existingListEmpty = array('styles' => array(), 'scripts' => array());
|
@@ -498,10 +492,10 @@ HTML;
|
|
498 |
}
|
499 |
|
500 |
// Make sure all entries are unique (no handle duplicates)
|
501 |
-
$existingList['styles']
|
502 |
$existingList['scripts'] = array_unique($existingList['scripts']);
|
503 |
|
504 |
-
|
505 |
}
|
506 |
|
507 |
/**
|
@@ -569,7 +563,7 @@ HTML;
|
|
569 |
}
|
570 |
|
571 |
if ($isUpdated) {
|
572 |
-
|
573 |
}
|
574 |
}
|
575 |
|
@@ -590,11 +584,8 @@ HTML;
|
|
590 |
return;
|
591 |
}
|
592 |
|
593 |
-
$postStyles
|
594 |
-
|
595 |
-
|
596 |
-
$postScripts = (isset($_POST['wpacu_bulk_unload_scripts']) && is_array($_POST['wpacu_bulk_unload_scripts']))
|
597 |
-
? $_POST['wpacu_bulk_unload_scripts'] : array();
|
598 |
|
599 |
// Is there any entry already in JSON format?
|
600 |
$existingListJson = get_option( WPACU_PLUGIN_ID . '_bulk_unload');
|
@@ -644,7 +635,7 @@ HTML;
|
|
644 |
}
|
645 |
}
|
646 |
|
647 |
-
|
648 |
}
|
649 |
|
650 |
/**
|
@@ -724,7 +715,7 @@ HTML;
|
|
724 |
}
|
725 |
}
|
726 |
|
727 |
-
|
728 |
}
|
729 |
|
730 |
return $isUpdated;
|
41 |
*/
|
42 |
public function __construct()
|
43 |
{
|
44 |
+
$homePageSettingsUpdatedText = __('The homepage\'s settings were updated. Please make sure the homepage\'s cache is cleared (if you\'re using a caching plugin or a server-side caching solution) to immediately have the changes applied for every visitor.'. WPACU_PLUGIN_TEXT_DOMAIN);
|
45 |
$this->updateDoneMsg['homepage'] = <<<HTML
|
46 |
+
<span class="dashicons dashicons-yes"></span> {$homePageSettingsUpdatedText}
|
47 |
HTML;
|
48 |
|
49 |
+
$pageSettingsUpdatedText = __('This page\'s settings were updated. Please make sure the page\'s cache is cleared (if you\'re using a caching plugin or a server-side caching solution) to immediately have the changes applied for every visitor.', WPACU_PLUGIN_TEXT_DOMAIN);
|
50 |
$this->updateDoneMsg['page'] = <<<HTML
|
51 |
+
<span class="dashicons dashicons-yes"></span> {$pageSettingsUpdatedText}
|
52 |
HTML;
|
53 |
}
|
54 |
|
123 |
// Form submitted from the homepage
|
124 |
// e.g. from a page such as latest blog posts, not a static page that was selected as home page)
|
125 |
if (! ($postId > 0) && Misc::isHomePage()) {
|
126 |
+
$wpacuNoLoadAssets = Misc::getVar('post', WPACU_PLUGIN_ID, array());
|
127 |
$this->updateFrontPage($wpacuNoLoadAssets);
|
128 |
return;
|
129 |
}
|
144 |
public function redirectAfterFrontEndUpdate()
|
145 |
{
|
146 |
// It triggers ONLY on front-end view, when a valid POST request is made
|
147 |
+
if (! $this->frontEndUpdateTriggered || is_admin() || ! Misc::getVar('post', 'wpacu_unload_assets_area_loaded')) {
|
148 |
return;
|
149 |
}
|
150 |
|
207 |
|
208 |
// This is triggered only if the "Asset CleanUp" meta box was loaded with the list of assets
|
209 |
// Otherwise, $_POST[WPACU_PLUGIN_ID] will be taken as empty which might be not if there are values in the database
|
210 |
+
if (! Misc::getVar('post', 'wpacu_unload_assets_area_loaded')) {
|
211 |
return;
|
212 |
}
|
213 |
|
223 |
return;
|
224 |
}
|
225 |
|
226 |
+
$wpacuNoLoadAssets = Misc::getVar('post', WPACU_PLUGIN_ID, array());
|
|
|
227 |
|
228 |
if (is_array($wpacuNoLoadAssets)) {
|
229 |
global $wpdb;
|
270 |
{
|
271 |
// Needed in case the user clicks "Update" on a page without assets retrieved
|
272 |
// Avoid resetting the existing values
|
273 |
+
if (! Misc::getVar('post', 'wpacu_unload_assets_area_loaded')) {
|
274 |
return;
|
275 |
}
|
276 |
|
280 |
|
281 |
$jsonNoAssetsLoadList = json_encode($wpacuNoLoadAssets);
|
282 |
|
283 |
+
Misc::addUpdateOption(WPACU_PLUGIN_ID . '_front_page_no_load', $jsonNoAssetsLoadList);
|
|
|
|
|
284 |
|
285 |
// If globally disabled, make exception to load for submitted assets
|
286 |
$this->saveLoadExceptions('front_page');
|
401 |
update_post_meta($postId, '_' . WPACU_PLUGIN_ID . '_load_exceptions', $jsonLoadExceptions);
|
402 |
}
|
403 |
} elseif ($type === 'front_page') {
|
404 |
+
Misc::addUpdateOption( WPACU_PLUGIN_ID . '_front_page_load_exceptions', $jsonLoadExceptions);
|
405 |
}
|
406 |
|
407 |
}
|
414 |
{
|
415 |
// Is the "Asset CleanUp: Page Options" meta box not loaded?
|
416 |
// Then do not perform any update below
|
417 |
+
$pageOptionsMetaBoxLoaded = Misc::getVar('post', 'wpacu_meta_box_page_options_loaded', false);
|
418 |
|
419 |
if (! $pageOptionsMetaBoxLoaded) {
|
420 |
return;
|
421 |
}
|
422 |
|
423 |
+
$pageOptions = Misc::getVar('post', WPACU_PLUGIN_ID.'_page_options', array());
|
|
|
|
|
424 |
|
425 |
// In order for the "Apply the selected options" to work
|
426 |
// At least one of the checkboxes above have to be enabled
|
451 |
* Any global (all pages / everywhere) UNLOADS?
|
452 |
* Coming from a POST request
|
453 |
*/
|
454 |
+
$reqStyles = Misc::getVar('post', 'wpacu_global_unload_styles', array());
|
455 |
+
$reqScripts = Misc::getVar('post', 'wpacu_global_unload_scripts', array());
|
|
|
|
|
|
|
456 |
|
457 |
$this->saveToEverywhereUnloads($reqStyles, $reqScripts);
|
458 |
|
470 |
public function saveToEverywhereUnloads($reqStyles = array(), $reqScripts = array())
|
471 |
{
|
472 |
// Is there any entry already in JSON format?
|
473 |
+
$existingListJson = get_option(WPACU_PLUGIN_ID . '_global_unload');
|
474 |
|
475 |
// Default list as array
|
476 |
$existingListEmpty = array('styles' => array(), 'scripts' => array());
|
492 |
}
|
493 |
|
494 |
// Make sure all entries are unique (no handle duplicates)
|
495 |
+
$existingList['styles'] = array_unique($existingList['styles']);
|
496 |
$existingList['scripts'] = array_unique($existingList['scripts']);
|
497 |
|
498 |
+
Misc::addUpdateOption( WPACU_PLUGIN_ID . '_global_unload', json_encode($existingList));
|
499 |
}
|
500 |
|
501 |
/**
|
563 |
}
|
564 |
|
565 |
if ($isUpdated) {
|
566 |
+
Misc::addUpdateOption( WPACU_PLUGIN_ID . '_global_unload', json_encode($existingList));
|
567 |
}
|
568 |
}
|
569 |
|
584 |
return;
|
585 |
}
|
586 |
|
587 |
+
$postStyles = Misc::getVar('post', 'wpacu_bulk_unload_styles', array());
|
588 |
+
$postScripts = Misc::getVar('post', 'wpacu_bulk_unload_scripts', array());
|
|
|
|
|
|
|
589 |
|
590 |
// Is there any entry already in JSON format?
|
591 |
$existingListJson = get_option( WPACU_PLUGIN_ID . '_bulk_unload');
|
635 |
}
|
636 |
}
|
637 |
|
638 |
+
Misc::addUpdateOption( WPACU_PLUGIN_ID . '_bulk_unload', json_encode($existingList));
|
639 |
}
|
640 |
|
641 |
/**
|
715 |
}
|
716 |
}
|
717 |
|
718 |
+
Misc::addUpdateOption( WPACU_PLUGIN_ID . '_bulk_unload', json_encode($existingList));
|
719 |
}
|
720 |
|
721 |
return $isUpdated;
|
early-triggers.php
CHANGED
@@ -6,7 +6,8 @@ if (! defined('ABSPATH')) {
|
|
6 |
|
7 |
if (! function_exists('assetCleanUpNoLoad')) {
|
8 |
/**
|
9 |
-
* There are special cases when triggering "Asset CleanUp" is not relevant
|
|
|
10 |
*
|
11 |
* @return bool
|
12 |
*/
|
@@ -26,6 +27,21 @@ if (! function_exists('assetCleanUpNoLoad')) {
|
|
26 |
return true;
|
27 |
}
|
28 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
29 |
// WordPress Customise Mode
|
30 |
if ((isset($_GET['customize_changeset_uuid'], $_GET['customize_theme']) && $_GET['customize_changeset_uuid'] && $_GET['customize_theme'])
|
31 |
|| (strpos($_SERVER['REQUEST_URI'],
|
@@ -33,6 +49,13 @@ if (! function_exists('assetCleanUpNoLoad')) {
|
|
33 |
return true;
|
34 |
}
|
35 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
36 |
return false;
|
37 |
}
|
38 |
-
}
|
6 |
|
7 |
if (! function_exists('assetCleanUpNoLoad')) {
|
8 |
/**
|
9 |
+
* There are special cases when triggering "Asset CleanUp" plugin is not relevant
|
10 |
+
* Thus, for maximum compatibility and backend processing speed, it's better to avoid running any of its code
|
11 |
*
|
12 |
* @return bool
|
13 |
*/
|
27 |
return true;
|
28 |
}
|
29 |
|
30 |
+
// 4) Beaver Builder
|
31 |
+
if (isset($_GET['fl_builder'])) {
|
32 |
+
return true;
|
33 |
+
}
|
34 |
+
|
35 |
+
// 5) Thrive Architect
|
36 |
+
if (isset($_GET['action'], $_GET['tve']) && $_GET['action'] === 'architect' && $_GET['tve'] === 'true' && is_admin()) {
|
37 |
+
return true;
|
38 |
+
}
|
39 |
+
|
40 |
+
// 6) Page Builder by SiteOrigin
|
41 |
+
if (isset($_GET['action'], $_GET['so_live_editor']) && $_GET['action'] === 'edit' && $_GET['so_live_editor'] && is_admin()) {
|
42 |
+
return true;
|
43 |
+
}
|
44 |
+
|
45 |
// WordPress Customise Mode
|
46 |
if ((isset($_GET['customize_changeset_uuid'], $_GET['customize_theme']) && $_GET['customize_changeset_uuid'] && $_GET['customize_theme'])
|
47 |
|| (strpos($_SERVER['REQUEST_URI'],
|
49 |
return true;
|
50 |
}
|
51 |
|
52 |
+
// On request: for debugging purposes - e.g. https://yourwebsite.com/?wpacu_no_load
|
53 |
+
// Also make sure it's in the REQUEST URI and $_GET wasn't altered incorrectly before it's checked
|
54 |
+
// Technically, it will be like Asset CleanUp is not activated: no global settings and unload rules will be applied
|
55 |
+
if (array_key_exists('wpacu_no_load', $_GET) && strpos($_SERVER['REQUEST_URI'], 'wpacu_no_load') !== false) {
|
56 |
+
return true;
|
57 |
+
}
|
58 |
+
|
59 |
return false;
|
60 |
}
|
61 |
+
}
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Tags: pagespeed, page speed, dequeue, performance, gtmetrix
|
|
4 |
Donate link: https://gabelivan.com/items/wp-asset-cleanup-pro/?utm_source=wp_org_lite&utm_medium=donate
|
5 |
Requires at least: 4.4
|
6 |
Tested up to: 5.1.1
|
7 |
-
Stable tag: 1.3.2.
|
8 |
License: GPLv3
|
9 |
License URI: http://www.gnu.org/licenses/gpl.html
|
10 |
|
@@ -154,6 +154,16 @@ With the recently released "Test Mode" feature, you can safely unload assets on
|
|
154 |
4. Homepage CSS & JS Management (List sorted by location)
|
155 |
|
156 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
157 |
= 1.3.2.5 =
|
158 |
* Bug Fix: 403 Forbidden error was returned when fetching assets within the Dashboard because of the wrong nonce check
|
159 |
* Option to show on request all the settings (no tabs) within "Settings" plugin's area by appending '&wpacu_show_all' to the URL like: /wp-admin/admin.php?page=wpassetcleanup_settings&wpacu_show_all
|
4 |
Donate link: https://gabelivan.com/items/wp-asset-cleanup-pro/?utm_source=wp_org_lite&utm_medium=donate
|
5 |
Requires at least: 4.4
|
6 |
Tested up to: 5.1.1
|
7 |
+
Stable tag: 1.3.2.6
|
8 |
License: GPLv3
|
9 |
License URI: http://www.gnu.org/licenses/gpl.html
|
10 |
|
154 |
4. Homepage CSS & JS Management (List sorted by location)
|
155 |
|
156 |
== Changelog ==
|
157 |
+
= 1.3.2.6 =
|
158 |
+
* Prevent plugin from triggering any of its settings when page builders (e.g. Divi, Elementor, Beaver Builder, Oxygen, etc.) are in edit mode for maximum compatibility
|
159 |
+
* Compatibility with SG Optimizer plugin
|
160 |
+
* Option to prevent plugin to trigger any of its settings & unload rules on request via "wpacu_no_load" query string
|
161 |
+
* Do not minify CSS/JS from /wp-content/uploads/ (e.g. files belonging to Elementor or Oxygen page builder plugins)
|
162 |
+
* Added more things to "System Info" including settings and browser information
|
163 |
+
* Apply relative URLs for combined CSS/JS script/stylesheet tags, if URL opened is via SSL and the WordPress site URL starts with http://
|
164 |
+
* Bug Fix: Clear CSS/JS cache was returning a blank white page
|
165 |
+
* Bug Fix: Minify JS - Exceptions weren't applied
|
166 |
+
|
167 |
= 1.3.2.5 =
|
168 |
* Bug Fix: 403 Forbidden error was returned when fetching assets within the Dashboard because of the wrong nonce check
|
169 |
* Option to show on request all the settings (no tabs) within "Settings" plugin's area by appending '&wpacu_show_all' to the URL like: /wp-admin/admin.php?page=wpassetcleanup_settings&wpacu_show_all
|
templates/_admin-page-getting-started-areas/_benefits-fast-pages.php
CHANGED
@@ -6,26 +6,26 @@ if (! isset($data)) {
|
|
6 |
exit;
|
7 |
}
|
8 |
?>
|
9 |
-
<p class="area-title
|
10 |
-
<p
|
11 |
-
<p
|
12 |
-
<p><span class="dashicons dashicons-video-alt3"></span> <a href="https://www.youtube.com/watch?v=SO4YuDAkplU" target="_blank
|
13 |
<hr />
|
14 |
|
15 |
-
<p class="area-title
|
16 |
-
<p
|
17 |
<hr />
|
18 |
|
19 |
-
<p class="area-title
|
20 |
-
<p
|
21 |
<hr />
|
22 |
|
23 |
-
<p class="area-title
|
24 |
-
<p
|
25 |
|
26 |
-
<p style="margin-bottom: 0;"><em
|
27 |
-
<p style="margin-top: 5px; margin-bottom: 0;"><em
|
28 |
-
<p style="margin-top: 5px;"><em
|
29 |
|
30 |
<?php add_thickbox(); ?>
|
31 |
<div id="wpacu-brain-slow-website-info" style="display:none;">
|
@@ -34,4 +34,4 @@ if (! isset($data)) {
|
|
34 |
</div>
|
35 |
|
36 |
<span class="dashicons dashicons-format-image"></span> <a href="#TB_inline?&width=1024&height=550&inlineId=wpacu-brain-slow-website-info"
|
37 |
-
class="thickbox
|
6 |
exit;
|
7 |
}
|
8 |
?>
|
9 |
+
<p class="area-title"><?php _e('Higher search ranking', WPACU_PLUGIN_TEXT_DOMAIN); ?> <span style="font-size: 22px;">📈</span></p>
|
10 |
+
<p><?php _e('Since 2010, there has been a signal in Google search ranking algorithms: site speed, which reflects how quickly a website responds to web requests.', WPACU_PLUGIN_TEXT_DOMAIN); ?></p>
|
11 |
+
<p><?php _e('Speeding up websites is important — not just to site owners, but to all Internet users.', WPACU_PLUGIN_TEXT_DOMAIN); ?> <?php _e('Faster sites create happy users and Google has seen in their internal studies that when a site responds slowly, visitors spend less time there.', WPACU_PLUGIN_TEXT_DOMAIN); ?> <?php _e('But faster sites don\'t just improve user experience', WPACU_PLUGIN_TEXT_DOMAIN); ?>; <?php _e('recent data shows that improving site speed also reduces operating costs.', WPACU_PLUGIN_TEXT_DOMAIN); ?> <?php _e('Like Google, their users place a lot of value in speed — that\'s why they\'ve decided to take site speed into account in their search rankings. They use a variety of sources to determine the speed of a site relative to other sites.', WPACU_PLUGIN_TEXT_DOMAIN); ?>
|
12 |
+
<p><span class="dashicons dashicons-video-alt3"></span> <a href="https://www.youtube.com/watch?v=SO4YuDAkplU" target="_blank"><?php _e('How does Google determine page speed?', WPACU_PLUGIN_TEXT_DOMAIN); ?></a></p>
|
13 |
<hr />
|
14 |
|
15 |
+
<p class="area-title"><?php _e('Visitor Experience', WPACU_PLUGIN_TEXT_DOMAIN); ?> <span style="font-size: 24px;">😊</span></p>
|
16 |
+
<p><?php _e('For a customer (it\'s likely happened to you too) that wants to purchase something online, it\'s very frustrating to land on slow loading website.', WPACU_PLUGIN_TEXT_DOMAIN); ?> <?php _e('A blazing fast website, will keep your visitors happy, engaged, which will directly influence conversions.', WPACU_PLUGIN_TEXT_DOMAIN); ?> <?php _e('If a visitor doesn\'t get what he wants in a time he/she thinks it\'s reasonable, they will probably head to another website belonging to a competitor.', WPACU_PLUGIN_TEXT_DOMAIN); ?> <?php _e('As today\'s users expect a fast and streamlined web experience, you\'re losing business if you neglect this often overlooked aspect.', WPACU_PLUGIN_TEXT_DOMAIN); ?></p>
|
17 |
<hr />
|
18 |
|
19 |
+
<p class="area-title"><?php _e('Better Developer Experience', WPACU_PLUGIN_TEXT_DOMAIN); ?> <span style="font-size: 24px;">⚙️</span></p>
|
20 |
+
<p><?php _e('As developers, we often go through the HTML source code of the website, access the server (e.g. Apache, NGINX) logs that has the HTTP requests, and have to sometimes solve code conflict problems (e.g. between plugins) due to poorly written code.', WPACU_PLUGIN_TEXT_DOMAIN); ?> <?php _e('By preventing unnecessary files to load, having less HTTP requests, and cleaner HTML code, you will be able to easily go through the code (which is smaller).', WPACU_PLUGIN_TEXT_DOMAIN); ?> <?php _e('Your log files will take less space on the server, will be easier to backup and analyse, and by having less JavaScript files loading, you will be reduce the changes of getting less JS errors that could interfere with the functionality of your website.', WPACU_PLUGIN_TEXT_DOMAIN); ?></p>
|
21 |
<hr />
|
22 |
|
23 |
+
<p class="area-title"><?php _e('Higher Revenue', WPACU_PLUGIN_TEXT_DOMAIN); ?> <span style="font-size: 24px;">💯</span></p>
|
24 |
+
<p><?php _e('Just about any major retailer is taking site speed as a very important factor for increasing conversions.', WPACU_PLUGIN_TEXT_DOMAIN); ?> <?php _e('According to Strangeloop, 57% of online customers will leave a website after waiting 3 seconds for the page to load. Moreover, 80% of those people will not return to that page. Some of them will tell others about their negative experience. This has a direct impact on the conversion rate, revenue and brand image.', WPACU_PLUGIN_TEXT_DOMAIN); ?></p>
|
25 |
|
26 |
+
<p style="margin-bottom: 0;"><em>"<?php echo sprintf(__('%s of users say they\'ve felt STRESS OR ANGER while using a slow website.', WPACU_PLUGIN_TEXT_DOMAIN), '78%'); ?>"</em></p>
|
27 |
+
<p style="margin-top: 5px; margin-bottom: 0;"><em>"<?php echo sprintf(__('%s of users say that slow online transaction make them ANXIOUS about the success of the transaction.', WPACU_PLUGIN_TEXT_DOMAIN), '44%'); ?>"</em></p>
|
28 |
+
<p style="margin-top: 5px;"><em>"<?php echo sprintf(__('%s of people have THROWN THEIR PHONE while using a slow mobile site.', WPACU_PLUGIN_TEXT_DOMAIN), '4%'); ?>"</em></p>
|
29 |
|
30 |
<?php add_thickbox(); ?>
|
31 |
<div id="wpacu-brain-slow-website-info" style="display:none;">
|
34 |
</div>
|
35 |
|
36 |
<span class="dashicons dashicons-format-image"></span> <a href="#TB_inline?&width=1024&height=550&inlineId=wpacu-brain-slow-website-info"
|
37 |
+
class="thickbox"><?php echo sprintf(__('View "%s" Infographic', WPACU_PLUGIN_TEXT_DOMAIN), 'This Is Your Brain On A Slow Website'); ?></a>
|
templates/_admin-page-getting-started-areas/_how-it-works.php
CHANGED
@@ -6,22 +6,28 @@ if (! isset($data)) {
|
|
6 |
exit;
|
7 |
}
|
8 |
?>
|
9 |
-
<p
|
10 |
-
<p
|
11 |
<hr />
|
12 |
-
<p class="area-title
|
13 |
-
<p>Asset CleanUp is a <strong>front-end optimisation performance plugin</strong> and let's you select the assets that are not needed to load on your website and combine the remaining loaded ones into fewer files, which will in the end reduce considerably the number of HTTP requests and optimize the front-end side of your pages. <a target="_blank" href="https://developer.yahoo.com/performance/rules.html
|
14 |
<p>Once the setup is completed, the pages will have a better speed score since there will be less HTTP requests (.css & .js files) loaded by the browser (this can be tested using tools such as GTMetrix) and combined with a backend page caching system it will improve the page speed even more.
|
15 |
-
<p
|
16 |
<ul style="font-size: 14px; list-style: disc; margin-left: 25px;">
|
17 |
-
<li style="line-height: 21px; margin-bottom: 15px;">A plugin such as <a target="_blank" href="https://gabelivan.com/visit/wp-rocket">WP Rocket</a> (get 20% off by using the <em>IMAGIFY20</em> coupon code) that creates static HTML files (which are lighter thanks to Asset CleanUp) and reads them avoiding PHP code processing within the active plugins & theme, including database queries which can use lots of server resources if you have high traffic. The page caching improves the
|
18 |
-
<li style="line-height: 21px; margin-bottom: 20px;">
|
|
|
|
|
|
|
|
|
|
|
|
|
19 |
</ul>
|
20 |
|
21 |
-
<p style="line-height: normal;"><small><strong
|
22 |
<hr />
|
23 |
<p class="area-title">Example (Stripping ~66% of "crap") <span style="font-size: 24px;">✨</span></p>
|
24 |
<p>Let's suppose you have a page where 30 files (CSS & JS) are loaded. All have a total size of 1.5 MB. Using Asset CleanUp, you can reduce the number to 12 files by unloading the other 18 files which are useless on the page. You've reduced the total size to 0.7 MB, this resulting in less time in downloading the assets, thus the page will load faster. If you also combine and minify the remaining 12 files, the total assets size becomes smaller to 0.5 MB. In the end, <strong>the assets will load 3 times faster and improve your page speed score</strong>. Moreover, the HTML source code will be cleaner and easier to go through in case you're a developer and need to do any debugging or just check something in the code.</p>
|
25 |
<hr />
|
26 |
-
<p class="area-title
|
27 |
-
<p
|
6 |
exit;
|
7 |
}
|
8 |
?>
|
9 |
+
<p><?php _e('Often, our WordPress websites are loaded with elements that are not needed to load on specific pages or even everywhere.', WPACU_PLUGIN_TEXT_DOMAIN); ?> <?php _e('These assets (CSS & JavaScript files) as well as inline code are adding up to the total size of the page, thus taking more time for the page to load.', WPACU_PLUGIN_TEXT_DOMAIN); ?></p>
|
10 |
+
<p><?php _e('This could end up in a slow website that leads to page abandonment, poor ranking in Google search and sometimes conflict JavaScript errors where too many scripts are loading and one of them (or more) have poorly written code that is not autonomous and badly interacts with other code.', WPACU_PLUGIN_TEXT_DOMAIN); ?></p>
|
11 |
<hr />
|
12 |
+
<p class="area-title"><?php __('What Asset CleanUp really does?', WPACU_PLUGIN_TEXT_DOMAIN); ?> <span style="font-size: 24px;">🚀</span></p>
|
13 |
+
<p>Asset CleanUp is a <strong>front-end optimisation performance plugin</strong> and let's you select the assets that are not needed to load on your website and combine the remaining loaded ones into fewer files, which will in the end reduce considerably the number of HTTP requests and optimize the front-end side of your pages. <a target="_blank" href="https://developer.yahoo.com/performance/rules.html"><?php _e('Read more', WPACU_PLUGIN_TEXT_DOMAIN); ?></a></p>
|
14 |
<p>Once the setup is completed, the pages will have a better speed score since there will be less HTTP requests (.css & .js files) loaded by the browser (this can be tested using tools such as GTMetrix) and combined with a backend page caching system it will improve the page speed even more.
|
15 |
+
<p><?php _e('Page caching solutions include', WPACU_PLUGIN_TEXT_DOMAIN); ?>:</p>
|
16 |
<ul style="font-size: 14px; list-style: disc; margin-left: 25px;">
|
17 |
+
<li style="line-height: 21px; margin-bottom: 15px;">A plugin such as <a target="_blank" href="https://gabelivan.com/visit/wp-rocket">WP Rocket</a> (get 20% off by using the <em>IMAGIFY20</em> coupon code) that creates static HTML files (which are lighter thanks to Asset CleanUp) and reads them avoiding PHP code processing within the active plugins & theme, including database queries which can use lots of server resources if you have high traffic. <?php echo sprintf(__('The page caching improves the %sTTFB%s (time to first byte) which measures the duration from the user or client making an HTTP request to the first byte of the page being received by the client\'s browser.', WPACU_PLUGIN_TEXT_DOMAIN), '<a href="http://gabelivan.com/visit/wp-rocket-ttfb">', '</a>'); ?></li>
|
18 |
+
<li style="line-height: 21px; margin-bottom: 20px;">
|
19 |
+
<?php echo sprintf(
|
20 |
+
__('A hosting service that has its in-built WordPress caching like %sWPEngine%s or Kinsta, a web application accelerator like Varnish that can be setup the server etc.', WPACU_PLUGIN_TEXT_DOMAIN),
|
21 |
+
'<a href="https://gabelivan.com/visit/wp-engine">',
|
22 |
+
'</a>'
|
23 |
+
); ?>
|
24 |
+
</li>
|
25 |
</ul>
|
26 |
|
27 |
+
<p style="line-height: normal;"><small><strong><?php _e('Disclaimer', WPACU_PLUGIN_TEXT_DOMAIN); ?>:</strong> <?php _e('The recommendations above are based from my own experience as a developer & user and I\'m happy to recommend them to whoever wants superior WordPress performance.', WPACU_PLUGIN_TEXT_DOMAIN); ?> <?php _e('The links are affiliate related and I might get a commission if you decide to make a purchase.', WPACU_PLUGIN_TEXT_DOMAIN); ?></small></p>
|
28 |
<hr />
|
29 |
<p class="area-title">Example (Stripping ~66% of "crap") <span style="font-size: 24px;">✨</span></p>
|
30 |
<p>Let's suppose you have a page where 30 files (CSS & JS) are loaded. All have a total size of 1.5 MB. Using Asset CleanUp, you can reduce the number to 12 files by unloading the other 18 files which are useless on the page. You've reduced the total size to 0.7 MB, this resulting in less time in downloading the assets, thus the page will load faster. If you also combine and minify the remaining 12 files, the total assets size becomes smaller to 0.5 MB. In the end, <strong>the assets will load 3 times faster and improve your page speed score</strong>. Moreover, the HTML source code will be cleaner and easier to go through in case you're a developer and need to do any debugging or just check something in the code.</p>
|
31 |
<hr />
|
32 |
+
<p class="area-title"><?php _e('Not sure how to configure it?', WPACU_PLUGIN_TEXT_DOMAIN); ?> <span style="font-size: 24px;">🤔</span></p>
|
33 |
+
<p><?php _e('No problem!', WPACU_PLUGIN_TEXT_DOMAIN); ?> <?php _e('You can enable "Test Mode" and any changes you make, will only be visible for you (the logged-in administrator), while the regular visitors will see the pages as if the plugin is not active.', WPACU_PLUGIN_TEXT_DOMAIN); ?> <?php _e('Once all is good, you can disable "Test Mode" (thus applying the settings to everyone), clear the page caching (if using a plugin or a server-side solution such as Varnish) and check out the page speed score.', WPACU_PLUGIN_TEXT_DOMAIN); ?> <a target="_blank" href="https://assetcleanup.com/docs/?p=84"><?php _e('Read more', WPACU_PLUGIN_TEXT_DOMAIN); ?></a></p>
|
templates/_admin-page-getting-started-areas/_lite-vs-pro.php
CHANGED
@@ -21,90 +21,90 @@ HTML;
|
|
21 |
</thead>
|
22 |
<tbody>
|
23 |
<tr>
|
24 |
-
<td><strong
|
25 |
<td><span class="txt-top">lt;/span><span class="txt-l">0</span></td>
|
26 |
<td><span class="txt-top">lt;/span><span class="txt-l">39</span></td>
|
27 |
</tr>
|
28 |
<tr>
|
29 |
-
<td
|
30 |
<td><?php echo $svgTick; ?></td>
|
31 |
<td><?php echo $svgTick; ?></td>
|
32 |
</tr>
|
33 |
<tr>
|
34 |
-
<td
|
35 |
<td><?php echo $svgTick; ?></td>
|
36 |
<td><?php echo $svgTick; ?></td>
|
37 |
</tr>
|
38 |
<tr>
|
39 |
-
<td
|
40 |
<td><?php echo $svgTick; ?></td>
|
41 |
<td><?php echo $svgTick; ?></td>
|
42 |
</tr>
|
43 |
<tr>
|
44 |
-
<td
|
45 |
<td><?php echo $svgTick; ?></td>
|
46 |
<td><?php echo $svgTick; ?></td>
|
47 |
</tr>
|
48 |
<tr>
|
49 |
-
<td
|
50 |
<td><?php echo $svgTick; ?></td>
|
51 |
<td><?php echo $svgTick; ?></td>
|
52 |
</tr>
|
53 |
<tr>
|
54 |
-
<td
|
55 |
<td><?php echo $svgTick; ?></td>
|
56 |
<td><?php echo $svgTick; ?></td>
|
57 |
</tr>
|
58 |
<tr>
|
59 |
-
<td
|
60 |
<td><?php echo $svgTick; ?></td>
|
61 |
<td><?php echo $svgTick; ?></td>
|
62 |
</tr>
|
63 |
|
64 |
<tr>
|
65 |
-
<td
|
66 |
<td><?php echo $svgTick; ?></td>
|
67 |
<td><?php echo $svgTick; ?></td>
|
68 |
</tr>
|
69 |
|
70 |
<tr>
|
71 |
-
<td
|
72 |
<td><?php echo $svgTick; ?></td>
|
73 |
<td><?php echo $svgTick; ?></td>
|
74 |
</tr>
|
75 |
|
76 |
<tr>
|
77 |
-
<td
|
78 |
<td><span class="na">❌</span></td>
|
79 |
<td><?php echo $svgTick; ?></td>
|
80 |
</tr>
|
81 |
<tr>
|
82 |
-
<td
|
83 |
<td><span class="na">❌</span></td>
|
84 |
<td><?php echo $svgTick; ?></td>
|
85 |
</tr>
|
86 |
<tr>
|
87 |
-
<td
|
88 |
<td><span class="na">❌</span></td>
|
89 |
<td><?php echo $svgTick; ?></td>
|
90 |
</tr>
|
91 |
<tr>
|
92 |
-
<td
|
93 |
<td><span class="na">❌</span></td>
|
94 |
<td><?php echo $svgTick; ?></td>
|
95 |
</tr>
|
96 |
<tr>
|
97 |
-
<td
|
98 |
<td><span class="na">❌</span></td>
|
99 |
<td><?php echo $svgTick; ?></td>
|
100 |
</tr>
|
101 |
<tr>
|
102 |
<td colspan="3" style="text-align: center; padding: 10px;">
|
103 |
<a class="button button-primary button-hero" href="<?php echo WPACU_PLUGIN_GO_PRO_URL; ?>?utm_source=plugin_getting_started&utm_medium=lite_vs_pro">
|
104 |
-
<span class="dashicons dashicons-star-filled" style="line-height: inherit;"></span>  
|
105 |
|
106 |
<a class="button button-default button-hero" href="https://gabelivan.com/contact/">
|
107 |
-
<span class="dashicons dashicons-admin-comments" style="line-height: inherit;"></span>  
|
108 |
</td>
|
109 |
</tr>
|
110 |
</tbody>
|
21 |
</thead>
|
22 |
<tbody>
|
23 |
<tr>
|
24 |
+
<td><strong><?php _e('Yearly Price', WPACU_PLUGIN_TEXT_DOMAIN); ?></strong></td>
|
25 |
<td><span class="txt-top">lt;/span><span class="txt-l">0</span></td>
|
26 |
<td><span class="txt-top">lt;/span><span class="txt-l">39</span></td>
|
27 |
</tr>
|
28 |
<tr>
|
29 |
+
<td><?php _e('Manage CSS & JavaScript files on Homepage, Posts, Pages & Custom Post Types (e.g. WooCommerce product pages, Easy Digital Downloads download items)', WPACU_PLUGIN_TEXT_DOMAIN); ?></td>
|
30 |
<td><?php echo $svgTick; ?></td>
|
31 |
<td><?php echo $svgTick; ?></td>
|
32 |
</tr>
|
33 |
<tr>
|
34 |
+
<td><?php _e('Bulk Unloads: Everywhere (Site-Wide), On Specific Pages & Post Types, Add load exceptions', WPACU_PLUGIN_TEXT_DOMAIN); ?></td>
|
35 |
<td><?php echo $svgTick; ?></td>
|
36 |
<td><?php echo $svgTick; ?></td>
|
37 |
</tr>
|
38 |
<tr>
|
39 |
+
<td><?php _e('Manage the CSS & JavaScript files within the Dashboard (default) and Front-end view (bottom of the page) if chosen', WPACU_PLUGIN_TEXT_DOMAIN); ?></td>
|
40 |
<td><?php echo $svgTick; ?></td>
|
41 |
<td><?php echo $svgTick; ?></td>
|
42 |
</tr>
|
43 |
<tr>
|
44 |
+
<td><?php _e('Enable "Test Mode" to only apply the plugin\'s changes for the logged-in administrator for debugging purposes', WPACU_PLUGIN_TEXT_DOMAIN); ?></td>
|
45 |
<td><?php echo $svgTick; ?></td>
|
46 |
<td><?php echo $svgTick; ?></td>
|
47 |
</tr>
|
48 |
<tr>
|
49 |
+
<td><?php _e('Minify remaining loaded CSS & JavaScript files (with option to add exceptions)', WPACU_PLUGIN_TEXT_DOMAIN); ?></td>
|
50 |
<td><?php echo $svgTick; ?></td>
|
51 |
<td><?php echo $svgTick; ?></td>
|
52 |
</tr>
|
53 |
<tr>
|
54 |
+
<td><?php _e('Combine remaining loaded CSS & JavaScript files into fewer files from each <code><HEAD></code> and <code><BODY></code> location (with option to add exceptions)', WPACU_PLUGIN_TEXT_DOMAIN); ?></td>
|
55 |
<td><?php echo $svgTick; ?></td>
|
56 |
<td><?php echo $svgTick; ?></td>
|
57 |
</tr>
|
58 |
<tr>
|
59 |
+
<td><?php echo sprintf(__('Remove unused elements from the <code><HEAD></code> and <code><BODY></code> including the following link tags: %s.', WPACU_PLUGIN_TEXT_DOMAIN), 'Really Simple Discovery (RSD), Windows Live Writer, REST API, Posts/Pages Shortlink, Post\'s Relational, WordPress Generators (also good for security), RSS Feed Links'); ?> <?php _e('Valid HTML comments are also stripped (exceptions can be added) while conditional Internet Explorer comments are preserved.', WPACU_PLUGIN_TEXT_DOMAIN); ?></td>
|
60 |
<td><?php echo $svgTick; ?></td>
|
61 |
<td><?php echo $svgTick; ?></td>
|
62 |
</tr>
|
63 |
|
64 |
<tr>
|
65 |
+
<td><?php _e('Site-Wide Unload For Common Elements that are often unused such as: WordPress Emojis, jQuery Migrate, Comment Reply (if not using WP as a blog)', WPACU_PLUGIN_TEXT_DOMAIN); ?></td>
|
66 |
<td><?php echo $svgTick; ?></td>
|
67 |
<td><?php echo $svgTick; ?></td>
|
68 |
</tr>
|
69 |
|
70 |
<tr>
|
71 |
+
<td><?php _e('Disable XML-RPC Protocol Support partially or completely', WPACU_PLUGIN_TEXT_DOMAIN); ?></td>
|
72 |
<td><?php echo $svgTick; ?></td>
|
73 |
<td><?php echo $svgTick; ?></td>
|
74 |
</tr>
|
75 |
|
76 |
<tr>
|
77 |
+
<td><?php _e('Manage CSS & JavaScript files on Categories, Tags, Custom Taxonomy pages, Date & Author Archive Pages, Search Results & 404 Not Found pages', WPACU_PLUGIN_TEXT_DOMAIN); ?></td>
|
78 |
<td><span class="na">❌</span></td>
|
79 |
<td><?php echo $svgTick; ?></td>
|
80 |
</tr>
|
81 |
<tr>
|
82 |
+
<td><?php _e('Move CSS & JavaScript files from <code><HEAD></code> to <code><BODY></code> (to reduce render-blocking) or vice-versa (for very early triggering)', WPACU_PLUGIN_TEXT_DOMAIN); ?></td>
|
83 |
<td><span class="na">❌</span></td>
|
84 |
<td><?php echo $svgTick; ?></td>
|
85 |
</tr>
|
86 |
<tr>
|
87 |
+
<td><?php _e('Apply "async" and "defer" attributes to loaded JavaScript files', WPACU_PLUGIN_TEXT_DOMAIN); ?></td>
|
88 |
<td><span class="na">❌</span></td>
|
89 |
<td><?php echo $svgTick; ?></td>
|
90 |
</tr>
|
91 |
<tr>
|
92 |
+
<td><?php _e('Show the file sizes for each loaded CSS & JavaScript file including external ones', WPACU_PLUGIN_TEXT_DOMAIN); ?></td>
|
93 |
<td><span class="na">❌</span></td>
|
94 |
<td><?php echo $svgTick; ?></td>
|
95 |
</tr>
|
96 |
<tr>
|
97 |
+
<td><?php _e('Priority Customer Support', WPACU_PLUGIN_TEXT_DOMAIN); ?></td>
|
98 |
<td><span class="na">❌</span></td>
|
99 |
<td><?php echo $svgTick; ?></td>
|
100 |
</tr>
|
101 |
<tr>
|
102 |
<td colspan="3" style="text-align: center; padding: 10px;">
|
103 |
<a class="button button-primary button-hero" href="<?php echo WPACU_PLUGIN_GO_PRO_URL; ?>?utm_source=plugin_getting_started&utm_medium=lite_vs_pro">
|
104 |
+
<span class="dashicons dashicons-star-filled" style="line-height: inherit;"></span> <?php _e('Upgrade to Pro to unlock all benefits', WPACU_PLUGIN_TEXT_DOMAIN); ?></a>
|
105 |
|
106 |
<a class="button button-default button-hero" href="https://gabelivan.com/contact/">
|
107 |
+
<span class="dashicons dashicons-admin-comments" style="line-height: inherit;"></span> <?php _e('I have some questions', WPACU_PLUGIN_TEXT_DOMAIN); ?></a>
|
108 |
</td>
|
109 |
</tr>
|
110 |
</tbody>
|
templates/_admin-page-getting-started-areas/_start-optimization.php
CHANGED
@@ -8,7 +8,7 @@ if (! isset($data)) {
|
|
8 |
?>
|
9 |
<p>For the <em>homepage</em>, you can go to "Asset CleanUp" -> "<a href="<?php echo admin_url('admin.php?page='.WPACU_PLUGIN_ID.'_assets_manager') ?>">Homepage</a>" from the plugin's menu and you will notice the list of all the styles &scripts files that are loading there. For each file, you will see options that you can enabled/disable.</p>
|
10 |
<p>For <em>posts, pages & custom post types</em>, you can edit the page within the Dashboard or via the front-end view (if you enabled the option in "Settings") and go to "Asset CleanUp" area where you can manage all the CSS & JS files loading on that post/page.</p>
|
11 |
-
<p>To view all the pages where Asset CleanUp can do optimization for, go to "<a href="<?php echo admin_url('admin.php?page='.WPACU_PLUGIN_ID.'_assets_manager&wpacu_for=all_other_pages');
|
12 |
<hr />
|
13 |
|
14 |
<p style="font-size: 16px;"><strong>Common Example: "Contact Form 7" plugin</strong></p>
|
8 |
?>
|
9 |
<p>For the <em>homepage</em>, you can go to "Asset CleanUp" -> "<a href="<?php echo admin_url('admin.php?page='.WPACU_PLUGIN_ID.'_assets_manager') ?>">Homepage</a>" from the plugin's menu and you will notice the list of all the styles &scripts files that are loading there. For each file, you will see options that you can enabled/disable.</p>
|
10 |
<p>For <em>posts, pages & custom post types</em>, you can edit the page within the Dashboard or via the front-end view (if you enabled the option in "Settings") and go to "Asset CleanUp" area where you can manage all the CSS & JS files loading on that post/page.</p>
|
11 |
+
<p>To view all the pages where Asset CleanUp can do optimization for, go to "<a href="<?php echo admin_url('admin.php?page='.WPACU_PLUGIN_ID.'_assets_manager&wpacu_for=all_other_pages'); ?>"><?php _e('Pages Info', WPACU_PLUGIN_TEXT_DOMAIN); ?></a>".</p>
|
12 |
<hr />
|
13 |
|
14 |
<p style="font-size: 16px;"><strong>Common Example: "Contact Form 7" plugin</strong></p>
|
templates/_admin-page-settings-bulk-changes/_bulk-unloaded.php
CHANGED
@@ -7,13 +7,13 @@ if (! isset($data)) {
|
|
7 |
}
|
8 |
|
9 |
// [wpacu_lite]
|
10 |
-
$availableForPro = '<span class="wpacu-tooltip
|
11 |
// [/wpacu_lite]
|
12 |
?>
|
13 |
-
<p>This page collects all the assets that have bulk rules such as <em>"Unload everywhere"</em> or <em>"Unload on All Pages of <strong>post</strong> post type"</em> etc. Although, you can manage them when editing a page, post etc., this page will make it easier for you to view them in one place. Note that a bulk unload is considered anything that is applied once and it has effect on multiple pages of the same kind or site-wide
|
14 |
|
15 |
<nav class="nav-tab-wrapper">
|
16 |
-
<a href="<?php echo admin_url('admin.php?page=wpassetcleanup_bulk_unloads'); ?>" class="nav-tab <?php if ($data['for'] === 'everywhere') { ?>nav-tab-active<?php }
|
17 |
<a href="<?php echo admin_url('admin.php?page=wpassetcleanup_bulk_unloads&wpacu_for=post_types'); ?>" class="nav-tab <?php if ($data['for'] === 'post_types') { ?>nav-tab-active<?php } ?>">Posts, Pages & Custom Post Types</a>
|
18 |
<a href="<?php echo WPACU_PLUGIN_GO_PRO_URL; ?>?utm_source=plugin_bulk_unloaded&utm_medium=tab_link" target="_blank" class="nav-tab go-pro-link-no-style no-transition"><?php echo $availableForPro; ?> Taxonomies</a>
|
19 |
<a href="<?php echo WPACU_PLUGIN_GO_PRO_URL; ?>?utm_source=plugin_bulk_unloaded&utm_medium=tab_link" target="_blank" class="nav-tab go-pro-link-no-style no-transition"><?php echo $availableForPro; ?> Authors</a>
|
@@ -34,7 +34,7 @@ if ($data['for'] === 'post_types') {
|
|
34 |
<input type="hidden" name="page" value="wpassetcleanup_bulk_unloads" />
|
35 |
<input type="hidden" name="wpacu_for" value="post_types" />
|
36 |
|
37 |
-
<div style="margin: 0 0 10px 0
|
38 |
<select id="wpacu_post_type_select" name="wpacu_post_type">
|
39 |
<?php foreach ($data['post_types_list'] as $postTypeKey => $postTypeValue) { ?>
|
40 |
<option <?php if ($data['post_type'] === $postTypeKey) { echo 'selected="selected"'; } ?> value="<?php echo $postTypeKey; ?>"><?php echo $postTypeValue; ?></option>
|
@@ -66,14 +66,14 @@ if ($data['for'] === 'post_types') {
|
|
66 |
<div class="wpacu-clearfix"></div>
|
67 |
|
68 |
<div style="padding: 0 10px 0 0;">
|
69 |
-
<h3
|
70 |
<?php
|
71 |
if (! empty($data['values']['styles'])) {
|
72 |
?>
|
73 |
<table class="wp-list-table widefat fixed striped">
|
74 |
<tr>
|
75 |
<td><strong>Handle</strong></td>
|
76 |
-
<td><strong
|
77 |
</tr>
|
78 |
<?php
|
79 |
foreach ($data['values']['styles'] as $handle) {
|
@@ -94,19 +94,19 @@ if ($data['for'] === 'post_types') {
|
|
94 |
<?php
|
95 |
} else {
|
96 |
?>
|
97 |
-
<p
|
98 |
<?php
|
99 |
}
|
100 |
?>
|
101 |
|
102 |
-
<h3
|
103 |
<?php
|
104 |
if (! empty($data['values']['scripts'])) {
|
105 |
?>
|
106 |
<table class="wp-list-table widefat fixed striped">
|
107 |
<tr>
|
108 |
<td><strong>Handle</strong></td>
|
109 |
-
<td><strong
|
110 |
</tr>
|
111 |
<?php
|
112 |
foreach ($data['values']['scripts'] as $handle) {
|
@@ -117,7 +117,7 @@ if ($data['for'] === 'post_types') {
|
|
117 |
<label><input type="checkbox"
|
118 |
class="wpacu_remove_rule"
|
119 |
name="wpacu_options_scripts[<?php echo $handle; ?>]"
|
120 |
-
value="remove" /> Remove rule
|
121 |
</td>
|
122 |
</tr>
|
123 |
<?php
|
@@ -127,7 +127,7 @@ if ($data['for'] === 'post_types') {
|
|
127 |
<?php
|
128 |
} else {
|
129 |
?>
|
130 |
-
<p
|
131 |
<?php
|
132 |
}
|
133 |
?>
|
@@ -151,14 +151,14 @@ if ($data['for'] === 'post_types') {
|
|
151 |
<div class="wpacu-clearfix"></div>
|
152 |
|
153 |
<div style="padding: 0 10px 0 0;">
|
154 |
-
<h3
|
155 |
<?php
|
156 |
if (! empty($data['values']['styles'])) {
|
157 |
?>
|
158 |
<table class="wp-list-table widefat fixed striped">
|
159 |
<tr>
|
160 |
<td><strong>Handle</strong></td>
|
161 |
-
<td><strong
|
162 |
</tr>
|
163 |
<?php
|
164 |
foreach ($data['values']['styles'] as $handle) {
|
@@ -169,7 +169,7 @@ if ($data['for'] === 'post_types') {
|
|
169 |
<label><input type="checkbox"
|
170 |
class="wpacu_remove_rule"
|
171 |
name="wpacu_options_post_type_styles[<?php echo $handle; ?>]"
|
172 |
-
value="remove" /> Remove rule
|
173 |
</td>
|
174 |
</tr>
|
175 |
<?php
|
@@ -184,14 +184,14 @@ if ($data['for'] === 'post_types') {
|
|
184 |
}
|
185 |
?>
|
186 |
|
187 |
-
<h3
|
188 |
<?php
|
189 |
if (! empty($data['values']['scripts'])) {
|
190 |
?>
|
191 |
<table class="wp-list-table widefat fixed striped">
|
192 |
<tr>
|
193 |
<td><strong>Handle</strong></td>
|
194 |
-
<td><strong
|
195 |
</tr>
|
196 |
<?php
|
197 |
foreach ($data['values']['scripts'] as $handle) {
|
@@ -202,7 +202,7 @@ if ($data['for'] === 'post_types') {
|
|
202 |
<label><input type="checkbox"
|
203 |
class="wpacu_remove_rule"
|
204 |
name="wpacu_options_post_type_scripts[<?php echo $handle; ?>]"
|
205 |
-
value="remove" /> Remove rule
|
206 |
</td>
|
207 |
</tr>
|
208 |
<?php
|
@@ -252,7 +252,7 @@ if ($data['for'] === 'post_types') {
|
|
252 |
<?php
|
253 |
if ($noAssetsToRemove) {
|
254 |
?>
|
255 |
-
<small
|
256 |
<?php
|
257 |
}
|
258 |
?>
|
7 |
}
|
8 |
|
9 |
// [wpacu_lite]
|
10 |
+
$availableForPro = '<span class="wpacu-tooltip">'.__('Available for Pro users', WPACU_PLUGIN_TEXT_DOMAIN).'<br />'.__('Click to upgrade!', WPACU_PLUGIN_TEXT_DOMAIN).'</span> <img style="opacity: 0.4;" width="20" height="20" src="'.WPACU_PLUGIN_URL.'/assets/icons/icon-lock.svg" valign="top" alt="" />';
|
11 |
// [/wpacu_lite]
|
12 |
?>
|
13 |
+
<p>This page collects all the assets that have bulk rules such as <em>"Unload everywhere"</em> or <em>"Unload on All Pages of <strong>post</strong> post type"</em> etc. Although, you can manage them when editing a page, post etc., this page will make it easier for you to view them in one place. Note that a bulk unload is considered anything that is applied once and it has effect on multiple pages of the same kind or site-wide.</p>
|
14 |
|
15 |
<nav class="nav-tab-wrapper">
|
16 |
+
<a href="<?php echo admin_url('admin.php?page=wpassetcleanup_bulk_unloads'); ?>" class="nav-tab <?php if ($data['for'] === 'everywhere') { ?>nav-tab-active<?php } ?>"><?php _e('Everywhere', WPACU_PLUGIN_TEXT_DOMAIN); ?></a>
|
17 |
<a href="<?php echo admin_url('admin.php?page=wpassetcleanup_bulk_unloads&wpacu_for=post_types'); ?>" class="nav-tab <?php if ($data['for'] === 'post_types') { ?>nav-tab-active<?php } ?>">Posts, Pages & Custom Post Types</a>
|
18 |
<a href="<?php echo WPACU_PLUGIN_GO_PRO_URL; ?>?utm_source=plugin_bulk_unloaded&utm_medium=tab_link" target="_blank" class="nav-tab go-pro-link-no-style no-transition"><?php echo $availableForPro; ?> Taxonomies</a>
|
19 |
<a href="<?php echo WPACU_PLUGIN_GO_PRO_URL; ?>?utm_source=plugin_bulk_unloaded&utm_medium=tab_link" target="_blank" class="nav-tab go-pro-link-no-style no-transition"><?php echo $availableForPro; ?> Authors</a>
|
34 |
<input type="hidden" name="page" value="wpassetcleanup_bulk_unloads" />
|
35 |
<input type="hidden" name="wpacu_for" value="post_types" />
|
36 |
|
37 |
+
<div style="margin: 0 0 10px 0;"><?php _e('Select the page or post type (including custom ones) for which you want to see the unloaded scripts & styles', WPACU_PLUGIN_TEXT_DOMAIN); ?>:</div>
|
38 |
<select id="wpacu_post_type_select" name="wpacu_post_type">
|
39 |
<?php foreach ($data['post_types_list'] as $postTypeKey => $postTypeValue) { ?>
|
40 |
<option <?php if ($data['post_type'] === $postTypeKey) { echo 'selected="selected"'; } ?> value="<?php echo $postTypeKey; ?>"><?php echo $postTypeValue; ?></option>
|
66 |
<div class="wpacu-clearfix"></div>
|
67 |
|
68 |
<div style="padding: 0 10px 0 0;">
|
69 |
+
<h3><?php _e('Styles', WPACU_PLUGIN_TEXT_DOMAIN); ?></h3>
|
70 |
<?php
|
71 |
if (! empty($data['values']['styles'])) {
|
72 |
?>
|
73 |
<table class="wp-list-table widefat fixed striped">
|
74 |
<tr>
|
75 |
<td><strong>Handle</strong></td>
|
76 |
+
<td><strong><?php _e('Actions', WPACU_PLUGIN_TEXT_DOMAIN); ?></strong></td>
|
77 |
</tr>
|
78 |
<?php
|
79 |
foreach ($data['values']['styles'] as $handle) {
|
94 |
<?php
|
95 |
} else {
|
96 |
?>
|
97 |
+
<p><?php _e('There are no site-wide unloaded styles.', WPACU_PLUGIN_TEXT_DOMAIN); ?></p>
|
98 |
<?php
|
99 |
}
|
100 |
?>
|
101 |
|
102 |
+
<h3><?php _e('Scripts', WPACU_PLUGIN_TEXT_DOMAIN); ?></h3>
|
103 |
<?php
|
104 |
if (! empty($data['values']['scripts'])) {
|
105 |
?>
|
106 |
<table class="wp-list-table widefat fixed striped">
|
107 |
<tr>
|
108 |
<td><strong>Handle</strong></td>
|
109 |
+
<td><strong><?php _e('Actions', WPACU_PLUGIN_TEXT_DOMAIN); ?></strong></td>
|
110 |
</tr>
|
111 |
<?php
|
112 |
foreach ($data['values']['scripts'] as $handle) {
|
117 |
<label><input type="checkbox"
|
118 |
class="wpacu_remove_rule"
|
119 |
name="wpacu_options_scripts[<?php echo $handle; ?>]"
|
120 |
+
value="remove" /> <?php _e('Remove rule', WPACU_PLUGIN_TEXT_DOMAIN); ?></label>
|
121 |
</td>
|
122 |
</tr>
|
123 |
<?php
|
127 |
<?php
|
128 |
} else {
|
129 |
?>
|
130 |
+
<p><?php _e('There are no site-wide unloaded scripts.', WPACU_PLUGIN_TEXT_DOMAIN); ?></p>
|
131 |
<?php
|
132 |
}
|
133 |
?>
|
151 |
<div class="wpacu-clearfix"></div>
|
152 |
|
153 |
<div style="padding: 0 10px 0 0;">
|
154 |
+
<h3><?php _e('Styles', WPACU_PLUGIN_TEXT_DOMAIN); ?></h3>
|
155 |
<?php
|
156 |
if (! empty($data['values']['styles'])) {
|
157 |
?>
|
158 |
<table class="wp-list-table widefat fixed striped">
|
159 |
<tr>
|
160 |
<td><strong>Handle</strong></td>
|
161 |
+
<td><strong><?php _e('Actions', WPACU_PLUGIN_TEXT_DOMAIN); ?></strong></td>
|
162 |
</tr>
|
163 |
<?php
|
164 |
foreach ($data['values']['styles'] as $handle) {
|
169 |
<label><input type="checkbox"
|
170 |
class="wpacu_remove_rule"
|
171 |
name="wpacu_options_post_type_styles[<?php echo $handle; ?>]"
|
172 |
+
value="remove" /> <?php _e('Remove rule', WPACU_PLUGIN_TEXT_DOMAIN); ?></label>
|
173 |
</td>
|
174 |
</tr>
|
175 |
<?php
|
184 |
}
|
185 |
?>
|
186 |
|
187 |
+
<h3><?php _e('Scripts', WPACU_PLUGIN_TEXT_DOMAIN); ?></h3>
|
188 |
<?php
|
189 |
if (! empty($data['values']['scripts'])) {
|
190 |
?>
|
191 |
<table class="wp-list-table widefat fixed striped">
|
192 |
<tr>
|
193 |
<td><strong>Handle</strong></td>
|
194 |
+
<td><strong><?php _e('Actions', WPACU_PLUGIN_TEXT_DOMAIN); ?></strong></td>
|
195 |
|