Version Description
- New: Add filter to add 3 more paragraph AdSense ads placed with WP QUADS PRO
- New: Support link to troubleshooting guide if AdSense ads are not shown
- New: Add floating Save Settings button
- New: Grey out unused AdSense ad spots in general settings
- New: Tested up to Wordpress 4.7.1
- New: Use up to 20 maximum AdSense ads on one page
New: Allow the use of the same ad on several different ad positions at the same time
Fix: Check if WP QUADS PRO is installed was very slow
Fix: AdSense option Hide on device X condition not working width shortcode [quads]
Fix: Rewrite admin html and css for a more robust structure to prevent to be overwritten by other plugin devs who think its cool to load their css stuff all over the admin area
Fix: Button Open All Ads only works on second click
Fix: Hide Sizing Options when ad type is not AdSense
Tweak: Remove deprecated code lines and move relevant functons to api.php
Download this release
Release Info
| Developer | ReneHermi |
| Plugin | |
| Version | 1.4.1 |
| Comparing to | |
| See all releases | |
Code changes from version 1.4.0 to 1.4.1
- assets/css/quads-admin.css +3 -3
- assets/css/quads-admin.min.css +1 -1
- assets/js/quads-admin.js +44 -4
- assets/js/quads-admin.min.js +44 -4
- includes/admin/admin-actions.php +9 -0
- includes/admin/admin-notices.php +5 -5
- includes/admin/settings/display-settings.php +12 -7
- includes/admin/settings/register-settings.php +42 -70
- includes/admin/upgrades/upgrade-functions.php +2 -2
- includes/api.php +41 -0
- includes/conditionals.php +2 -0
- includes/shortcodes.php +29 -8
- includes/template-functions.php +111 -80
- includes/widgets.php +10 -10
- quick-adsense-reloaded.php +10 -41
- readme.txt +21 -2
assets/css/quads-admin.css
CHANGED
|
@@ -128,13 +128,13 @@ input.medium-text, textarea.medium-text {
|
|
| 128 |
|
| 129 |
|
| 130 |
|
| 131 |
-
#quads_tab_container .row{
|
| 132 |
padding-top:12px;
|
| 133 |
padding-bottom:12px;
|
| 134 |
}
|
| 135 |
|
| 136 |
|
| 137 |
-
#quads_tab_container .row label strong, #tab_container .row strong {
|
| 138 |
font-weight: bold;
|
| 139 |
}
|
| 140 |
|
|
@@ -463,7 +463,7 @@ li.quads-tabs {
|
|
| 463 |
max-width:640px;
|
| 464 |
}
|
| 465 |
|
| 466 |
-
#quads_settingslicenses_header .row.th{
|
| 467 |
min-width:250px;
|
| 468 |
}
|
| 469 |
|
| 128 |
|
| 129 |
|
| 130 |
|
| 131 |
+
#quads_tab_container .quads-row{
|
| 132 |
padding-top:12px;
|
| 133 |
padding-bottom:12px;
|
| 134 |
}
|
| 135 |
|
| 136 |
|
| 137 |
+
#quads_tab_container .quads-row label strong, #tab_container .quads-row strong {
|
| 138 |
font-weight: bold;
|
| 139 |
}
|
| 140 |
|
| 463 |
max-width:640px;
|
| 464 |
}
|
| 465 |
|
| 466 |
+
#quads_settingslicenses_header .quads-row.th{
|
| 467 |
min-width:250px;
|
| 468 |
}
|
| 469 |
|
assets/css/quads-admin.min.css
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
.quads-share-button-container{margin:5px 0}.quads-share-button-container p{margin:0 0 10px}.quads-share-button{display:inline-block}.quads-share-button a{text-decoration:none}.quads-share-button .quads-share{font-family:sans-serif;font-weight:700;text-decoration:none;text-align:center;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;color:#FFF;display:inline;font-size:16px;width:40px;padding:4px 8px}.quads-share-button-twitter .quads-share{background-color:#00ABF0}.quads-share-button-facebook .quads-share{background-color:#3b5998}.quads-share-button-googleplus .quads-share{background-color:#F53424}.quads-share-button-facebook .share:active,.quads-share-button-googleplus .share:active,.quads-share-button-twitter .share:active{background-color:#353535}@media (max-width:925px){.quads-share-button .quads-share{font-size:15px;padding:8px 16px}}.quads-richeditor{font-size:11px}#quads-add-ons h2{margin:0 0 15px}#quads-add-ons .quadsshare-addons{float:left;margin:0 15px 15px 0;background:#f0f0f0;border:1px solid #ccc;width:320px;padding:8px;height:315px;position:relative}#quads-add-ons .quadsshare-addons h3{margin:0 0 8px;font-size:13px}#quads-add-ons .quadsshare-addons .button-secondary{position:absolute;bottom:8px;left:8px}#quads-add-ons .quadsshare-addons .third-party{display:none}#system-info-textarea{width:580px;height:400px;font-family:Menlo,Monaco,monospace;background:0 0;white-space:pre;overflow:auto;display:block}.quads-select-chosen{width:300px}input.large-text,textarea.large-text{max-width:600px}input.medium-text,textarea.medium-text{min-width:190px}#quads_tab_container ul{list-style:none;margin:0;padding:0;background:#fff;float:left}#quads_tab_container ul li:first-child.selected-tab{border-top:none}#quads_tab_container ul li a.selected-tab{font-weight:700;text-decoration:none}#quads_tab_container .row{padding-top:12px;padding-bottom:12px}#quads_tab_container .row label strong,#tab_container .row strong{font-weight:700}.quads-tabs a{padding:5px;color:#a1a1a1;text-transform:uppercase}.quads-tabs a strong{font-weight:700}li.quads-tabs{float:left;margin-left:0;background-color:#e5e5e5}#quads_tab_container>ul>li.quads-tabs.active{background-color:#fff}#quads_tab_container>ul>li.quads-tabs.active a{color:#83c11f}#quads_tab_container .quads-panel-container{background:#FFF;padding:20px;overflow:auto;text-align:left;margin-bottom:10px;max-width:640px;float:left;clear:both}.form-table{margin-top:-20px}#quads_tab_container .form-table th{vertical-align:top;text-align:left;padding:20px 10px 20px 0;line-height:1.3;font-weight:700;font-size:14px;color:#484848;width:30%}#quads_tab_container .form-table tr{border-bottom:1px solid #E7E7E7}#quads_tab_container span.description{display:block;font-weight:400;font-style:normal;font-size:13px;margin-top:7px;color:#484848}#quads_tab_container .col-title{font-size:18px;color:#484848}@media only screen and (max-width:680px){#quads_tab_container ul{float:none;background:#fff}#quads_tab_container .form-table tr>th{width:100%}#quads_tab_container span.description{font-size:14px}#quads_tab_container .form-table tr>th,#tab_container .form-table tr>td{padding:10px}#quads_tab_container .quads-tabs a{text-align:left}#quads_tab_container li.quads-tabs{float:none;margin-left:0}}#quads_tab_container ul li.quads-tabs{margin-bottom:0}#quads_tab_container ul li.quads-tabs a{display:block;padding:10px;text-decoration:none;font-weight:700}#quads_tab_container ul li.quads-tabs a:hover{color:#383838}#quads_tab_container ul li.quads-tabs a.active{text-decoration:underline}#quads_tab_container table tbody tr:nth-child(1)>th>div{font-size:20px}#quadstabcontainer>.quadstabs{background-color:#fff}#quadstabcontainer ul .active{background-color:#00adef;color:#fff;border-bottom-color:#0098D2}#quadstabcontainer ul .active:hover{background-color:#00A4E2;color:#fff;border-bottom-color:#0098D2}#quadstabcontainer ul li a{padding:10px 14px;background-color:#f3f3f3}#quadstabcontainer .quadstab-container{border:0 solid #ececec}.quads-quote-docs{font-family:Courier New,Courier,Fixed;color:#050}.quads-desc{display:block;font-style:italic;padding-top:10px}.quads-postbox{padding:10px;position:relative;min-width:255px;border:1px solid #e5e5e5;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.04);box-shadow:0 1px 1px rgba(0,0,0,.04);background:#fff;margin-bottom:20px}.nav-tab-active{background-color:#fff;border-bottom:0}#quads-add-ons{padding:20px}.quads-toggle{position:absolute;right:0;top:0}.quads-box-close .quads-close-open-icon{background-position:0 -38px}.quads-close-open-icon{width:38px;height:38px;background:url(../images/arrow-close.png) repeat-y #f4f4f4}.quads-ad-toggle-header{position:relative;background-color:#f4f4f4;margin-bottom:2px;padding:10px 10px 10px 15px;-moz-user-select:-moz-none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none;user-select:none;cursor:pointer!important}.quads-ad-toggle-container{padding:20px;background-color:#f4f4f4}.quads-toogle-title{font-size:16px;font-weight:700}.adsense-size-title,.quads-advanced-description label{font-weight:600;font-size:12px;text-transform:uppercase;float:left}.quads-advanced-description label{width:215px}.quads-advanced-ad-box{clear:both;margin-top:20px;margin-bottom:20px}.adsense-size-title{margin-right:0;line-height:32px;margin-left:14px;min-width:100px}.quads-select-style-overwrite{border:1px solid #e6e6e6;width:150px;overflow:hidden;background:url(../images/box_arrow.png) 120px 0 repeat-y #fff;margin:0 0 5px}.quads-select-style-overwrite select{width:150px}.quads-size-input{position:relative;top:-1px;width:110%;border:none;box-shadow:none;background:0 0;-webkit-appearance:none;font-family:'Open Sans',arial,sans-serif;color:#555;font-size:12px}.quads-pro-overlay{height:200px}.quads-license-error-notice,.quads-license-expires-soon-notice{background-color:#fff;padding:10px;overflow:auto;-webkit-box-shadow:0 1px 1px 0 rgba(0,0,0,.1);box-shadow:0 1px 1px 0 rgba(0,0,0,.1);border:1px solid #ECECEC;border-radius:3px}.quads-license-error-notice a{color:#0097df;text-decoration:underline}.quads-license-error-notice{border-left:4px solid #dd3d36}.quads-license-expiration-date-notice,.quads-license-lifetime-notice,.quads-license-null{padding:0}.quads-license-expiration-date-notice .quads-license-data p,.quads-license-lifetime-notice .quads-license-data p{color:#666;font-size:14px;font-style:italic;margin:4px 0 0}#quads_settingslicenses_header-nav{display:none}#quads_settingslicenses_header{max-width:640px}#quads_settingslicenses_header .row.th{min-width:250px}.quads-notice{background:#fff;border-left:4px solid #46b450;-webkit-box-shadow:0 1px 1px 0 rgba(0,0,0,.1);box-shadow:0 1px 1px 0 rgba(0,0,0,.1);margin:5px 15px 2px;padding:1px 12px}.quads_admin h2.nav-tab-wrapper{border:0}.quads_admin .nav-tab{border:0;text-transform:uppercase;color:#a1a1a1;font-weight:700}.quads-h1{margin-bottom:1.35rem;font-size:2.5em;line-height:3.68rem;letter-spacing:normal}.quads-h2{margin-top:0;margin-bottom:1.2rem;font-size:30px;line-height:2.5rem}.quads-heading-pro{color:#83c11f;font-weight:700}.quads-button.green{display:inline-block;background-color:#83c11f;padding:10px;min-width:170px;color:#fff;font-size:16px;text-decoration:none;text-align:center;margin-top:20px}#quads-add-ons .quads-footer{clear:both;margin-top:20px;font-style:italic}#quads-add-ons li{font-size:18px;line-height:29px;position:relative;padding-left:23px;list-style:none!important}#quads-add-ons li:before{width:1em;height:100%;background:url(data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%3E%3Cpath%20fill%3D%22%2377B227%22%20d%3D%22M1671%20566q0%2040%2D28%2068l%2D724%20724%2D136%20136q%2D28%2028%2D68%2028t%2D68%2D28l%2D136%2D136%2D362%2D362q%2D28%2D28%2D28%2D68t28%2D68l136%2D136q28%2D28%2068%2D28t68%2028l294%20295%20656%2D657q28%2D28%2068%2D28t68%2028l136%20136q28%2028%2028%2068z%22%2F%3E%3C%2Fsvg%3E) left .4em no-repeat;background-size:contain;content:"";position:absolute;top:0;left:0;color:#77b227}.adsense_admin_header{font-size:14px;font-weight:500}#quads-adsense-bg-div{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.65);z-index:250000}#quads-adsense-container{text-align:center;width:480px;margin:85px auto 0;background-color:#fff;padding:2%;border-radius:2px}#quads-adsense-container h3{margin-top:0}#quads-adsense-container textarea,.quads-ad-toggle-container textarea{width:100%}.quads-ad-toggle-container input{margin-top:7px;margin-bottom:10px}.quads-adsense-code label,input{margin-right:2px}#quads_settings\5b ad2\5d \5b g_data_ad_client\5d{width:200px}.quads-ad-toggle-container label{display:inline-block;margin-right:2px;margin-top:-3px}.quads_adsense_code .quads-add-adsense{margin:20px 5px 20px 0}.quads-label-left{min-width:71px}#quads-label-Type{min-width:67px}.quads-medium-size{width:110px}#quads-msg{display:none;margin:5px;background-color:#c55c5c;color:#fff}.quads-loader,.quads-success-modal{display:block;position:fixed;top:45%;left:25%;width:200px;height:auto;padding:5px 20px;z-index:1002;overflow:auto}.quads-form-table{width:100%}.quads-left-box{width:45%;min-height:100px;float:left;line-height:35px;min-width:300px}@media screen and (max-width:700px){.adsense-size-title{margin-left:0}.quads-left-box{width:45%;min-height:100px;float:none;line-height:35px;min-width:300px}.quads-style img{max-width:50px}}.adsense_admin_header ul li{margin-top:2px;margin-left:20px;list-style-type:square}.quads-general-helper,.quads-helper{background-color:#83c11f;width:15px;display:inline-block;top:4px;cursor:pointer;margin-left:2px}.quads-helper{border-radius:50%;border:2px solid #fff;height:15px;position:relative;margin-top:-4px}.quads-general-helper:after,.quads-helper:after{height:20px;font-family:sans-serif;content:"?";font-size:11px;font-weight:700;left:4px;position:absolute;color:#fff}.quads-helper:after{margin-top:-10px}.quads-general-helper:after{margin-top:-2px}.quads-general-helper{border-radius:50%;border:2px solid #fff;height:15px;position:relative;margin-top:-4px}.quads-message{padding:10px;border:1px solid #FBFBFB;border-radius:2px;background-color:#F8F8F8;position:absolute;max-width:500px;z-index:9999;display:none;box-shadow:0 0 5px rgba(0,0,0,.2);font-weight:400;line-height:20px;text-transform:none;font-size:14px}#quads-pro-hover{background-color:#83c11f;padding:20px;min-width:150px;color:#fff;display:block;position:relative;margin-top:-100px;margin-left:50%}#quads-pro-hover-background{width:100%;height:100%;background:rgba(0,0,0,.6)}#quads-open-toggle{clear:both;float:left;margin-top:10px}#quads_settingsadsense_header input[type=number].small-text{width:55px}.quads_adsense_code input.quads-bggrey{background-color:#f5f5f5;color:#939393}.quads-amp-code{color:#939393;height:130px}.quads-chosen-select .chosen-choices li.search-field input{min-height:25px}
|
| 1 |
+
.quads-share-button-container{margin:5px 0}.quads-share-button-container p{margin:0 0 10px}.quads-share-button{display:inline-block}.quads-share-button a{text-decoration:none}.quads-share-button .quads-share{font-family:sans-serif;font-weight:700;text-decoration:none;text-align:center;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;color:#FFF;display:inline;font-size:16px;width:40px;padding:4px 8px}.quads-share-button-twitter .quads-share{background-color:#00ABF0}.quads-share-button-facebook .quads-share{background-color:#3b5998}.quads-share-button-googleplus .quads-share{background-color:#F53424}.quads-share-button-facebook .share:active,.quads-share-button-googleplus .share:active,.quads-share-button-twitter .share:active{background-color:#353535}@media (max-width:925px){.quads-share-button .quads-share{font-size:15px;padding:8px 16px}}.quads-richeditor{font-size:11px}#quads-add-ons h2{margin:0 0 15px}#quads-add-ons .quadsshare-addons{float:left;margin:0 15px 15px 0;background:#f0f0f0;border:1px solid #ccc;width:320px;padding:8px;height:315px;position:relative}#quads-add-ons .quadsshare-addons h3{margin:0 0 8px;font-size:13px}#quads-add-ons .quadsshare-addons .button-secondary{position:absolute;bottom:8px;left:8px}#quads-add-ons .quadsshare-addons .third-party{display:none}#system-info-textarea{width:580px;height:400px;font-family:Menlo,Monaco,monospace;background:0 0;white-space:pre;overflow:auto;display:block}.quads-select-chosen{width:300px}input.large-text,textarea.large-text{max-width:600px}input.medium-text,textarea.medium-text{min-width:190px}#quads_tab_container ul{list-style:none;margin:0;padding:0;background:#fff;float:left}#quads_tab_container ul li:first-child.selected-tab{border-top:none}#quads_tab_container ul li a.selected-tab{font-weight:700;text-decoration:none}#quads_tab_container .quads-row{padding-top:12px;padding-bottom:12px}#quads_tab_container .quads-row label strong,#tab_container .quads-row strong{font-weight:700}.quads-tabs a{padding:5px;color:#a1a1a1;text-transform:uppercase}.quads-tabs a strong{font-weight:700}li.quads-tabs{float:left;margin-left:0;background-color:#e5e5e5}#quads_tab_container>ul>li.quads-tabs.active{background-color:#fff}#quads_tab_container>ul>li.quads-tabs.active a{color:#83c11f}#quads_tab_container .quads-panel-container{background:#FFF;padding:20px;overflow:auto;text-align:left;margin-bottom:10px;max-width:640px;float:left;clear:both}.form-table{margin-top:-20px}#quads_tab_container .form-table th{vertical-align:top;text-align:left;padding:20px 10px 20px 0;line-height:1.3;font-weight:700;font-size:14px;color:#484848;width:30%}#quads_tab_container .form-table tr{border-bottom:1px solid #E7E7E7}#quads_tab_container span.description{display:block;font-weight:400;font-style:normal;font-size:13px;margin-top:7px;color:#484848}#quads_tab_container .col-title{font-size:18px;color:#484848}@media only screen and (max-width:680px){#quads_tab_container ul{float:none;background:#fff}#quads_tab_container .form-table tr>th{width:100%}#quads_tab_container span.description{font-size:14px}#quads_tab_container .form-table tr>th,#tab_container .form-table tr>td{padding:10px}#quads_tab_container .quads-tabs a{text-align:left}#quads_tab_container li.quads-tabs{float:none;margin-left:0}}#quads_tab_container ul li.quads-tabs{margin-bottom:0}#quads_tab_container ul li.quads-tabs a{display:block;padding:10px;text-decoration:none;font-weight:700}#quads_tab_container ul li.quads-tabs a:hover{color:#383838}#quads_tab_container ul li.quads-tabs a.active{text-decoration:underline}#quads_tab_container table tbody tr:nth-child(1)>th>div{font-size:20px}#quadstabcontainer>.quadstabs{background-color:#fff}#quadstabcontainer ul .active{background-color:#00adef;color:#fff;border-bottom-color:#0098D2}#quadstabcontainer ul .active:hover{background-color:#00A4E2;color:#fff;border-bottom-color:#0098D2}#quadstabcontainer ul li a{padding:10px 14px;background-color:#f3f3f3}#quadstabcontainer .quadstab-container{border:0 solid #ececec}.quads-quote-docs{font-family:Courier New,Courier,Fixed;color:#050}.quads-desc{display:block;font-style:italic;padding-top:10px}.quads-postbox{padding:10px;position:relative;min-width:255px;border:1px solid #e5e5e5;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.04);box-shadow:0 1px 1px rgba(0,0,0,.04);background:#fff;margin-bottom:20px}.nav-tab-active{background-color:#fff;border-bottom:0}#quads-add-ons{padding:20px}.quads-toggle{position:absolute;right:0;top:0}.quads-box-close .quads-close-open-icon{background-position:0 -38px}.quads-close-open-icon{width:38px;height:38px;background:url(../images/arrow-close.png) repeat-y #f4f4f4}.quads-ad-toggle-header{position:relative;background-color:#f4f4f4;margin-bottom:2px;padding:10px 10px 10px 15px;-moz-user-select:-moz-none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none;user-select:none;cursor:pointer!important}.quads-ad-toggle-container{padding:20px;background-color:#f4f4f4}.quads-toogle-title{font-size:16px;font-weight:700}.adsense-size-title,.quads-advanced-description label{font-weight:600;font-size:12px;text-transform:uppercase;float:left}.quads-advanced-description label{width:215px}.quads-advanced-ad-box{clear:both;margin-top:20px;margin-bottom:20px}.adsense-size-title{margin-right:0;line-height:32px;margin-left:14px;min-width:100px}.quads-select-style-overwrite{border:1px solid #e6e6e6;width:150px;overflow:hidden;background:url(../images/box_arrow.png) 120px 0 repeat-y #fff;margin:0 0 5px}.quads-select-style-overwrite select{width:150px}.quads-size-input{position:relative;top:-1px;width:110%;border:none;box-shadow:none;background:0 0;-webkit-appearance:none;font-family:'Open Sans',arial,sans-serif;color:#555;font-size:12px}.quads-pro-overlay{height:200px}.quads-license-error-notice,.quads-license-expires-soon-notice{background-color:#fff;padding:10px;overflow:auto;-webkit-box-shadow:0 1px 1px 0 rgba(0,0,0,.1);box-shadow:0 1px 1px 0 rgba(0,0,0,.1);border:1px solid #ECECEC;border-radius:3px}.quads-license-error-notice a{color:#0097df;text-decoration:underline}.quads-license-error-notice{border-left:4px solid #dd3d36}.quads-license-expiration-date-notice,.quads-license-lifetime-notice,.quads-license-null{padding:0}.quads-license-expiration-date-notice .quads-license-data p,.quads-license-lifetime-notice .quads-license-data p{color:#666;font-size:14px;font-style:italic;margin:4px 0 0}#quads_settingslicenses_header-nav{display:none}#quads_settingslicenses_header{max-width:640px}#quads_settingslicenses_header .quads-row.th{min-width:250px}.quads-notice{background:#fff;border-left:4px solid #46b450;-webkit-box-shadow:0 1px 1px 0 rgba(0,0,0,.1);box-shadow:0 1px 1px 0 rgba(0,0,0,.1);margin:5px 15px 2px;padding:1px 12px}.quads_admin h2.nav-tab-wrapper{border:0}.quads_admin .nav-tab{border:0;text-transform:uppercase;color:#a1a1a1;font-weight:700}.quads-h1{margin-bottom:1.35rem;font-size:2.5em;line-height:3.68rem;letter-spacing:normal}.quads-h2{margin-top:0;margin-bottom:1.2rem;font-size:30px;line-height:2.5rem}.quads-heading-pro{color:#83c11f;font-weight:700}.quads-button.green{display:inline-block;background-color:#83c11f;padding:10px;min-width:170px;color:#fff;font-size:16px;text-decoration:none;text-align:center;margin-top:20px}#quads-add-ons .quads-footer{clear:both;margin-top:20px;font-style:italic}#quads-add-ons li{font-size:18px;line-height:29px;position:relative;padding-left:23px;list-style:none!important}#quads-add-ons li:before{width:1em;height:100%;background:url(data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%3E%3Cpath%20fill%3D%22%2377B227%22%20d%3D%22M1671%20566q0%2040%2D28%2068l%2D724%20724%2D136%20136q%2D28%2028%2D68%2028t%2D68%2D28l%2D136%2D136%2D362%2D362q%2D28%2D28%2D28%2D68t28%2D68l136%2D136q28%2D28%2068%2D28t68%2028l294%20295%20656%2D657q28%2D28%2068%2D28t68%2028l136%20136q28%2028%2028%2068z%22%2F%3E%3C%2Fsvg%3E) left .4em no-repeat;background-size:contain;content:"";position:absolute;top:0;left:0;color:#77b227}.adsense_admin_header{font-size:14px;font-weight:500}#quads-adsense-bg-div{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.65);z-index:250000}#quads-adsense-container{text-align:center;width:480px;margin:85px auto 0;background-color:#fff;padding:2%;border-radius:2px}#quads-adsense-container h3{margin-top:0}#quads-adsense-container textarea,.quads-ad-toggle-container textarea{width:100%}.quads-ad-toggle-container input{margin-top:7px;margin-bottom:10px}.quads-adsense-code label,input{margin-right:2px}#quads_settings\5b ad2\5d \5b g_data_ad_client\5d{width:200px}.quads-ad-toggle-container label{display:inline-block;margin-right:2px;margin-top:-3px}.quads_adsense_code .quads-add-adsense{margin:20px 5px 20px 0}.quads-label-left{min-width:71px}#quads-label-Type{min-width:67px}.quads-medium-size{width:110px}#quads-msg{display:none;margin:5px;background-color:#c55c5c;color:#fff}.quads-loader,.quads-success-modal{display:block;position:fixed;top:45%;left:25%;width:200px;height:auto;padding:5px 20px;z-index:1002;overflow:auto}.quads-form-table{width:100%}.quads-left-box{width:45%;min-height:100px;float:left;line-height:35px;min-width:300px}@media screen and (max-width:700px){.adsense-size-title{margin-left:0}.quads-left-box{width:45%;min-height:100px;float:none;line-height:35px;min-width:300px}.quads-style img{max-width:50px}}.adsense_admin_header ul li{margin-top:2px;margin-left:20px;list-style-type:square}.quads-general-helper,.quads-helper{background-color:#83c11f;width:15px;display:inline-block;top:4px;cursor:pointer;margin-left:2px}.quads-helper{border-radius:50%;border:2px solid #fff;height:15px;position:relative;margin-top:-4px}.quads-general-helper:after,.quads-helper:after{height:20px;font-family:sans-serif;content:"?";font-size:11px;font-weight:700;left:4px;position:absolute;color:#fff}.quads-helper:after{margin-top:-10px}.quads-general-helper:after{margin-top:-2px}.quads-general-helper{border-radius:50%;border:2px solid #fff;height:15px;position:relative;margin-top:-4px}.quads-message{padding:10px;border:1px solid #FBFBFB;border-radius:2px;background-color:#F8F8F8;position:absolute;max-width:500px;z-index:9999;display:none;box-shadow:0 0 5px rgba(0,0,0,.2);font-weight:400;line-height:20px;text-transform:none;font-size:14px}#quads-pro-hover{background-color:#83c11f;padding:20px;min-width:150px;color:#fff;display:block;position:relative;margin-top:-100px;margin-left:50%}#quads-pro-hover-background{width:100%;height:100%;background:rgba(0,0,0,.6)}#quads-open-toggle{clear:both;float:left;margin-top:10px}#quads_settingsadsense_header input[type=number].small-text{width:55px}.quads_adsense_code input.quads-bggrey{background-color:#f5f5f5;color:#939393}.quads-amp-code{color:#939393;height:130px}.quads-chosen-select .chosen-choices li.search-field input{min-height:25px}
|
assets/js/quads-admin.js
CHANGED
|
@@ -1,7 +1,40 @@
|
|
| 1 |
var strict;
|
| 2 |
|
|
|
|
| 3 |
jQuery(document).ready(function ($) {
|
| 4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 5 |
// Activate chosen select boxes
|
| 6 |
$(".quads-chosen-select").chosen({
|
| 7 |
inherit_select_classes: true
|
|
@@ -34,12 +67,15 @@ jQuery(document).ready(function ($) {
|
|
| 34 |
// });
|
| 35 |
|
| 36 |
/**
|
| 37 |
-
* Toggle Button Open All Ads
|
| 38 |
*/
|
| 39 |
$('#quads-open-toggle').click(function(){
|
| 40 |
-
|
|
|
|
|
|
|
|
|
|
| 41 |
$('.quads-ad-toggle-container').show();
|
| 42 |
-
$('#quads-open-toggle').html('Close
|
| 43 |
}else{
|
| 44 |
$('.quads-ad-toggle-container').hide();
|
| 45 |
$('#quads-open-toggle').html('Open All Ads');
|
|
@@ -386,7 +422,7 @@ jQuery(document).ready(function ($) {
|
|
| 386 |
});
|
| 387 |
|
| 388 |
|
| 389 |
-
// Toggle between AdSense or Plain Text
|
| 390 |
$(document).on('click', '.quads_adsense_type', function () {
|
| 391 |
|
| 392 |
var parentContainerID = $(this).parents('.quads-ad-toggle-container').attr('id');
|
|
@@ -394,11 +430,15 @@ jQuery(document).ready(function ($) {
|
|
| 394 |
if ($(this).val() === 'adsense') {
|
| 395 |
$('#' + parentContainerID).children('textarea').hide();
|
| 396 |
$('#' + parentContainerID).find('div.quads_adsense_code').show();
|
|
|
|
|
|
|
| 397 |
|
| 398 |
}
|
| 399 |
if ($(this).val() === 'plain_text') {
|
| 400 |
$('#' + parentContainerID).children('textarea').show();
|
| 401 |
$('#' + parentContainerID).children('div.quads_adsense_code').hide();
|
|
|
|
|
|
|
| 402 |
}
|
| 403 |
});
|
| 404 |
|
| 1 |
var strict;
|
| 2 |
|
| 3 |
+
|
| 4 |
jQuery(document).ready(function ($) {
|
| 5 |
|
| 6 |
+
// Inactive select fields are greyed out
|
| 7 |
+
$('.quads-assign').each(function(e){
|
| 8 |
+
if (!$(this).prop('checked')){
|
| 9 |
+
$(this).next('select').css('background-color', 'whitesmoke').css('color', '#939393');
|
| 10 |
+
}else {
|
| 11 |
+
$(this).next('select').css('background-color', 'white').css('color', 'black');
|
| 12 |
+
}
|
| 13 |
+
});
|
| 14 |
+
|
| 15 |
+
$('.quads-assign').click(function(){
|
| 16 |
+
if (!$(this).prop('checked')){
|
| 17 |
+
$(this).next('select').css('background-color', 'whitesmoke').css('color', '#939393');
|
| 18 |
+
} else {
|
| 19 |
+
$(this).next('select').css('background-color', 'white').css('color', 'black');
|
| 20 |
+
}
|
| 21 |
+
});
|
| 22 |
+
|
| 23 |
+
// Check if submit button is visible than stick it to the bottom of the page
|
| 24 |
+
$(window).scroll(function() {
|
| 25 |
+
var elem = '#quads_tab_container .submit';
|
| 26 |
+
var top_of_element = $(elem).offset().top;
|
| 27 |
+
var bottom_of_element = $(elem).offset().top + $(elem).outerHeight(false);
|
| 28 |
+
var bottom_of_screen = $(window).scrollTop() + $(window).height();
|
| 29 |
+
if (bottom_of_screen > top_of_element){
|
| 30 |
+
// The element is visible, do something
|
| 31 |
+
$('#quads-submit-button').css('position', 'relative').css('bottom', '20px');
|
| 32 |
+
} else {
|
| 33 |
+
// The element is NOT visible, do something else
|
| 34 |
+
$('#quads-submit-button').css('position', 'fixed').css('bottom', '20px');
|
| 35 |
+
}
|
| 36 |
+
});
|
| 37 |
+
|
| 38 |
// Activate chosen select boxes
|
| 39 |
$(".quads-chosen-select").chosen({
|
| 40 |
inherit_select_classes: true
|
| 67 |
// });
|
| 68 |
|
| 69 |
/**
|
| 70 |
+
* Toggle Button | Open All Ads
|
| 71 |
*/
|
| 72 |
$('#quads-open-toggle').click(function(){
|
| 73 |
+
console.log($('#quads-open-toggle').html());
|
| 74 |
+
|
| 75 |
+
|
| 76 |
+
if ($('#quads-open-toggle').text() === 'Open All Ads' ){
|
| 77 |
$('.quads-ad-toggle-container').show();
|
| 78 |
+
$('#quads-open-toggle').html('Close Ads');
|
| 79 |
}else{
|
| 80 |
$('.quads-ad-toggle-container').hide();
|
| 81 |
$('#quads-open-toggle').html('Open All Ads');
|
| 422 |
});
|
| 423 |
|
| 424 |
|
| 425 |
+
// Toggle between AdSense or Plain Text option
|
| 426 |
$(document).on('click', '.quads_adsense_type', function () {
|
| 427 |
|
| 428 |
var parentContainerID = $(this).parents('.quads-ad-toggle-container').attr('id');
|
| 430 |
if ($(this).val() === 'adsense') {
|
| 431 |
$('#' + parentContainerID).children('textarea').hide();
|
| 432 |
$('#' + parentContainerID).find('div.quads_adsense_code').show();
|
| 433 |
+
$('#' + parentContainerID).find('.quads-sizes').show();
|
| 434 |
+
$('#' + parentContainerID).find('.quads-sizes-container').css('clear','');
|
| 435 |
|
| 436 |
}
|
| 437 |
if ($(this).val() === 'plain_text') {
|
| 438 |
$('#' + parentContainerID).children('textarea').show();
|
| 439 |
$('#' + parentContainerID).children('div.quads_adsense_code').hide();
|
| 440 |
+
$('#' + parentContainerID).find('.quads-sizes').hide();
|
| 441 |
+
$('#' + parentContainerID).find('.quads-sizes-container').css('clear','both');
|
| 442 |
}
|
| 443 |
});
|
| 444 |
|
assets/js/quads-admin.min.js
CHANGED
|
@@ -1,7 +1,40 @@
|
|
| 1 |
var strict;
|
| 2 |
|
|
|
|
| 3 |
jQuery(document).ready(function ($) {
|
| 4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 5 |
// Activate chosen select boxes
|
| 6 |
$(".quads-chosen-select").chosen({
|
| 7 |
inherit_select_classes: true
|
|
@@ -34,12 +67,15 @@ jQuery(document).ready(function ($) {
|
|
| 34 |
// });
|
| 35 |
|
| 36 |
/**
|
| 37 |
-
* Toggle Button Open All Ads
|
| 38 |
*/
|
| 39 |
$('#quads-open-toggle').click(function(){
|
| 40 |
-
|
|
|
|
|
|
|
|
|
|
| 41 |
$('.quads-ad-toggle-container').show();
|
| 42 |
-
$('#quads-open-toggle').html('Close
|
| 43 |
}else{
|
| 44 |
$('.quads-ad-toggle-container').hide();
|
| 45 |
$('#quads-open-toggle').html('Open All Ads');
|
|
@@ -386,7 +422,7 @@ jQuery(document).ready(function ($) {
|
|
| 386 |
});
|
| 387 |
|
| 388 |
|
| 389 |
-
// Toggle between AdSense or Plain Text
|
| 390 |
$(document).on('click', '.quads_adsense_type', function () {
|
| 391 |
|
| 392 |
var parentContainerID = $(this).parents('.quads-ad-toggle-container').attr('id');
|
|
@@ -394,11 +430,15 @@ jQuery(document).ready(function ($) {
|
|
| 394 |
if ($(this).val() === 'adsense') {
|
| 395 |
$('#' + parentContainerID).children('textarea').hide();
|
| 396 |
$('#' + parentContainerID).find('div.quads_adsense_code').show();
|
|
|
|
|
|
|
| 397 |
|
| 398 |
}
|
| 399 |
if ($(this).val() === 'plain_text') {
|
| 400 |
$('#' + parentContainerID).children('textarea').show();
|
| 401 |
$('#' + parentContainerID).children('div.quads_adsense_code').hide();
|
|
|
|
|
|
|
| 402 |
}
|
| 403 |
});
|
| 404 |
|
| 1 |
var strict;
|
| 2 |
|
| 3 |
+
|
| 4 |
jQuery(document).ready(function ($) {
|
| 5 |
|
| 6 |
+
// Inactive select fields are greyed out
|
| 7 |
+
$('.quads-assign').each(function(e){
|
| 8 |
+
if (!$(this).prop('checked')){
|
| 9 |
+
$(this).next('select').css('background-color', 'whitesmoke').css('color', '#939393');
|
| 10 |
+
}else {
|
| 11 |
+
$(this).next('select').css('background-color', 'white').css('color', 'black');
|
| 12 |
+
}
|
| 13 |
+
});
|
| 14 |
+
|
| 15 |
+
$('.quads-assign').click(function(){
|
| 16 |
+
if (!$(this).prop('checked')){
|
| 17 |
+
$(this).next('select').css('background-color', 'whitesmoke').css('color', '#939393');
|
| 18 |
+
} else {
|
| 19 |
+
$(this).next('select').css('background-color', 'white').css('color', 'black');
|
| 20 |
+
}
|
| 21 |
+
});
|
| 22 |
+
|
| 23 |
+
// Check if submit button is visible than stick it to the bottom of the page
|
| 24 |
+
$(window).scroll(function() {
|
| 25 |
+
var elem = '#quads_tab_container .submit';
|
| 26 |
+
var top_of_element = $(elem).offset().top;
|
| 27 |
+
var bottom_of_element = $(elem).offset().top + $(elem).outerHeight(false);
|
| 28 |
+
var bottom_of_screen = $(window).scrollTop() + $(window).height();
|
| 29 |
+
if (bottom_of_screen > top_of_element){
|
| 30 |
+
// The element is visible, do something
|
| 31 |
+
$('#quads-submit-button').css('position', 'relative').css('bottom', '20px');
|
| 32 |
+
} else {
|
| 33 |
+
// The element is NOT visible, do something else
|
| 34 |
+
$('#quads-submit-button').css('position', 'fixed').css('bottom', '20px');
|
| 35 |
+
}
|
| 36 |
+
});
|
| 37 |
+
|
| 38 |
// Activate chosen select boxes
|
| 39 |
$(".quads-chosen-select").chosen({
|
| 40 |
inherit_select_classes: true
|
| 67 |
// });
|
| 68 |
|
| 69 |
/**
|
| 70 |
+
* Toggle Button | Open All Ads
|
| 71 |
*/
|
| 72 |
$('#quads-open-toggle').click(function(){
|
| 73 |
+
console.log($('#quads-open-toggle').html());
|
| 74 |
+
|
| 75 |
+
|
| 76 |
+
if ($('#quads-open-toggle').text() === 'Open All Ads' ){
|
| 77 |
$('.quads-ad-toggle-container').show();
|
| 78 |
+
$('#quads-open-toggle').html('Close Ads');
|
| 79 |
}else{
|
| 80 |
$('.quads-ad-toggle-container').hide();
|
| 81 |
$('#quads-open-toggle').html('Open All Ads');
|
| 422 |
});
|
| 423 |
|
| 424 |
|
| 425 |
+
// Toggle between AdSense or Plain Text option
|
| 426 |
$(document).on('click', '.quads_adsense_type', function () {
|
| 427 |
|
| 428 |
var parentContainerID = $(this).parents('.quads-ad-toggle-container').attr('id');
|
| 430 |
if ($(this).val() === 'adsense') {
|
| 431 |
$('#' + parentContainerID).children('textarea').hide();
|
| 432 |
$('#' + parentContainerID).find('div.quads_adsense_code').show();
|
| 433 |
+
$('#' + parentContainerID).find('.quads-sizes').show();
|
| 434 |
+
$('#' + parentContainerID).find('.quads-sizes-container').css('clear','');
|
| 435 |
|
| 436 |
}
|
| 437 |
if ($(this).val() === 'plain_text') {
|
| 438 |
$('#' + parentContainerID).children('textarea').show();
|
| 439 |
$('#' + parentContainerID).children('div.quads_adsense_code').hide();
|
| 440 |
+
$('#' + parentContainerID).find('.quads-sizes').hide();
|
| 441 |
+
$('#' + parentContainerID).find('.quads-sizes-container').css('clear','both');
|
| 442 |
}
|
| 443 |
});
|
| 444 |
|
includes/admin/admin-actions.php
CHANGED
|
@@ -30,3 +30,12 @@ function quads_process_actions() {
|
|
| 30 |
}
|
| 31 |
add_action( 'admin_init', 'quads_process_actions' );
|
| 32 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 30 |
}
|
| 31 |
add_action( 'admin_init', 'quads_process_actions' );
|
| 32 |
|
| 33 |
+
/**
|
| 34 |
+
* Update option quads_show_theme_notice
|
| 35 |
+
* "no" means no further upgrade notices are shown
|
| 36 |
+
*/
|
| 37 |
+
function quads_close_upgrade_notice(){
|
| 38 |
+
update_option ('quads_show_theme_notice', 'no');
|
| 39 |
+
}
|
| 40 |
+
add_action('quads_close_upgrade_notice', 'quads_close_upgrade_notice');
|
| 41 |
+
|
includes/admin/admin-notices.php
CHANGED
|
@@ -191,13 +191,13 @@ function quads_theme_notice(){
|
|
| 191 |
|
| 192 |
$show_notice = get_option('quads_show_theme_notice');
|
| 193 |
|
| 194 |
-
if( false !== $show_notice && 'no' !== $show_notice ) {
|
| 195 |
-
$message = __( '<strong>Extend the <strong>' . quads_is_commercial_theme(). '</strong> theme with <strong>WP QUADS PRO!</strong>
|
| 196 |
?>
|
| 197 |
-
<div class="updated notice
|
| 198 |
<p><?php echo $message; ?></p>
|
| 199 |
</div> <?php
|
| 200 |
-
update_option ('quads_show_theme_notice', 'no');
|
| 201 |
}
|
| 202 |
}
|
| 203 |
|
|
@@ -224,7 +224,7 @@ function quads_update_notice() {
|
|
| 224 |
//update_option ('quads_show_update_notice', 'no');
|
| 225 |
} else
|
| 226 |
if( !quads_is_advanced() ) {
|
| 227 |
-
$message = sprintf( __( '<strong>WP QUADS ' . QUADS_VERSION . ': <strong> Install <a href="%1s" target="_blank">WP QUADS PRO</a> to get custom post type support
|
| 228 |
$message .= '<br><br><a href="' . admin_url() . 'admin.php?page=quads-settings&quads-action=hide_update_notice" class="button-primary thankyou" target="_self" title="Close Notice" style="font-weight:bold;">Close Notice</a>';
|
| 229 |
?>
|
| 230 |
<div class="updated notice" style="border-left: 4px solid #ffba00;">
|
| 191 |
|
| 192 |
$show_notice = get_option('quads_show_theme_notice');
|
| 193 |
|
| 194 |
+
if( false !== $show_notice && 'no' !== $show_notice && quads_is_commercial_theme() ) {
|
| 195 |
+
$message = __( '<strong>Extend the <strong>' . quads_is_commercial_theme(). '</strong> theme with <strong>WP QUADS PRO!</strong><br>Save time and earn more - Bring your AdSense earnings to next level. <a href="http://wpquads.com?utm_campaign=adminnotice&utm_source=admin_notice&utm_medium=admin&utm_content=bimber_upgrade_notice" target="_blank"> Purchase Now</a> or <a href="http://wpquads.com?utm_campaign=free_plugin&utm_source=admin_notice&utm_medium=admin&utm_content=bimber_upgrade_notice" target="_blank">Get Details</a></strong> <p> <a href="'.admin_url().'admin.php?page=quads-settings&quads-action=close_upgrade_notice" class="button">Close Notice</a>', 'quick-adsense-reloaded' );
|
| 196 |
?>
|
| 197 |
+
<div class="updated notice" style="border-left: 4px solid #ffba00;">
|
| 198 |
<p><?php echo $message; ?></p>
|
| 199 |
</div> <?php
|
| 200 |
+
//update_option ('quads_show_theme_notice', 'no');
|
| 201 |
}
|
| 202 |
}
|
| 203 |
|
| 224 |
//update_option ('quads_show_update_notice', 'no');
|
| 225 |
} else
|
| 226 |
if( !quads_is_advanced() ) {
|
| 227 |
+
$message = sprintf( __( '<strong>WP QUADS ' . QUADS_VERSION . ': <strong> Install <a href="%1s" target="_blank">WP QUADS PRO</a> to get custom post type support in <a href="%2s">General Settings</a>.', 'quick-adsense-reloaded' ), 'http://wpquads.com?utm_campaign=admin_notice&utm_source=admin_notice&utm_medium=admin&utm_content=custom_post_type', admin_url() . 'admin.php?page=quads-settings' );
|
| 228 |
$message .= '<br><br><a href="' . admin_url() . 'admin.php?page=quads-settings&quads-action=hide_update_notice" class="button-primary thankyou" target="_self" title="Close Notice" style="font-weight:bold;">Close Notice</a>';
|
| 229 |
?>
|
| 230 |
<div class="updated notice" style="border-left: 4px solid #ffba00;">
|
includes/admin/settings/display-settings.php
CHANGED
|
@@ -109,18 +109,18 @@ function quads_do_settings_fields($page, $section) {
|
|
| 109 |
}
|
| 110 |
|
| 111 |
if (!empty($field['args']['label_for']) && !quads_is_excluded_title( $field['args']['id'] )){
|
| 112 |
-
echo '<tr class="row">';
|
| 113 |
-
echo '<td class="row th">';
|
| 114 |
echo '<label for="' . esc_attr($field['args']['label_for']) . '">' . $field['title'] . '</label>';
|
| 115 |
echo '</td></tr>';
|
| 116 |
}else if (!empty($field['title']) && !quads_is_excluded_title( $field['args']['id'] ) && !empty($field['args']['helper-desc'])){
|
| 117 |
-
echo '<tr class="row">';
|
| 118 |
-
echo '<td class="row th">';
|
| 119 |
echo '<div class="col-title">' . $field['title'] . '<a class="quads-general-helper" href="#"></a><div class="quads-message">' . $field['args']['helper-desc']. '</div></div>';
|
| 120 |
echo '</td></tr>';
|
| 121 |
}else if (!empty($field['title']) && !quads_is_excluded_title( $field['args']['id'] ) ){
|
| 122 |
-
echo '<tr class="row">';
|
| 123 |
-
echo '<td class="row th">';
|
| 124 |
echo '<div class="col-title">' . $field['title'] . '</div>';
|
| 125 |
echo '</td></tr>';
|
| 126 |
}
|
|
@@ -223,6 +223,7 @@ function quads_options_page() {
|
|
| 223 |
<?php quads_get_tab_header( 'quads_settings_' . $active_tab, 'quads_settings_' . $active_tab ); ?>
|
| 224 |
<div class="quads-panel-container"> <!-- new //-->
|
| 225 |
<form method="post" action="options.php" id="quads_settings">
|
|
|
|
| 226 |
<?php
|
| 227 |
settings_fields( 'quads_settings' );
|
| 228 |
quads_do_settings_fields( 'quads_settings_' . $active_tab, 'quads_settings_' . $active_tab );
|
|
@@ -233,7 +234,8 @@ function quads_options_page() {
|
|
| 233 |
<?php
|
| 234 |
// do not show save button on add-on page
|
| 235 |
if ($active_tab !== 'addons'){
|
| 236 |
-
|
|
|
|
| 237 |
}
|
| 238 |
?>
|
| 239 |
</form>
|
|
@@ -242,6 +244,9 @@ function quads_options_page() {
|
|
| 242 |
'https://wordpress.org/support/plugin/quick-adsense-reloaded/reviews/#new-post',
|
| 243 |
'http://wpquads.com/support/'
|
| 244 |
);
|
|
|
|
|
|
|
|
|
|
| 245 |
?>
|
| 246 |
</div> <!-- new //-->
|
| 247 |
<?php quads_get_advertising(); ?>
|
| 109 |
}
|
| 110 |
|
| 111 |
if (!empty($field['args']['label_for']) && !quads_is_excluded_title( $field['args']['id'] )){
|
| 112 |
+
echo '<tr class="quads-row">';
|
| 113 |
+
echo '<td class="quads-row th">';
|
| 114 |
echo '<label for="' . esc_attr($field['args']['label_for']) . '">' . $field['title'] . '</label>';
|
| 115 |
echo '</td></tr>';
|
| 116 |
}else if (!empty($field['title']) && !quads_is_excluded_title( $field['args']['id'] ) && !empty($field['args']['helper-desc'])){
|
| 117 |
+
echo '<tr class="quads-row">';
|
| 118 |
+
echo '<td class="quads-row th">';
|
| 119 |
echo '<div class="col-title">' . $field['title'] . '<a class="quads-general-helper" href="#"></a><div class="quads-message">' . $field['args']['helper-desc']. '</div></div>';
|
| 120 |
echo '</td></tr>';
|
| 121 |
}else if (!empty($field['title']) && !quads_is_excluded_title( $field['args']['id'] ) ){
|
| 122 |
+
echo '<tr class="quads-row">';
|
| 123 |
+
echo '<td class="quads-row th">';
|
| 124 |
echo '<div class="col-title">' . $field['title'] . '</div>';
|
| 125 |
echo '</td></tr>';
|
| 126 |
}
|
| 223 |
<?php quads_get_tab_header( 'quads_settings_' . $active_tab, 'quads_settings_' . $active_tab ); ?>
|
| 224 |
<div class="quads-panel-container"> <!-- new //-->
|
| 225 |
<form method="post" action="options.php" id="quads_settings">
|
| 226 |
+
|
| 227 |
<?php
|
| 228 |
settings_fields( 'quads_settings' );
|
| 229 |
quads_do_settings_fields( 'quads_settings_' . $active_tab, 'quads_settings_' . $active_tab );
|
| 234 |
<?php
|
| 235 |
// do not show save button on add-on page
|
| 236 |
if ($active_tab !== 'addons'){
|
| 237 |
+
$other_attributes = array( 'id' => 'quads-submit-button' );
|
| 238 |
+
submit_button(null, 'primary', 'quads-save-settings' , true, $other_attributes );
|
| 239 |
}
|
| 240 |
?>
|
| 241 |
</form>
|
| 244 |
'https://wordpress.org/support/plugin/quick-adsense-reloaded/reviews/#new-post',
|
| 245 |
'http://wpquads.com/support/'
|
| 246 |
);
|
| 247 |
+
echo '<p>' . sprintf( __( '<strong>Ads are not showing? Read the <a href="%s" target="_blank">troubleshooting guide</a> to find out how to resolve this issue.', 'quick-adsense-reloaded' ),
|
| 248 |
+
'http://wpquads.com/docs/adsense-ads-are-not-showing/?utm_source=plugin&utm_campaign=wpquads-settings&utm_medium=website&utm_term=bottomlink'
|
| 249 |
+
);
|
| 250 |
?>
|
| 251 |
</div> <!-- new //-->
|
| 252 |
<?php quads_get_advertising(); ?>
|
includes/admin/settings/register-settings.php
CHANGED
|
@@ -145,7 +145,16 @@ function quads_get_registered_settings() {
|
|
| 145 |
7 => '7',
|
| 146 |
8 => '8',
|
| 147 |
9 => '9',
|
| 148 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 149 |
),
|
| 150 |
),
|
| 151 |
array(
|
|
@@ -184,11 +193,12 @@ function quads_get_registered_settings() {
|
|
| 184 |
'adsense_header' => array(
|
| 185 |
'id' => 'adsense_header',
|
| 186 |
'name' => '<strong>' . __( 'AdSense Code', 'quick-adsense-reloaded' ) . '</strong>',
|
| 187 |
-
'desc' => '<div class="adsense_admin_header">' . sprintf( __( 'Paste up to 10 Ad codes on post body and up to 10 Ad codes on sidebar widget
|
| 188 |
. '<ul style="margin-top:10px;">'
|
| 189 |
-
. '<li
|
| 190 |
-
. '<li
|
| 191 |
. '</ul>'
|
|
|
|
| 192 |
. '<div id="quads-open-toggle" class="button">'.__('Open All Ads','quick-adsense-reloaded').'</div>',
|
| 193 |
'type' => 'header'
|
| 194 |
),
|
|
@@ -1469,73 +1479,75 @@ function quads_ad_position_callback( $args ) {
|
|
| 1469 |
|
| 1470 |
|
| 1471 |
// Pos 1
|
| 1472 |
-
$html = $quads->html->checkbox( array('name' => 'quads_settings[pos1][BegnAds]',
|
| 1473 |
$html .= ' ' . __( 'Assign', 'quick-adsense-reloaded' ) . ' ';
|
| 1474 |
-
$html .= $quads->html->select( array('options' => quads_get_ads(), 'name' => 'quads_settings[pos1][BegnRnd]', 'selected' => !empty( $quads_options['pos1']['BegnRnd'] ) ? $quads_options['pos1']['BegnRnd'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1475 |
$html .= ' ' . __( 'to <strong>Beginning of Post</strong>', 'quick-adsense-reloaded' ) . '</br>';
|
| 1476 |
|
| 1477 |
// Pos 2
|
| 1478 |
-
$html .= $quads->html->checkbox( array('name' => 'quads_settings[pos2][MiddAds]', 'current' => !empty( $quads_options['pos2']['MiddAds'] ) ? $quads_options['pos2']['MiddAds'] : null, 'class' => 'quads-checkbox') );
|
| 1479 |
$html .= ' ' . __( 'Assign', 'quick-adsense-reloaded' ) . ' ';
|
| 1480 |
-
$html .= $quads->html->select( array('options' => quads_get_ads(), 'name' => 'quads_settings[pos2][MiddRnd]', 'selected' => !empty( $quads_options['pos2']['MiddRnd'] ) ? $quads_options['pos2']['MiddRnd'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1481 |
$html .= ' ' . __( 'to <strong>Middle of Post</strong>', 'quick-adsense-reloaded' ) . '</br>';
|
| 1482 |
|
| 1483 |
// Pos 3
|
| 1484 |
-
$html .= $quads->html->checkbox( array('name' => 'quads_settings[pos3][EndiAds]', 'current' => !empty( $quads_options['pos3']['EndiAds'] ) ? $quads_options['pos3']['EndiAds'] : null, 'class' => 'quads-checkbox') );
|
| 1485 |
$html .= ' ' . __( 'Assign', 'quick-adsense-reloaded' ) . ' ';
|
| 1486 |
-
$html .= $quads->html->select( array('options' => quads_get_ads(), 'name' => 'quads_settings[pos3][EndiRnd]', 'selected' => !empty( $quads_options['pos3']['EndiRnd'] ) ? $quads_options['pos3']['EndiRnd'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1487 |
$html .= ' ' . __( 'to <strong>End of Post</strong>', 'quick-adsense-reloaded' ) . '</br>';
|
| 1488 |
|
| 1489 |
// Pos 4
|
| 1490 |
-
$html .= $quads->html->checkbox( array('name' => 'quads_settings[pos4][MoreAds]', 'current' => !empty( $quads_options['pos4']['MoreAds'] ) ? $quads_options['pos4']['MoreAds'] : null, 'class' => 'quads-checkbox') );
|
| 1491 |
$html .= ' ' . __( 'Assign', 'quick-adsense-reloaded' ) . ' ';
|
| 1492 |
-
$html .= $quads->html->select( array('options' => quads_get_ads(), 'name' => 'quads_settings[pos4][MoreRnd]', 'selected' => !empty( $quads_options['pos4']['MoreRnd'] ) ? $quads_options['pos4']['MoreRnd'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1493 |
$html .= ' ' . __( 'right after <strong>the <span style="font-family:Courier New,Courier,Fixed;"><!--more--></span> tag</strong>', 'quick-adsense-reloaded' ) . '</br>';
|
| 1494 |
|
| 1495 |
// Pos 5
|
| 1496 |
-
$html .= $quads->html->checkbox( array('name' => 'quads_settings[pos5][LapaAds]', 'current' => !empty( $quads_options['pos5']['LapaAds'] ) ? $quads_options['pos5']['LapaAds'] : null, 'class' => 'quads-checkbox') );
|
| 1497 |
$html .= ' ' . __( 'Assign', 'quick-adsense-reloaded' ) . ' ';
|
| 1498 |
-
$html .= $quads->html->select( array('options' => quads_get_ads(), 'name' => 'quads_settings[pos5][LapaRnd]', 'selected' => !empty( $quads_options['pos5']['LapaRnd'] ) ? $quads_options['pos5']['LapaRnd'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1499 |
$html .= ' ' . __( 'right before <strong>the last Paragraph</strong>', 'quick-adsense-reloaded' ) . ' </br>';
|
| 1500 |
|
| 1501 |
// Pos 6
|
| 1502 |
-
$html .= $quads->html->checkbox( array('name' => 'quads_settings[pos6][Par1Ads]', 'current' => !empty( $quads_options['pos6']['Par1Ads'] ) ? $quads_options['pos6']['Par1Ads'] : null, 'class' => 'quads-checkbox') );
|
| 1503 |
$html .= ' ' . __( 'Assign', 'quick-adsense-reloaded' ) . ' ';
|
| 1504 |
-
$html .= $quads->html->select( array('options' => quads_get_ads(), 'name' => 'quads_settings[pos6][Par1Rnd]', 'selected' => !empty( $quads_options['pos6']['Par1Rnd'] ) ? $quads_options['pos6']['Par1Rnd'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1505 |
$html .= ' ' . __( '<strong>After Paragraph</strong>', 'quick-adsense-reloaded' ) . ' ';
|
| 1506 |
-
$html .= $quads->html->select( array('options' => quads_get_values(), 'name' => 'quads_settings[pos6][Par1Nup]', 'selected' => !empty( $quads_options['pos6']['Par1Nup'] ) ? $quads_options['pos6']['Par1Nup'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1507 |
$html .= ' ' . __( '→', 'quick-adsense-reloaded' ) . ' ';
|
| 1508 |
-
$html .= $quads->html->checkbox( array('name' => 'quads_settings[pos6][Par1Con]', 'current' => !empty( $quads_options['pos6']['Par1Con'] ) ? $quads_options['pos6']['Par1Con'] : null, 'class' => 'quads-checkbox') );
|
| 1509 |
$html .= ' ' . __( 'to <strong>End of Post</strong> if fewer paragraphs are found.', 'quick-adsense-reloaded' ) . ' </br>';
|
| 1510 |
|
| 1511 |
// Pos 7
|
| 1512 |
-
$html .= $quads->html->checkbox( array('name' => 'quads_settings[pos7][Par2Ads]', 'current' => !empty( $quads_options['pos7']['Par2Ads'] ) ? $quads_options['pos7']['Par2Ads'] : null, 'class' => 'quads-checkbox') );
|
| 1513 |
$html .= ' ' . __( 'Assign', 'quick-adsense-reloaded' ) . ' ';
|
| 1514 |
-
$html .= $quads->html->select( array('options' => quads_get_ads(), 'name' => 'quads_settings[pos7][Par2Rnd]', 'selected' => !empty( $quads_options['pos7']['Par2Rnd'] ) ? $quads_options['pos7']['Par2Rnd'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1515 |
$html .= ' ' . __( '<strong>After Paragraph</strong>', 'quick-adsense-reloaded' ) . ' ';
|
| 1516 |
-
$html .= $quads->html->select( array('options' => quads_get_values(), 'name' => 'quads_settings[pos7][Par2Nup]', 'selected' => !empty( $quads_options['pos7']['Par2Nup'] ) ? $quads_options['pos7']['Par2Nup'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1517 |
$html .= ' ' . __( '→', 'quick-adsense-reloaded' ) . ' ';
|
| 1518 |
-
$html .= $quads->html->checkbox( array('name' => 'quads_settings[pos7][Par2Con]', 'current' => !empty( $quads_options['pos7']['Par2Con'] ) ? $quads_options['pos7']['Par2Con'] : null, 'class' => 'quads-checkbox') );
|
| 1519 |
$html .= ' ' . __( 'to <strong>End of Post</strong> if fewer paragraphs are found.', 'quick-adsense-reloaded' ) . ' </br>';
|
| 1520 |
|
| 1521 |
// Pos 8
|
| 1522 |
-
$html .= $quads->html->checkbox( array('name' => 'quads_settings[pos8][Par3Ads]', 'current' => !empty( $quads_options['pos8']['Par3Ads'] ) ? $quads_options['pos8']['Par3Ads'] : null, 'class' => 'quads-checkbox') );
|
| 1523 |
$html .= ' ' . __( 'Assign', 'quick-adsense-reloaded' ) . ' ';
|
| 1524 |
-
$html .= $quads->html->select( array('options' => quads_get_ads(), 'name' => 'quads_settings[pos8][Par3Rnd]', 'selected' => !empty( $quads_options['pos8']['Par3Rnd'] ) ? $quads_options['pos8']['Par3Rnd'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1525 |
$html .= ' ' . __( '<strong>After Paragraph</strong>', 'quick-adsense-reloaded' ) . ' ';
|
| 1526 |
-
$html .= $quads->html->select( array('options' => quads_get_values(), 'name' => 'quads_settings[pos8][Par3Nup]', 'selected' => !empty( $quads_options['pos8']['Par3Nup'] ) ? $quads_options['pos8']['Par3Nup'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1527 |
$html .= ' ' . __( '→', 'quick-adsense-reloaded' ) . ' ';
|
| 1528 |
-
$html .= $quads->html->checkbox( array('name' => 'quads_settings[pos8][Par3Con]', 'current' => !empty( $quads_options['pos8']['Par3Con'] ) ? $quads_options['pos8']['Par3Con'] : null, 'class' => 'quads-checkbox') );
|
| 1529 |
$html .= ' ' . __( 'to <strong>End of Post</strong> if fewer paragraphs are found.', 'quick-adsense-reloaded' ) . ' </br>';
|
| 1530 |
|
|
|
|
|
|
|
| 1531 |
// Pos 9
|
| 1532 |
-
$html .= $quads->html->checkbox( array('name' => 'quads_settings[pos9][Img1Ads]', 'current' => !empty( $quads_options['pos9']['Img1Ads'] ) ? $quads_options['pos9']['Img1Ads'] : null, 'class' => 'quads-checkbox') );
|
| 1533 |
$html .= ' ' . __( 'Assign', 'quick-adsense-reloaded' ) . ' ';
|
| 1534 |
$html .= $quads->html->select( array('options' => quads_get_ads(), 'name' => 'quads_settings[pos9][Img1Rnd]', 'selected' => !empty( $quads_options['pos9']['Img1Rnd'] ) ? $quads_options['pos9']['Img1Rnd'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1535 |
$html .= ' ' . __( '<strong>After Image</strong>', 'quick-adsense-reloaded' ) . ' ';
|
| 1536 |
-
$html .= $quads->html->select( array('options' => quads_get_values(), 'name' => 'quads_settings[pos9][Img1Nup]', 'selected' => !empty( $quads_options['pos9']['Img1Nup'] ) ? $quads_options['pos9']['Img1Nup'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1537 |
$html .= ' ' . __( '→', 'quick-adsense-reloaded' ) . ' ';
|
| 1538 |
-
$html .= $quads->html->checkbox( array('name' => 'quads_settings[pos9][Img1Con]', 'current' => !empty( $quads_options['pos9']['Img1Con'] ) ? $quads_options['pos9']['Img1Con'] : null, 'class' => 'quads-checkbox') );
|
| 1539 |
$html .= ' ' . __( 'after <b>Image\'s outer</b><b><span style="font-family:Courier New,Courier,Fixed;"> <div> wp-caption</span></b> if any.', 'quick-adsense-reloaded' ) . ' </br>';
|
| 1540 |
|
| 1541 |
echo apply_filters( 'quads_ad_position_callback', $html );
|
|
@@ -1567,46 +1579,6 @@ function quads_quicktags_callback( $args ) {
|
|
| 1567 |
echo $html;
|
| 1568 |
}
|
| 1569 |
|
| 1570 |
-
/**
|
| 1571 |
-
* This hook should be removed and the hook function should replace entire "quads_ad_position_callback" function.
|
| 1572 |
-
*/
|
| 1573 |
-
add_filter( 'quads_ad_position_callback', 'quads_render_ad_locations' );
|
| 1574 |
-
|
| 1575 |
-
/**
|
| 1576 |
-
* Return ad locations HTML based on new API.
|
| 1577 |
-
*
|
| 1578 |
-
* @param $html
|
| 1579 |
-
* @return string Locations HTML
|
| 1580 |
-
*/
|
| 1581 |
-
function quads_render_ad_locations( $html ) {
|
| 1582 |
-
global $quads_options, $_quads_registered_ad_locations, $quads;
|
| 1583 |
-
|
| 1584 |
-
if( isset( $_quads_registered_ad_locations ) && is_array( $_quads_registered_ad_locations ) ) {
|
| 1585 |
-
foreach ( $_quads_registered_ad_locations as $location => $location_args ) {
|
| 1586 |
-
|
| 1587 |
-
$location_settings = quads_get_ad_location_settings( $location );
|
| 1588 |
-
|
| 1589 |
-
$html .= $quads->html->checkbox( array(
|
| 1590 |
-
'name' => 'quads_settings[location_settings][' . $location . '][status]',
|
| 1591 |
-
'current' => !empty( $location_settings['status'] ) ? $location_settings['status'] : null,
|
| 1592 |
-
'class' => 'quads-checkbox'
|
| 1593 |
-
) );
|
| 1594 |
-
$html .= ' ' . __( 'Assign', 'quick-adsense-reloaded' ) . ' ';
|
| 1595 |
-
|
| 1596 |
-
$html .= $quads->html->select( array(
|
| 1597 |
-
'options' => quads_get_ads(),
|
| 1598 |
-
'name' => 'quads_settings[location_settings][' . $location . '][ad]',
|
| 1599 |
-
'selected' => !empty( $location_settings['ad'] ) ? $location_settings['ad'] : null,
|
| 1600 |
-
'show_option_all' => false,
|
| 1601 |
-
'show_option_none' => false
|
| 1602 |
-
) );
|
| 1603 |
-
$html .= ' ' . $location_args['description'] . '</br>';
|
| 1604 |
-
}
|
| 1605 |
-
}
|
| 1606 |
-
|
| 1607 |
-
return $html;
|
| 1608 |
-
}
|
| 1609 |
-
|
| 1610 |
/**
|
| 1611 |
* AdSense Code Callback
|
| 1612 |
*
|
|
@@ -1661,7 +1633,7 @@ function quads_adsense_code_callback( $args ) {
|
|
| 1661 |
<textarea style="vertical-align:top;margin-right:20px;" class="large-text quads-textarea" cols="50" rows="10" id="quads_settings[<?php echo $id; ?>][code]" name="quads_settings[<?php echo $id; ?>][code]"><?php echo esc_textarea( stripslashes( $code ) ); ?></textarea><label for="quads_settings[ <?php echo $id; ?> ][code]"> <?php echo $args['desc']; ?></label>
|
| 1662 |
<br>
|
| 1663 |
<div class="quads_adsense_code">
|
| 1664 |
-
<input type="button" style="vertical-align:inherit;" class="button button-primary quads-add-adsense" value="Copy / Paste AdSense Code"> <span>or add Ad Slot ID & Publisher ID manually below
|
| 1665 |
<br />
|
| 1666 |
<?php //echo __('Generate Ad Slot & Publisher ID automatically from your adsense code', 'quick-adsense-reloaded')?>
|
| 1667 |
<label class="quads-label-left" for="quads_settings[<?php echo $id; ?>][g_data_ad_slot]">Ad Slot ID </label><input type="text" class="quads-medium-size quads-bggrey" id="quads_settings[<?php echo $id; ?>][g_data_ad_slot]" name="quads_settings[<?php echo $id; ?>][g_data_ad_slot]" value="<?php echo $g_data_ad_slot; ?>">
|
| 145 |
7 => '7',
|
| 146 |
8 => '8',
|
| 147 |
9 => '9',
|
| 148 |
+
11 => '11',
|
| 149 |
+
12 => '12',
|
| 150 |
+
13 => '13',
|
| 151 |
+
14 => '14',
|
| 152 |
+
15 => '15',
|
| 153 |
+
16 => '16',
|
| 154 |
+
17 => '17',
|
| 155 |
+
18 => '18',
|
| 156 |
+
19 => '19',
|
| 157 |
+
20 => '20',
|
| 158 |
),
|
| 159 |
),
|
| 160 |
array(
|
| 193 |
'adsense_header' => array(
|
| 194 |
'id' => 'adsense_header',
|
| 195 |
'name' => '<strong>' . __( 'AdSense Code', 'quick-adsense-reloaded' ) . '</strong>',
|
| 196 |
+
'desc' => '<div class="adsense_admin_header">' . sprintf( __( 'Paste up to 10 Ad codes on post body and up to 10 Ad codes on sidebar widget.<br><a href="%s" target="_blank">Read here</a> to find out the most effective AdSense banner sizes. </div>'
|
| 197 |
. '<ul style="margin-top:10px;">'
|
| 198 |
+
. '<li>- Use option <i>AdSense</i> for unmodified AdSense code</li>'
|
| 199 |
+
. '<li>- Use <i>Plain Text / HTML / JS</i> for modified AdSense code with custom css or for none AdSense ads</li></ul>', 'quick-adsense-reloaded' ), 'http://wpquads.com/effective-adsense-banner-size-formats/?utm_campaign=plugin&utm_source=general_tab&utm_medium=admin&utm_content=best_banner_sizes' )
|
| 200 |
. '</ul>'
|
| 201 |
+
. '<div style="clear:both;">' . sprintf( __( '<strong>Ads are not showing? Read the <a href="%s" target="_blank">troubleshooting guide</a> to find out how to resolve this issue.', 'quick-adsense-reloaded' ),'http://wpquads.com/docs/adsense-ads-are-not-showing/?utm_source=plugin&utm_campaign=wpquads-settings&utm_medium=website&utm_term=toplink') . '</div>'
|
| 202 |
. '<div id="quads-open-toggle" class="button">'.__('Open All Ads','quick-adsense-reloaded').'</div>',
|
| 203 |
'type' => 'header'
|
| 204 |
),
|
| 1479 |
|
| 1480 |
|
| 1481 |
// Pos 1
|
| 1482 |
+
$html = $quads->html->checkbox( array('name' => 'quads_settings[pos1][BegnAds]','current' => !empty( $quads_options['pos1']['BegnAds'] ) ? $quads_options['pos1']['BegnAds'] : null, 'class' => 'quads-checkbox quads-assign') );
|
| 1483 |
$html .= ' ' . __( 'Assign', 'quick-adsense-reloaded' ) . ' ';
|
| 1484 |
+
$html .= $quads->html->select( array('options' => quads_get_ads(), 'id' => 'quads_settings[pos1][BegnRnd]', 'name' => 'quads_settings[pos1][BegnRnd]', 'selected' => !empty( $quads_options['pos1']['BegnRnd'] ) ? $quads_options['pos1']['BegnRnd'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1485 |
$html .= ' ' . __( 'to <strong>Beginning of Post</strong>', 'quick-adsense-reloaded' ) . '</br>';
|
| 1486 |
|
| 1487 |
// Pos 2
|
| 1488 |
+
$html .= $quads->html->checkbox( array('name' => 'quads_settings[pos2][MiddAds]', 'current' => !empty( $quads_options['pos2']['MiddAds'] ) ? $quads_options['pos2']['MiddAds'] : null, 'class' => 'quads-checkbox quads-assign') );
|
| 1489 |
$html .= ' ' . __( 'Assign', 'quick-adsense-reloaded' ) . ' ';
|
| 1490 |
+
$html .= $quads->html->select( array('options' => quads_get_ads(), 'id' => 'quads_settings[pos2][MiddRnd]', 'name' => 'quads_settings[pos2][MiddRnd]', 'selected' => !empty( $quads_options['pos2']['MiddRnd'] ) ? $quads_options['pos2']['MiddRnd'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1491 |
$html .= ' ' . __( 'to <strong>Middle of Post</strong>', 'quick-adsense-reloaded' ) . '</br>';
|
| 1492 |
|
| 1493 |
// Pos 3
|
| 1494 |
+
$html .= $quads->html->checkbox( array('name' => 'quads_settings[pos3][EndiAds]', 'current' => !empty( $quads_options['pos3']['EndiAds'] ) ? $quads_options['pos3']['EndiAds'] : null, 'class' => 'quads-checkbox quads-assign') );
|
| 1495 |
$html .= ' ' . __( 'Assign', 'quick-adsense-reloaded' ) . ' ';
|
| 1496 |
+
$html .= $quads->html->select( array('options' => quads_get_ads(), 'id' => 'quads_settings[pos3][EndiRnd]', 'name' => 'quads_settings[pos3][EndiRnd]', 'selected' => !empty( $quads_options['pos3']['EndiRnd'] ) ? $quads_options['pos3']['EndiRnd'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1497 |
$html .= ' ' . __( 'to <strong>End of Post</strong>', 'quick-adsense-reloaded' ) . '</br>';
|
| 1498 |
|
| 1499 |
// Pos 4
|
| 1500 |
+
$html .= $quads->html->checkbox( array('name' => 'quads_settings[pos4][MoreAds]', 'current' => !empty( $quads_options['pos4']['MoreAds'] ) ? $quads_options['pos4']['MoreAds'] : null, 'class' => 'quads-checkbox quads-assign') );
|
| 1501 |
$html .= ' ' . __( 'Assign', 'quick-adsense-reloaded' ) . ' ';
|
| 1502 |
+
$html .= $quads->html->select( array('options' => quads_get_ads(), 'id' => 'quads_settings[pos4][MoreRnd]', 'name' => 'quads_settings[pos4][MoreRnd]', 'selected' => !empty( $quads_options['pos4']['MoreRnd'] ) ? $quads_options['pos4']['MoreRnd'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1503 |
$html .= ' ' . __( 'right after <strong>the <span style="font-family:Courier New,Courier,Fixed;"><!--more--></span> tag</strong>', 'quick-adsense-reloaded' ) . '</br>';
|
| 1504 |
|
| 1505 |
// Pos 5
|
| 1506 |
+
$html .= $quads->html->checkbox( array('name' => 'quads_settings[pos5][LapaAds]', 'current' => !empty( $quads_options['pos5']['LapaAds'] ) ? $quads_options['pos5']['LapaAds'] : null, 'class' => 'quads-checkbox quads-assign') );
|
| 1507 |
$html .= ' ' . __( 'Assign', 'quick-adsense-reloaded' ) . ' ';
|
| 1508 |
+
$html .= $quads->html->select( array('options' => quads_get_ads(), 'id' => 'quads_settings[pos5][LapaRnd]', 'name' => 'quads_settings[pos5][LapaRnd]', 'selected' => !empty( $quads_options['pos5']['LapaRnd'] ) ? $quads_options['pos5']['LapaRnd'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1509 |
$html .= ' ' . __( 'right before <strong>the last Paragraph</strong>', 'quick-adsense-reloaded' ) . ' </br>';
|
| 1510 |
|
| 1511 |
// Pos 6
|
| 1512 |
+
$html .= $quads->html->checkbox( array('name' => 'quads_settings[pos6][Par1Ads]', 'current' => !empty( $quads_options['pos6']['Par1Ads'] ) ? $quads_options['pos6']['Par1Ads'] : null, 'class' => 'quads-checkbox quads-assign') );
|
| 1513 |
$html .= ' ' . __( 'Assign', 'quick-adsense-reloaded' ) . ' ';
|
| 1514 |
+
$html .= $quads->html->select( array('options' => quads_get_ads(),'id' => 'quads_settings[pos6][Par1Rnd]', 'name' => 'quads_settings[pos6][Par1Rnd]', 'selected' => !empty( $quads_options['pos6']['Par1Rnd'] ) ? $quads_options['pos6']['Par1Rnd'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1515 |
$html .= ' ' . __( '<strong>After Paragraph</strong>', 'quick-adsense-reloaded' ) . ' ';
|
| 1516 |
+
$html .= $quads->html->select( array('options' => quads_get_values(), 'class' => 'quads-paragraph', 'id' => 'quads_settings[pos6][Par1Nup]', 'name' => 'quads_settings[pos6][Par1Nup]', 'selected' => !empty( $quads_options['pos6']['Par1Nup'] ) ? $quads_options['pos6']['Par1Nup'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1517 |
$html .= ' ' . __( '→', 'quick-adsense-reloaded' ) . ' ';
|
| 1518 |
+
$html .= $quads->html->checkbox( array('name' => 'quads_settings[pos6][Par1Con]', 'current' => !empty( $quads_options['pos6']['Par1Con'] ) ? $quads_options['pos6']['Par1Con'] : null, 'class' => 'quads-checkbox quads-assign') );
|
| 1519 |
$html .= ' ' . __( 'to <strong>End of Post</strong> if fewer paragraphs are found.', 'quick-adsense-reloaded' ) . ' </br>';
|
| 1520 |
|
| 1521 |
// Pos 7
|
| 1522 |
+
$html .= $quads->html->checkbox( array('name' => 'quads_settings[pos7][Par2Ads]', 'current' => !empty( $quads_options['pos7']['Par2Ads'] ) ? $quads_options['pos7']['Par2Ads'] : null, 'class' => 'quads-checkbox quads-assign') );
|
| 1523 |
$html .= ' ' . __( 'Assign', 'quick-adsense-reloaded' ) . ' ';
|
| 1524 |
+
$html .= $quads->html->select( array('options' => quads_get_ads(), 'id' => 'quads_settings[pos7][Par2Rnd]', 'name' => 'quads_settings[pos7][Par2Rnd]', 'selected' => !empty( $quads_options['pos7']['Par2Rnd'] ) ? $quads_options['pos7']['Par2Rnd'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1525 |
$html .= ' ' . __( '<strong>After Paragraph</strong>', 'quick-adsense-reloaded' ) . ' ';
|
| 1526 |
+
$html .= $quads->html->select( array('options' => quads_get_values(), 'id' => 'quads_settings[pos7][Par2Nup]', 'name' => 'quads_settings[pos7][Par2Nup]', 'selected' => !empty( $quads_options['pos7']['Par2Nup'] ) ? $quads_options['pos7']['Par2Nup'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1527 |
$html .= ' ' . __( '→', 'quick-adsense-reloaded' ) . ' ';
|
| 1528 |
+
$html .= $quads->html->checkbox( array('name' => 'quads_settings[pos7][Par2Con]', 'current' => !empty( $quads_options['pos7']['Par2Con'] ) ? $quads_options['pos7']['Par2Con'] : null, 'class' => 'quads-checkbox quads-assign') );
|
| 1529 |
$html .= ' ' . __( 'to <strong>End of Post</strong> if fewer paragraphs are found.', 'quick-adsense-reloaded' ) . ' </br>';
|
| 1530 |
|
| 1531 |
// Pos 8
|
| 1532 |
+
$html .= $quads->html->checkbox( array('name' => 'quads_settings[pos8][Par3Ads]', 'current' => !empty( $quads_options['pos8']['Par3Ads'] ) ? $quads_options['pos8']['Par3Ads'] : null, 'class' => 'quads-checkbox quads-assign') );
|
| 1533 |
$html .= ' ' . __( 'Assign', 'quick-adsense-reloaded' ) . ' ';
|
| 1534 |
+
$html .= $quads->html->select( array('options' => quads_get_ads(), 'id' => 'quads_settings[pos8][Par3Rnd]', 'name' => 'quads_settings[pos8][Par3Rnd]', 'selected' => !empty( $quads_options['pos8']['Par3Rnd'] ) ? $quads_options['pos8']['Par3Rnd'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1535 |
$html .= ' ' . __( '<strong>After Paragraph</strong>', 'quick-adsense-reloaded' ) . ' ';
|
| 1536 |
+
$html .= $quads->html->select( array('options' => quads_get_values(), 'id' => 'quads_settings[pos8][Par3Nup]', 'name' => 'quads_settings[pos8][Par3Nup]', 'selected' => !empty( $quads_options['pos8']['Par3Nup'] ) ? $quads_options['pos8']['Par3Nup'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1537 |
$html .= ' ' . __( '→', 'quick-adsense-reloaded' ) . ' ';
|
| 1538 |
+
$html .= $quads->html->checkbox( array('name' => 'quads_settings[pos8][Par3Con]', 'current' => !empty( $quads_options['pos8']['Par3Con'] ) ? $quads_options['pos8']['Par3Con'] : null, 'class' => 'quads-checkbox quads-assign') );
|
| 1539 |
$html .= ' ' . __( 'to <strong>End of Post</strong> if fewer paragraphs are found.', 'quick-adsense-reloaded' ) . ' </br>';
|
| 1540 |
|
| 1541 |
+
$html .= apply_filters('quads_extra_paragraph', '');
|
| 1542 |
+
|
| 1543 |
// Pos 9
|
| 1544 |
+
$html .= $quads->html->checkbox( array('name' => 'quads_settings[pos9][Img1Ads]', 'current' => !empty( $quads_options['pos9']['Img1Ads'] ) ? $quads_options['pos9']['Img1Ads'] : null, 'class' => 'quads-checkbox quads-assign') );
|
| 1545 |
$html .= ' ' . __( 'Assign', 'quick-adsense-reloaded' ) . ' ';
|
| 1546 |
$html .= $quads->html->select( array('options' => quads_get_ads(), 'name' => 'quads_settings[pos9][Img1Rnd]', 'selected' => !empty( $quads_options['pos9']['Img1Rnd'] ) ? $quads_options['pos9']['Img1Rnd'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1547 |
$html .= ' ' . __( '<strong>After Image</strong>', 'quick-adsense-reloaded' ) . ' ';
|
| 1548 |
+
$html .= $quads->html->select( array('options' => quads_get_values(), 'id' => 'quads_settings[pos9][Img1Nup]', 'name' => 'quads_settings[pos9][Img1Nup]', 'selected' => !empty( $quads_options['pos9']['Img1Nup'] ) ? $quads_options['pos9']['Img1Nup'] : null, 'show_option_all' => false, 'show_option_none' => false) );
|
| 1549 |
$html .= ' ' . __( '→', 'quick-adsense-reloaded' ) . ' ';
|
| 1550 |
+
$html .= $quads->html->checkbox( array('name' => 'quads_settings[pos9][Img1Con]', 'current' => !empty( $quads_options['pos9']['Img1Con'] ) ? $quads_options['pos9']['Img1Con'] : null, 'class' => 'quads-checkbox quads-assign') );
|
| 1551 |
$html .= ' ' . __( 'after <b>Image\'s outer</b><b><span style="font-family:Courier New,Courier,Fixed;"> <div> wp-caption</span></b> if any.', 'quick-adsense-reloaded' ) . ' </br>';
|
| 1552 |
|
| 1553 |
echo apply_filters( 'quads_ad_position_callback', $html );
|
| 1579 |
echo $html;
|
| 1580 |
}
|
| 1581 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1582 |
/**
|
| 1583 |
* AdSense Code Callback
|
| 1584 |
*
|
| 1633 |
<textarea style="vertical-align:top;margin-right:20px;" class="large-text quads-textarea" cols="50" rows="10" id="quads_settings[<?php echo $id; ?>][code]" name="quads_settings[<?php echo $id; ?>][code]"><?php echo esc_textarea( stripslashes( $code ) ); ?></textarea><label for="quads_settings[ <?php echo $id; ?> ][code]"> <?php echo $args['desc']; ?></label>
|
| 1634 |
<br>
|
| 1635 |
<div class="quads_adsense_code">
|
| 1636 |
+
<input type="button" style="vertical-align:inherit;" class="button button-primary quads-add-adsense" value="Copy / Paste AdSense Code"> <span>or add Ad Slot ID & Publisher ID manually below:</span>
|
| 1637 |
<br />
|
| 1638 |
<?php //echo __('Generate Ad Slot & Publisher ID automatically from your adsense code', 'quick-adsense-reloaded')?>
|
| 1639 |
<label class="quads-label-left" for="quads_settings[<?php echo $id; ?>][g_data_ad_slot]">Ad Slot ID </label><input type="text" class="quads-medium-size quads-bggrey" id="quads_settings[<?php echo $id; ?>][g_data_ad_slot]" name="quads_settings[<?php echo $id; ?>][g_data_ad_slot]" value="<?php echo $g_data_ad_slot; ?>">
|
includes/admin/upgrades/upgrade-functions.php
CHANGED
|
@@ -112,8 +112,8 @@ function quads_is_commercial_theme() {
|
|
| 112 |
$themes = array('Bunchy', 'Bimber', 'boombox', 'Boombox');
|
| 113 |
|
| 114 |
if( is_object( $my_theme ) && in_array( $my_theme->get( 'Name' ), $themes ) ) {
|
| 115 |
-
update_option( 'quads_show_theme_notice', $my_theme->get( 'Name' ) );
|
| 116 |
-
return
|
| 117 |
}
|
| 118 |
|
| 119 |
return false;
|
| 112 |
$themes = array('Bunchy', 'Bimber', 'boombox', 'Boombox');
|
| 113 |
|
| 114 |
if( is_object( $my_theme ) && in_array( $my_theme->get( 'Name' ), $themes ) ) {
|
| 115 |
+
//update_option( 'quads_show_theme_notice', $my_theme->get( 'Name' ) );
|
| 116 |
+
return $my_theme->get( 'Name' );
|
| 117 |
}
|
| 118 |
|
| 119 |
return false;
|
includes/api.php
CHANGED
|
@@ -33,6 +33,47 @@
|
|
| 33 |
*/
|
| 34 |
|
| 35 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 36 |
/**
|
| 37 |
* Register an ad position.
|
| 38 |
*
|
| 33 |
*/
|
| 34 |
|
| 35 |
|
| 36 |
+
/**
|
| 37 |
+
* Return ad locations HTML based on new API.
|
| 38 |
+
*
|
| 39 |
+
* @param $html
|
| 40 |
+
* @return string Locations HTML
|
| 41 |
+
*/
|
| 42 |
+
function quads_render_ad_locations( $html ) {
|
| 43 |
+
global $quads_options, $_quads_registered_ad_locations, $quads;
|
| 44 |
+
|
| 45 |
+
if( isset( $_quads_registered_ad_locations ) && is_array( $_quads_registered_ad_locations ) ) {
|
| 46 |
+
foreach ( $_quads_registered_ad_locations as $location => $location_args ) {
|
| 47 |
+
|
| 48 |
+
$location_settings = quads_get_ad_location_settings( $location );
|
| 49 |
+
|
| 50 |
+
$html .= $quads->html->checkbox( array(
|
| 51 |
+
'name' => 'quads_settings[location_settings][' . $location . '][status]',
|
| 52 |
+
'current' => !empty( $location_settings['status'] ) ? $location_settings['status'] : null,
|
| 53 |
+
'class' => 'quads-checkbox quads-assign'
|
| 54 |
+
) );
|
| 55 |
+
$html .= ' ' . __( 'Assign', 'quick-adsense-reloaded' ) . ' ';
|
| 56 |
+
|
| 57 |
+
$html .= $quads->html->select( array(
|
| 58 |
+
'options' => quads_get_ads(),
|
| 59 |
+
'name' => 'quads_settings[location_settings][' . $location . '][ad]',
|
| 60 |
+
'selected' => !empty( $location_settings['ad'] ) ? $location_settings['ad'] : null,
|
| 61 |
+
'show_option_all' => false,
|
| 62 |
+
'show_option_none' => false
|
| 63 |
+
) );
|
| 64 |
+
$html .= ' ' . $location_args['description'] . '</br>';
|
| 65 |
+
}
|
| 66 |
+
}
|
| 67 |
+
|
| 68 |
+
return $html;
|
| 69 |
+
}
|
| 70 |
+
|
| 71 |
+
/**
|
| 72 |
+
* This hook should be removed and the hook function should replace entire "quads_ad_position_callback" function.
|
| 73 |
+
*/
|
| 74 |
+
add_filter( 'quads_ad_position_callback', 'quads_render_ad_locations' );
|
| 75 |
+
|
| 76 |
+
|
| 77 |
/**
|
| 78 |
* Register an ad position.
|
| 79 |
*
|
includes/conditionals.php
CHANGED
|
@@ -72,6 +72,7 @@ function quads_get_total_ad_count(){
|
|
| 72 |
$custom = isset($ad_count_custom) ? (int)$ad_count_custom : 0;
|
| 73 |
$widget = isset($ad_count_widget) ? (int)$ad_count_widget : 0;
|
| 74 |
|
|
|
|
| 75 |
return $shortcode + $content + $custom + $widget;
|
| 76 |
}
|
| 77 |
|
|
@@ -135,6 +136,7 @@ function quads_set_ad_count_custom(){
|
|
| 135 |
* Increment count of active ads generated on widgets
|
| 136 |
*
|
| 137 |
* @return int amount of active widget ads
|
|
|
|
| 138 |
*/
|
| 139 |
function quads_set_ad_count_widget(){
|
| 140 |
global $ad_count_widget;
|
| 72 |
$custom = isset($ad_count_custom) ? (int)$ad_count_custom : 0;
|
| 73 |
$widget = isset($ad_count_widget) ? (int)$ad_count_widget : 0;
|
| 74 |
|
| 75 |
+
//wp_die($ad_count_widget);
|
| 76 |
return $shortcode + $content + $custom + $widget;
|
| 77 |
}
|
| 78 |
|
| 136 |
* Increment count of active ads generated on widgets
|
| 137 |
*
|
| 138 |
* @return int amount of active widget ads
|
| 139 |
+
* @deprecated since 1.4.1
|
| 140 |
*/
|
| 141 |
function quads_set_ad_count_widget(){
|
| 142 |
global $ad_count_widget;
|
includes/shortcodes.php
CHANGED
|
@@ -24,20 +24,41 @@ add_shortcode( 'quads', 'quads_shortcode_display_ad', 1); // Important use a ver
|
|
| 24 |
* @since 0.9.4
|
| 25 |
* @param array $atts
|
| 26 |
*/
|
| 27 |
-
function quads_shortcode_display_ad($atts) {
|
| 28 |
-
|
| 29 |
-
return;
|
| 30 |
|
|
|
|
|
|
|
|
|
|
| 31 |
|
| 32 |
//return quads_check_meta_setting('NoAds');
|
| 33 |
-
if
|
| 34 |
return;
|
| 35 |
|
| 36 |
-
|
| 37 |
-
|
| 38 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 39 |
|
|
|
|
|
|
|
|
|
|
| 40 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 41 |
|
| 42 |
/**
|
| 43 |
* return ad content
|
|
@@ -56,7 +77,7 @@ function quads_get_ad($id = 0) {
|
|
| 56 |
if ( isset($quads_options['ad' . $id]['code']) ){
|
| 57 |
// Count how often the shortcode is used - Important
|
| 58 |
quads_set_ad_count_shortcode();
|
| 59 |
-
|
| 60 |
//return $code . $quads_options['ad' . $id]['code'];
|
| 61 |
return quads_render_ad('ad' . $id, $quads_options['ad' . $id]['code']);
|
| 62 |
}
|
| 24 |
* @since 0.9.4
|
| 25 |
* @param array $atts
|
| 26 |
*/
|
| 27 |
+
function quads_shortcode_display_ad( $atts ) {
|
| 28 |
+
global $quads_options;
|
|
|
|
| 29 |
|
| 30 |
+
if( !quads_ad_is_allowed() )
|
| 31 |
+
return;
|
| 32 |
+
|
| 33 |
|
| 34 |
//return quads_check_meta_setting('NoAds');
|
| 35 |
+
if( quads_check_meta_setting( 'NoAds' ) === '1' )
|
| 36 |
return;
|
| 37 |
|
| 38 |
+
// The ad id
|
| 39 |
+
$id = isset( $atts['id'] ) ? ( int ) $atts['id'] : 0;
|
| 40 |
+
|
| 41 |
+
$arr = array(
|
| 42 |
+
'float:left;margin:%1$dpx %1$dpx %1$dpx 0;',
|
| 43 |
+
'float:none;margin:%1$dpx 0 %1$dpx 0;text-align:center;',
|
| 44 |
+
'float:right;margin:%1$dpx 0 %1$dpx %1$dpx;',
|
| 45 |
+
'float:none;margin:0px;');
|
| 46 |
+
|
| 47 |
+
$adsalign = $quads_options['ad' . $id]['align'];
|
| 48 |
+
$adsmargin = isset( $quads_options['ad' . $id]['margin'] ) ? $quads_options['ad' . $id]['margin'] : '3'; // default
|
| 49 |
+
$margin = sprintf( $arr[( int ) $adsalign], $adsmargin );
|
| 50 |
|
| 51 |
+
|
| 52 |
+
// Do not create any inline style on AMP site
|
| 53 |
+
$style = !quads_is_amp_endpoint() ? apply_filters( 'quads_filter_margins', $margin, 'ad' . $id ) : '';
|
| 54 |
|
| 55 |
+
$code = "\n" . '<!-- WP QUADS v. ' . QUADS_VERSION . ' Shortcode Ad -->' . "\n" .
|
| 56 |
+
'<div class="quads-location quads-ad' . $id . '" id="quads-ad' . $id . '" style="' . $style . '">' . "\n";
|
| 57 |
+
$code .= do_shortcode( quads_get_ad( $id ) );
|
| 58 |
+
$code .= '</div>' . "\n";
|
| 59 |
+
|
| 60 |
+
return $code;
|
| 61 |
+
}
|
| 62 |
|
| 63 |
/**
|
| 64 |
* return ad content
|
| 77 |
if ( isset($quads_options['ad' . $id]['code']) ){
|
| 78 |
// Count how often the shortcode is used - Important
|
| 79 |
quads_set_ad_count_shortcode();
|
| 80 |
+
//$code = "\n".'<!-- WP QUADS Shortcode Ad v. ' . QUADS_VERSION .' -->'."\n";
|
| 81 |
//return $code . $quads_options['ad' . $id]['code'];
|
| 82 |
return quads_render_ad('ad' . $id, $quads_options['ad' . $id]['code']);
|
| 83 |
}
|
includes/template-functions.php
CHANGED
|
@@ -84,11 +84,12 @@ function quads_get_visibility_quicktags_str ( $post_id = null ) {
|
|
| 84 |
* @global arr $quads_options all plugin settings
|
| 85 |
* @global int $visibleContentAds number of active content ads (reseted internally so we have to use a similar global below for external purposes: $visibleContentAdsGlobal)
|
| 86 |
* @global arr $AdsId Whitespace trimmed array of ad codes
|
| 87 |
-
* @global int $
|
| 88 |
-
* @global int $
|
| 89 |
* @global string $AdsWidName name of widget
|
| 90 |
-
* @global int $visibleContentAdsGlobal
|
| 91 |
* @global int $visibleShortcodeAds number of active shortcode ads
|
|
|
|
| 92 |
* @param string $content
|
| 93 |
*
|
| 94 |
* @return string
|
|
@@ -97,7 +98,7 @@ function quads_get_visibility_quicktags_str ( $post_id = null ) {
|
|
| 97 |
*/
|
| 98 |
|
| 99 |
function quads_process_content($content){
|
| 100 |
-
global $quads_options, $visibleContentAds, $AdsId, $
|
| 101 |
|
| 102 |
// Return original content if QUADS is not allowed
|
| 103 |
if ( !quads_ad_is_allowed($content) ) {
|
|
@@ -107,22 +108,25 @@ function quads_process_content($content){
|
|
| 107 |
// Maximum allowed ads
|
| 108 |
$maxAds = isset($quads_options['maxads']) ? $quads_options['maxads'] : 10;
|
| 109 |
|
|
|
|
| 110 |
if (strpos($content,'<!--OffWidget-->')===false) {
|
| 111 |
-
for($i=1;$i<=$
|
| 112 |
$wadsid = sanitize_title(str_replace(array('(',')'),'',sprintf($AdsWidName,$i)));
|
| 113 |
-
|
|
|
|
| 114 |
}
|
| 115 |
}
|
| 116 |
|
|
|
|
| 117 |
// Return here if max visible ads are exceeded
|
| 118 |
-
if( $visibleContentAds+$visibleShortcodeAds >= $maxAds ) { // ShownAds === 0 or larger/equal than $maxAds
|
| 119 |
$content = quads_clean_tags($content);
|
| 120 |
return $content;
|
| 121 |
};
|
| 122 |
|
| 123 |
// Create array of valid id's
|
| 124 |
if( count( $AdsId ) === 0 ) { //
|
| 125 |
-
for ( $i = 1; $i <= $
|
| 126 |
$tmp = isset($quads_options['ad' . $i]['code']) ? trim( $quads_options['ad' . $i]['code'] ) : '';
|
| 127 |
// id is valid if there is either the plain text field populated or the adsense ad slot and the ad client id
|
| 128 |
if( !empty( $tmp ) || (!empty($quads_options['ad' . $i]['g_data_ad_slot']) && !empty($quads_options['ad' . $i]['g_data_ad_client'] ) ) ) {
|
|
@@ -145,13 +149,14 @@ function quads_process_content($content){
|
|
| 145 |
$content = str_replace("<p></p>", "##QA-TP1##", $content);
|
| 146 |
// Replace all <p> </p> tags with placeholder ##QA-TP2##
|
| 147 |
$content = str_replace("<p> </p>", "##QA-TP2##", $content);
|
| 148 |
-
$
|
| 149 |
|
| 150 |
-
if( !$
|
| 151 |
|
| 152 |
-
$AdsIdCus = array();
|
| 153 |
-
|
| 154 |
-
$cusrnd = 'CusRnd';
|
|
|
|
| 155 |
|
| 156 |
$begn1 = isset($quads_options['pos1']['BegnAds']) ? true : false;
|
| 157 |
$begn2 = isset($quads_options['pos1']['BegnRnd']) ? $quads_options['pos1']['BegnRnd'] : 0;
|
|
@@ -169,19 +174,20 @@ function quads_process_content($content){
|
|
| 169 |
$lapa2 = isset($quads_options['pos5']['LapaRnd'])? $quads_options['pos5']['LapaRnd'] : 0 ;
|
| 170 |
|
| 171 |
|
| 172 |
-
$rc=3;
|
| 173 |
-
$default = 5;
|
| 174 |
-
for($i=1;$i<=$rc;$i++) {
|
| 175 |
|
| 176 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 177 |
|
| 178 |
-
$
|
| 179 |
-
$
|
| 180 |
-
$
|
| 181 |
-
$
|
| 182 |
|
| 183 |
}
|
| 184 |
-
|
| 185 |
$imageActive = isset($quads_options['pos9']['Img1Ads']) ? $quads_options['pos9']['Img1Ads'] : false;
|
| 186 |
$imageAdNo = isset($quads_options['pos9']['Img1Rnd']) ? $quads_options['pos9']['Img1Rnd'] : false;
|
| 187 |
$imageNo = isset($quads_options['pos9']['Img1Nup']) ? $quads_options['pos9']['Img1Nup'] : false;
|
|
@@ -194,22 +200,58 @@ function quads_process_content($content){
|
|
| 194 |
if ( $lapa2 == 0 ) { $g1 = $cusrnd; } else { $g1 = $cusads.$lapa2; array_push($AdsIdCus, $lapa2); };
|
| 195 |
if ( $endi2 == 0 ) { $b2 = $cusrnd; } else { $b2 = $cusads.$endi2; array_push($AdsIdCus, $endi2); };
|
| 196 |
|
| 197 |
-
for($i=1;$i<=$
|
| 198 |
-
if ( $
|
| 199 |
-
|
| 200 |
} else {
|
| 201 |
-
$
|
| 202 |
-
array_push($AdsIdCus, $
|
| 203 |
|
| 204 |
};
|
| 205 |
}
|
| 206 |
|
| 207 |
-
//
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 208 |
if ( $imageAdNo == 0 ) {
|
| 209 |
-
$
|
| 210 |
} else {
|
| 211 |
-
$
|
| 212 |
-
array_push($AdsIdCus, $imageAdNo);
|
| 213 |
};
|
| 214 |
|
| 215 |
// Check if image ad is middle one
|
|
@@ -217,20 +259,20 @@ function quads_process_content($content){
|
|
| 217 |
if( substr_count(strtolower($content), '</p>')>=2 ) {
|
| 218 |
$sch = "</p>";
|
| 219 |
$content = str_replace("</P>", $sch, $content);
|
| 220 |
-
$
|
| 221 |
$nn = 0; $mm = strlen($content)/2;
|
| 222 |
-
for($i=0;$i<count($
|
| 223 |
-
$nn += strlen($
|
| 224 |
if($nn>$mm) {
|
| 225 |
-
if( ($mm - ($nn - strlen($
|
| 226 |
-
$
|
| 227 |
} else {
|
| 228 |
-
$
|
| 229 |
}
|
| 230 |
break;
|
| 231 |
}
|
| 232 |
}
|
| 233 |
-
$content = implode($sch, $
|
| 234 |
}
|
| 235 |
}
|
| 236 |
|
|
@@ -250,23 +292,11 @@ function quads_process_content($content){
|
|
| 250 |
if( $lapa1 && strpos($content,'<!--OffBfLastPara-->')===false){
|
| 251 |
$sch = "<p>";
|
| 252 |
$content = str_replace("<P>", $sch, $content);
|
| 253 |
-
$
|
| 254 |
-
if ( count($
|
| 255 |
-
$content = implode($sch, array_slice($
|
| 256 |
}
|
| 257 |
}
|
| 258 |
-
for($i=$rc;$i>=1;$i--) {
|
| 259 |
-
if ( $para1[$i] ){
|
| 260 |
-
$sch = "</p>";
|
| 261 |
-
$content = str_replace("</P>", $sch, $content);
|
| 262 |
-
$arr = explode($sch, $content);
|
| 263 |
-
if ( (int)$para3[$i] < count($arr) ) {
|
| 264 |
-
$content = implode($sch, array_slice($arr, 0, $para3[$i])).$sch .'<!--'.$b3[$i].'-->'. implode($sch, array_slice($arr, $para3[$i]));
|
| 265 |
-
} elseif ($para4[$i]) {
|
| 266 |
-
$content = implode($sch, $arr).'<!--'.$b3[$i].'-->';
|
| 267 |
-
}
|
| 268 |
-
}
|
| 269 |
-
}
|
| 270 |
|
| 271 |
if ( $imageActive ){
|
| 272 |
|
|
@@ -279,26 +309,26 @@ function quads_process_content($content){
|
|
| 279 |
$content = str_replace("</A>", $atag, $content);
|
| 280 |
|
| 281 |
// Start
|
| 282 |
-
$
|
| 283 |
-
if ( (int)$imageNo < count($
|
| 284 |
-
$
|
| 285 |
-
if ( count($
|
| 286 |
-
$tss = explode($caption, $
|
| 287 |
$ccp = ( count($tss) > 1 ) ? strpos(strtolower($tss[0]),'[caption ')===false : false ;
|
| 288 |
-
$
|
| 289 |
-
$cdu = ( count($
|
| 290 |
if ( $imageCaption && $ccp ) {
|
| 291 |
-
$
|
| 292 |
}else if ( $cdu ) {
|
| 293 |
-
$
|
| 294 |
}else{
|
| 295 |
-
$
|
| 296 |
}
|
| 297 |
}
|
| 298 |
-
$content = implode($imgtag, $
|
| 299 |
}
|
| 300 |
}
|
| 301 |
-
}
|
| 302 |
|
| 303 |
/*
|
| 304 |
* Tidy up content
|
|
@@ -308,16 +338,17 @@ function quads_process_content($content){
|
|
| 308 |
|
| 309 |
|
| 310 |
/*
|
| 311 |
-
* Replace Beginning/Middle/End Ads1-10
|
| 312 |
*/
|
| 313 |
|
| 314 |
-
if( !$
|
| 315 |
for( $i=1; $i<=count($AdsIdCus); $i++ ) {
|
| 316 |
|
| 317 |
if( strpos($content,'<!--'.$cusads.$AdsIdCus[$i-1].'-->')!==false && in_array($AdsIdCus[$i-1], $AdsId)) {
|
| 318 |
|
| 319 |
$content = quads_replace_ads( $content, $cusads.$AdsIdCus[$i-1], $AdsIdCus[$i-1] );
|
| 320 |
-
|
|
|
|
| 321 |
$visibleContentAds += 1;
|
| 322 |
|
| 323 |
quads_set_ad_count_content();
|
|
@@ -351,8 +382,8 @@ function quads_process_content($content){
|
|
| 351 |
|
| 352 |
|
| 353 |
|
| 354 |
-
|
| 355 |
-
if( !$
|
| 356 |
if( strpos($content, '<!--'.$cusrnd.'-->')!==false && is_singular() ) {
|
| 357 |
$tcx = count($AdsId);
|
| 358 |
$tcy = substr_count($content, '<!--'.$cusrnd.'-->');
|
|
@@ -461,19 +492,19 @@ function quads_clean_tags($content, $trimonly = false) {
|
|
| 461 |
*
|
| 462 |
* @global type $quads_options
|
| 463 |
* @param string $content
|
| 464 |
-
* @param string $
|
| 465 |
* @param string $id id of the ad
|
| 466 |
* @return type
|
| 467 |
*/
|
| 468 |
-
function quads_replace_ads($content, $
|
| 469 |
global $quads_options;
|
| 470 |
|
| 471 |
|
| 472 |
-
if( strpos($content,'<!--'.$
|
| 473 |
return $content;
|
| 474 |
}
|
| 475 |
if ($id != -1) {
|
| 476 |
-
$
|
| 477 |
'float:left;margin:%1$dpx %1$dpx %1$dpx 0;',
|
| 478 |
'float:none;margin:%1$dpx 0 %1$dpx 0;text-align:center;',
|
| 479 |
'float:right;margin:%1$dpx 0 %1$dpx %1$dpx;',
|
|
@@ -481,7 +512,7 @@ function quads_replace_ads($content, $nme, $id) {
|
|
| 481 |
|
| 482 |
$adsalign = $quads_options['ad' . $id]['align'];
|
| 483 |
$adsmargin = isset($quads_options['ad' . $id]['margin']) ? $quads_options['ad' . $id]['margin'] : '3'; // default
|
| 484 |
-
$margin = sprintf($
|
| 485 |
|
| 486 |
// Do not create any inline style on AMP site
|
| 487 |
$style = !quads_is_amp_endpoint() ? apply_filters ('quads_filter_margins', $margin, 'ad'.$id ) : '';
|
|
@@ -496,7 +527,7 @@ function quads_replace_ads($content, $nme, $id) {
|
|
| 496 |
} else {
|
| 497 |
$adscode ='';
|
| 498 |
}
|
| 499 |
-
$cont = explode('<!--'.$
|
| 500 |
|
| 501 |
return $cont[0].$adscode.$cont[1];
|
| 502 |
}
|
|
@@ -504,15 +535,15 @@ function quads_replace_ads($content, $nme, $id) {
|
|
| 504 |
/**
|
| 505 |
* Remove element from array
|
| 506 |
*
|
| 507 |
-
* @param array $
|
| 508 |
* @param int $idx key to remove from array
|
| 509 |
* @return array
|
| 510 |
*/
|
| 511 |
-
function quads_del_element($
|
| 512 |
$copy = array();
|
| 513 |
-
for( $i=0; $i<count($
|
| 514 |
if ( $idx != $i ) {
|
| 515 |
-
array_push($copy, $
|
| 516 |
}
|
| 517 |
}
|
| 518 |
return $copy;
|
| 84 |
* @global arr $quads_options all plugin settings
|
| 85 |
* @global int $visibleContentAds number of active content ads (reseted internally so we have to use a similar global below for external purposes: $visibleContentAdsGlobal)
|
| 86 |
* @global arr $AdsId Whitespace trimmed array of ad codes
|
| 87 |
+
* @global int $maxWidgets maximum number of ad widgets
|
| 88 |
+
* @global int $maxAds number of maximum available ads
|
| 89 |
* @global string $AdsWidName name of widget
|
| 90 |
+
* @global int $visibleContentAdsGlobal number of active content ads
|
| 91 |
* @global int $visibleShortcodeAds number of active shortcode ads
|
| 92 |
+
* @global int $ad_count_widget number of active widget ads
|
| 93 |
* @param string $content
|
| 94 |
*
|
| 95 |
* @return string
|
| 98 |
*/
|
| 99 |
|
| 100 |
function quads_process_content($content){
|
| 101 |
+
global $quads_options, $visibleContentAds, $AdsId, $maxWidgets, $maxAds, $AdsWidName, $visibleContentAdsGlobal, $visibleShortcodeAds, $ad_count_widget;
|
| 102 |
|
| 103 |
// Return original content if QUADS is not allowed
|
| 104 |
if ( !quads_ad_is_allowed($content) ) {
|
| 108 |
// Maximum allowed ads
|
| 109 |
$maxAds = isset($quads_options['maxads']) ? $quads_options['maxads'] : 10;
|
| 110 |
|
| 111 |
+
// count active widget ads
|
| 112 |
if (strpos($content,'<!--OffWidget-->')===false) {
|
| 113 |
+
for($i=1;$i<=$maxWidgets;$i++) {
|
| 114 |
$wadsid = sanitize_title(str_replace(array('(',')'),'',sprintf($AdsWidName,$i)));
|
| 115 |
+
//$maxAds -= (is_active_widget('', '', $wadsid)) ? 1 : 0 ;
|
| 116 |
+
$ad_count_widget += (is_active_widget('', '', $wadsid)) ? 1 : 0 ;
|
| 117 |
}
|
| 118 |
}
|
| 119 |
|
| 120 |
+
|
| 121 |
// Return here if max visible ads are exceeded
|
| 122 |
+
if( $visibleContentAds+$visibleShortcodeAds+$ad_count_widget >= $maxAds ) { // ShownAds === 0 or larger/equal than $maxAds
|
| 123 |
$content = quads_clean_tags($content);
|
| 124 |
return $content;
|
| 125 |
};
|
| 126 |
|
| 127 |
// Create array of valid id's
|
| 128 |
if( count( $AdsId ) === 0 ) { //
|
| 129 |
+
for ( $i = 1; $i <= $maxAds; $i++ ) {
|
| 130 |
$tmp = isset($quads_options['ad' . $i]['code']) ? trim( $quads_options['ad' . $i]['code'] ) : '';
|
| 131 |
// id is valid if there is either the plain text field populated or the adsense ad slot and the ad client id
|
| 132 |
if( !empty( $tmp ) || (!empty($quads_options['ad' . $i]['g_data_ad_slot']) && !empty($quads_options['ad' . $i]['g_data_ad_client'] ) ) ) {
|
| 149 |
$content = str_replace("<p></p>", "##QA-TP1##", $content);
|
| 150 |
// Replace all <p> </p> tags with placeholder ##QA-TP2##
|
| 151 |
$content = str_replace("<p> </p>", "##QA-TP2##", $content);
|
| 152 |
+
$off_default_ads = (strpos($content,'<!--OffDef-->')!==false);
|
| 153 |
|
| 154 |
+
if( !$off_default_ads ) { // disabled default positioned ads
|
| 155 |
|
| 156 |
+
$AdsIdCus = array(); // ids of used ads
|
| 157 |
+
|
| 158 |
+
$cusrnd = 'CusRnd'; // placeholder string for random ad
|
| 159 |
+
$cusads = 'CusAds'; // placeholder string for custom ad spots
|
| 160 |
|
| 161 |
$begn1 = isset($quads_options['pos1']['BegnAds']) ? true : false;
|
| 162 |
$begn2 = isset($quads_options['pos1']['BegnRnd']) ? $quads_options['pos1']['BegnRnd'] : 0;
|
| 174 |
$lapa2 = isset($quads_options['pos5']['LapaRnd'])? $quads_options['pos5']['LapaRnd'] : 0 ;
|
| 175 |
|
| 176 |
|
|
|
|
|
|
|
|
|
|
| 177 |
|
| 178 |
+
$number = 3; // number of paragraph ads | default value 3.
|
| 179 |
+
$default = 5; // Position. Let's start with id 5
|
| 180 |
+
for($i=1;$i<=$number;$i++) {
|
| 181 |
+
|
| 182 |
+
$key = $default +$i; // 6,7,8
|
| 183 |
|
| 184 |
+
$paragraph['status'][$i] = isset($quads_options['pos' . $key]['Par'.$i .'Ads']) ? $quads_options['pos' . $key]['Par'.$i .'Ads'] : 0; // Status - active | inactive
|
| 185 |
+
$paragraph['id'][$i] = isset($quads_options['pos' . $key]['Par'.$i .'Rnd']) ? $quads_options['pos' . $key]['Par'.$i .'Rnd'] : 0; // Ad id
|
| 186 |
+
$paragraph['position'][$i] = isset($quads_options['pos' . $key]['Par'.$i .'Nup']) ? $quads_options['pos' . $key]['Par'.$i .'Nup'] : 0; // Paragraph No
|
| 187 |
+
$paragraph['end_post'][$i] = isset($quads_options['pos' . $key]['Par'.$i .'Con']) ? $quads_options['pos' . $key]['Par'.$i .'Con'] : 0; // End of post - yes | no
|
| 188 |
|
| 189 |
}
|
| 190 |
+
// Position 9 Ad after Image
|
| 191 |
$imageActive = isset($quads_options['pos9']['Img1Ads']) ? $quads_options['pos9']['Img1Ads'] : false;
|
| 192 |
$imageAdNo = isset($quads_options['pos9']['Img1Rnd']) ? $quads_options['pos9']['Img1Rnd'] : false;
|
| 193 |
$imageNo = isset($quads_options['pos9']['Img1Nup']) ? $quads_options['pos9']['Img1Nup'] : false;
|
| 200 |
if ( $lapa2 == 0 ) { $g1 = $cusrnd; } else { $g1 = $cusads.$lapa2; array_push($AdsIdCus, $lapa2); };
|
| 201 |
if ( $endi2 == 0 ) { $b2 = $cusrnd; } else { $b2 = $cusads.$endi2; array_push($AdsIdCus, $endi2); };
|
| 202 |
|
| 203 |
+
for($i=1;$i<=$number;$i++) {
|
| 204 |
+
if ( $paragraph['id'][$i] == 0 ) {
|
| 205 |
+
$paragraph[$i] = $cusrnd;
|
| 206 |
} else {
|
| 207 |
+
$paragraph[$i] = $cusads.$paragraph['id'][$i];
|
| 208 |
+
array_push($AdsIdCus, $paragraph['id'][$i]);
|
| 209 |
|
| 210 |
};
|
| 211 |
}
|
| 212 |
|
| 213 |
+
// Create the arguments for filter quads_filter_paragraphs
|
| 214 |
+
$quads_args = array (
|
| 215 |
+
'paragraph' => $paragraph,
|
| 216 |
+
'cusads' => $cusads,
|
| 217 |
+
'cusrnd' => $cusrnd,
|
| 218 |
+
'AdsIdCus' => $AdsIdCus,
|
| 219 |
+
|
| 220 |
+
);
|
| 221 |
+
|
| 222 |
+
// Execute filter to add more paragraph ad spots
|
| 223 |
+
$quads_filtered = apply_filters('quads_filter_paragraphs', $quads_args);
|
| 224 |
+
|
| 225 |
+
// The filtered arguments
|
| 226 |
+
$paragraph = $quads_filtered['paragraph'];
|
| 227 |
+
|
| 228 |
+
// filtered list of ad spots
|
| 229 |
+
$AdsIdCus = $quads_filtered['AdsIdCus'];
|
| 230 |
+
|
| 231 |
+
// Create paragraph ads
|
| 232 |
+
$number = 6;
|
| 233 |
+
//$number = 3;
|
| 234 |
+
for($i=$number;$i>=1;$i--) {
|
| 235 |
+
if ( !empty($paragraph['status'][$i]) ){
|
| 236 |
+
|
| 237 |
+
$sch = "</p>";
|
| 238 |
+
$content = str_replace("</P>", $sch, $content);
|
| 239 |
+
// paragraphs in content
|
| 240 |
+
$paragraphsArray = explode($sch, $content);
|
| 241 |
+
if ( (int)$paragraph['position'][$i] < count($paragraphsArray) ) {
|
| 242 |
+
$content = implode($sch, array_slice($paragraphsArray, 0, $paragraph['position'][$i])).$sch .'<!--'.$paragraph[$i].'-->'. implode($sch, array_slice($paragraphsArray, $paragraph['position'][$i]));
|
| 243 |
+
} elseif ($paragraph['end_post'][$i]) {
|
| 244 |
+
$content = implode($sch, $paragraphsArray).'<!--'.$paragraph[$i].'-->';
|
| 245 |
+
}
|
| 246 |
+
}
|
| 247 |
+
}
|
| 248 |
+
|
| 249 |
+
// Check if image ad is random one
|
| 250 |
if ( $imageAdNo == 0 ) {
|
| 251 |
+
$imageAd = $cusrnd;
|
| 252 |
} else {
|
| 253 |
+
$imageAd = $cusads.$imageAdNo;
|
| 254 |
+
array_push($AdsIdCus, $imageAdNo);
|
| 255 |
};
|
| 256 |
|
| 257 |
// Check if image ad is middle one
|
| 259 |
if( substr_count(strtolower($content), '</p>')>=2 ) {
|
| 260 |
$sch = "</p>";
|
| 261 |
$content = str_replace("</P>", $sch, $content);
|
| 262 |
+
$paragraphsArray = explode($sch, $content);
|
| 263 |
$nn = 0; $mm = strlen($content)/2;
|
| 264 |
+
for($i=0;$i<count($paragraphsArray);$i++) {
|
| 265 |
+
$nn += strlen($paragraphsArray[$i]) + 4;
|
| 266 |
if($nn>$mm) {
|
| 267 |
+
if( ($mm - ($nn - strlen($paragraphsArray[$i]))) > ($nn - $mm) && $i+1<count($paragraphsArray) ) {
|
| 268 |
+
$paragraphsArray[$i+1] = '<!--'.$m1.'-->'.$paragraphsArray[$i+1];
|
| 269 |
} else {
|
| 270 |
+
$paragraphsArray[$i] = '<!--'.$m1.'-->'.$paragraphsArray[$i];
|
| 271 |
}
|
| 272 |
break;
|
| 273 |
}
|
| 274 |
}
|
| 275 |
+
$content = implode($sch, $paragraphsArray);
|
| 276 |
}
|
| 277 |
}
|
| 278 |
|
| 292 |
if( $lapa1 && strpos($content,'<!--OffBfLastPara-->')===false){
|
| 293 |
$sch = "<p>";
|
| 294 |
$content = str_replace("<P>", $sch, $content);
|
| 295 |
+
$paragraphsArray = explode($sch, $content);
|
| 296 |
+
if ( count($paragraphsArray) > 2 ) {
|
| 297 |
+
$content = implode($sch, array_slice($paragraphsArray, 0, count($paragraphsArray)-1)) .'<!--'.$g1.'-->'. $sch. $paragraphsArray[count($paragraphsArray)-1];
|
| 298 |
}
|
| 299 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 300 |
|
| 301 |
if ( $imageActive ){
|
| 302 |
|
| 309 |
$content = str_replace("</A>", $atag, $content);
|
| 310 |
|
| 311 |
// Start
|
| 312 |
+
$paragraphsArray = explode($imgtag, $content);
|
| 313 |
+
if ( (int)$imageNo < count($paragraphsArray) ) {
|
| 314 |
+
$paragraphsArrayImages = explode($delimiter, $paragraphsArray[$imageNo]);
|
| 315 |
+
if ( count($paragraphsArrayImages) > 1 ) {
|
| 316 |
+
$tss = explode($caption, $paragraphsArray[$imageNo]);
|
| 317 |
$ccp = ( count($tss) > 1 ) ? strpos(strtolower($tss[0]),'[caption ')===false : false ;
|
| 318 |
+
$paragraphsArrayAtag = explode($atag, $paragraphsArray[$imageNo]);
|
| 319 |
+
$cdu = ( count($paragraphsArrayAtag) > 1 ) ? strpos(strtolower($paragraphsArrayAtag[0]),'<a href')===false : false ;
|
| 320 |
if ( $imageCaption && $ccp ) {
|
| 321 |
+
$paragraphsArray[$imageNo] = implode($caption, array_slice($tss, 0, 1)).$caption. "\r\n".'<!--'.$imageAd.'-->'."\r\n". implode($caption, array_slice($tss, 1));
|
| 322 |
}else if ( $cdu ) {
|
| 323 |
+
$paragraphsArray[$imageNo] = implode($atag, array_slice($paragraphsArrayAtag, 0, 1)).$atag. "\r\n".'<!--'.$imageAd.'-->'."\r\n". implode($atag, array_slice($paragraphsArrayAtag, 1));
|
| 324 |
}else{
|
| 325 |
+
$paragraphsArray[$imageNo] = implode($delimiter, array_slice($paragraphsArrayImages, 0, 1)).$delimiter. "\r\n".'<!--'.$imageAd.'-->'."\r\n". implode($delimiter, array_slice($paragraphsArrayImages, 1));
|
| 326 |
}
|
| 327 |
}
|
| 328 |
+
$content = implode($imgtag, $paragraphsArray);
|
| 329 |
}
|
| 330 |
}
|
| 331 |
+
} // end disabled default positioned ads
|
| 332 |
|
| 333 |
/*
|
| 334 |
* Tidy up content
|
| 338 |
|
| 339 |
|
| 340 |
/*
|
| 341 |
+
* Replace Beginning/Middle/End/Paragraph Ads1-10
|
| 342 |
*/
|
| 343 |
|
| 344 |
+
if( !$off_default_ads ) { // disabled default ads
|
| 345 |
for( $i=1; $i<=count($AdsIdCus); $i++ ) {
|
| 346 |
|
| 347 |
if( strpos($content,'<!--'.$cusads.$AdsIdCus[$i-1].'-->')!==false && in_array($AdsIdCus[$i-1], $AdsId)) {
|
| 348 |
|
| 349 |
$content = quads_replace_ads( $content, $cusads.$AdsIdCus[$i-1], $AdsIdCus[$i-1] );
|
| 350 |
+
// Comment this to allow the use of the same ad on several ad spots
|
| 351 |
+
//$AdsId = quads_del_element($AdsId, array_search($AdsIdCus[$i-1], $AdsId)) ;
|
| 352 |
$visibleContentAds += 1;
|
| 353 |
|
| 354 |
quads_set_ad_count_content();
|
| 382 |
|
| 383 |
|
| 384 |
|
| 385 |
+
/* ... Replace Beginning/Middle/End random Ads ... */
|
| 386 |
+
if( !$off_default_ads ) {
|
| 387 |
if( strpos($content, '<!--'.$cusrnd.'-->')!==false && is_singular() ) {
|
| 388 |
$tcx = count($AdsId);
|
| 389 |
$tcy = substr_count($content, '<!--'.$cusrnd.'-->');
|
| 492 |
*
|
| 493 |
* @global type $quads_options
|
| 494 |
* @param string $content
|
| 495 |
+
* @param string $quicktag Quicktag
|
| 496 |
* @param string $id id of the ad
|
| 497 |
* @return type
|
| 498 |
*/
|
| 499 |
+
function quads_replace_ads($content, $quicktag, $id) {
|
| 500 |
global $quads_options;
|
| 501 |
|
| 502 |
|
| 503 |
+
if( strpos($content,'<!--'.$quicktag.'-->')===false ) {
|
| 504 |
return $content;
|
| 505 |
}
|
| 506 |
if ($id != -1) {
|
| 507 |
+
$paragraphsArray = array(
|
| 508 |
'float:left;margin:%1$dpx %1$dpx %1$dpx 0;',
|
| 509 |
'float:none;margin:%1$dpx 0 %1$dpx 0;text-align:center;',
|
| 510 |
'float:right;margin:%1$dpx 0 %1$dpx %1$dpx;',
|
| 512 |
|
| 513 |
$adsalign = $quads_options['ad' . $id]['align'];
|
| 514 |
$adsmargin = isset($quads_options['ad' . $id]['margin']) ? $quads_options['ad' . $id]['margin'] : '3'; // default
|
| 515 |
+
$margin = sprintf($paragraphsArray[(int)$adsalign], $adsmargin);
|
| 516 |
|
| 517 |
// Do not create any inline style on AMP site
|
| 518 |
$style = !quads_is_amp_endpoint() ? apply_filters ('quads_filter_margins', $margin, 'ad'.$id ) : '';
|
| 527 |
} else {
|
| 528 |
$adscode ='';
|
| 529 |
}
|
| 530 |
+
$cont = explode('<!--'.$quicktag.'-->', $content, 2);
|
| 531 |
|
| 532 |
return $cont[0].$adscode.$cont[1];
|
| 533 |
}
|
| 535 |
/**
|
| 536 |
* Remove element from array
|
| 537 |
*
|
| 538 |
+
* @param array $paragraphsArrayay
|
| 539 |
* @param int $idx key to remove from array
|
| 540 |
* @return array
|
| 541 |
*/
|
| 542 |
+
function quads_del_element($paragraphsArrayay, $idx) {
|
| 543 |
$copy = array();
|
| 544 |
+
for( $i=0; $i<count($paragraphsArrayay) ;$i++) {
|
| 545 |
if ( $idx != $i ) {
|
| 546 |
+
array_push($copy, $paragraphsArrayay[$i]);
|
| 547 |
}
|
| 548 |
}
|
| 549 |
return $copy;
|
includes/widgets.php
CHANGED
|
@@ -83,7 +83,7 @@ class quads_widgets_1 extends WP_Widget {
|
|
| 83 |
$cont = quads_post_settings_to_quicktags( get_the_content() );
|
| 84 |
if( strpos( $cont, "<!--OffAds-->" ) === false && strpos( $cont, "<!--OffWidget-->" ) === false && quads_ad_is_allowed() && !quads_ad_reach_max_count() ) {
|
| 85 |
|
| 86 |
-
quads_set_ad_count_widget();
|
| 87 |
//$codetxt = $quads_options['ad' . $this->adsID . '_widget'];
|
| 88 |
$code = quads_render_ad( 'ad' . $this->adsID . '_widget', $quads_options['ad' . $this->adsID . '_widget']['code'] );
|
| 89 |
echo "\n" . "<!-- Quick Adsense Reloaded -->" . "\n";
|
|
@@ -128,7 +128,7 @@ class quads_widgets_2 extends WP_Widget {
|
|
| 128 |
$cont = quads_post_settings_to_quicktags( get_the_content() );
|
| 129 |
if( strpos( $cont, "<!--OffAds-->" ) === false && strpos( $cont, "<!--OffWidget-->" ) === false && quads_ad_is_allowed() && !quads_ad_reach_max_count() ) {
|
| 130 |
|
| 131 |
-
quads_set_ad_count_widget();
|
| 132 |
$code = quads_render_ad( 'ad' . $this->adsID . '_widget', $quads_options['ad' . $this->adsID . '_widget']['code'] );
|
| 133 |
echo "\n" . "<!-- Quick Adsense Reloaded -->" . "\n";
|
| 134 |
//if (array_key_exists('before_widget', $args))
|
|
@@ -171,7 +171,7 @@ class quads_widgets_3 extends WP_Widget {
|
|
| 171 |
$cont = quads_post_settings_to_quicktags( get_the_content() );
|
| 172 |
if( strpos( $cont, "<!--OffAds-->" ) === false && strpos( $cont, "<!--OffWidget-->" ) === false && quads_ad_is_allowed() && !quads_ad_reach_max_count() ) {
|
| 173 |
|
| 174 |
-
quads_set_ad_count_widget();
|
| 175 |
$code = quads_render_ad( 'ad' . $this->adsID . '_widget', $quads_options['ad' . $this->adsID . '_widget']['code'] );
|
| 176 |
echo "\n" . "<!-- Quick Adsense Reloaded -->" . "\n";
|
| 177 |
if( array_key_exists( 'before_widget', $args ) )
|
|
@@ -215,7 +215,7 @@ class quads_widgets_4 extends WP_Widget {
|
|
| 215 |
$cont = quads_post_settings_to_quicktags( get_the_content() );
|
| 216 |
if( strpos( $cont, "<!--OffAds-->" ) === false && strpos( $cont, "<!--OffWidget-->" ) === false && quads_ad_is_allowed() && !quads_ad_reach_max_count() ) {
|
| 217 |
|
| 218 |
-
quads_set_ad_count_widget();
|
| 219 |
$code = quads_render_ad( 'ad' . $this->adsID . '_widget', $quads_options['ad' . $this->adsID . '_widget']['code'] );
|
| 220 |
echo "\n" . "<!-- Quick Adsense Reloaded -->" . "\n";
|
| 221 |
if( array_key_exists( 'before_widget', $args ) )
|
|
@@ -259,7 +259,7 @@ class quads_widgets_5 extends WP_Widget {
|
|
| 259 |
$cont = quads_post_settings_to_quicktags( get_the_content() );
|
| 260 |
if( strpos( $cont, "<!--OffAds-->" ) === false && strpos( $cont, "<!--OffWidget-->" ) === false && quads_ad_is_allowed() && !quads_ad_reach_max_count() ) {
|
| 261 |
|
| 262 |
-
quads_set_ad_count_widget();
|
| 263 |
$code = quads_render_ad( 'ad' . $this->adsID . '_widget', $quads_options['ad' . $this->adsID . '_widget']['code'] );
|
| 264 |
echo "\n" . "<!-- Quick Adsense Reloaded -->" . "\n";
|
| 265 |
if( array_key_exists( 'before_widget', $args ) )
|
|
@@ -303,7 +303,7 @@ class quads_widgets_6 extends WP_Widget {
|
|
| 303 |
$cont = quads_post_settings_to_quicktags( get_the_content() );
|
| 304 |
if( strpos( $cont, "<!--OffAds-->" ) === false && strpos( $cont, "<!--OffWidget-->" ) === false && quads_ad_is_allowed() && !quads_ad_reach_max_count() ) {
|
| 305 |
|
| 306 |
-
quads_set_ad_count_widget();
|
| 307 |
$code = quads_render_ad( 'ad' . $this->adsID . '_widget', $quads_options['ad' . $this->adsID . '_widget']['code'] );
|
| 308 |
echo "\n" . "<!-- Quick Adsense Reloaded -->" . "\n";
|
| 309 |
if( array_key_exists( 'before_widget', $args ) )
|
|
@@ -347,7 +347,7 @@ class quads_widgets_7 extends WP_Widget {
|
|
| 347 |
$cont = quads_post_settings_to_quicktags( get_the_content() );
|
| 348 |
if( strpos( $cont, "<!--OffAds-->" ) === false && strpos( $cont, "<!--OffWidget-->" ) === false && quads_ad_is_allowed() && !quads_ad_reach_max_count() ) {
|
| 349 |
|
| 350 |
-
quads_set_ad_count_widget();
|
| 351 |
$code = quads_render_ad( 'ad' . $this->adsID . '_widget', $quads_options['ad' . $this->adsID . '_widget']['code'] );
|
| 352 |
echo "\n" . "<!-- Quick Adsense Reloaded -->" . "\n";
|
| 353 |
if( array_key_exists( 'before_widget', $args ) )
|
|
@@ -391,7 +391,7 @@ class quads_widgets_8 extends WP_Widget {
|
|
| 391 |
$cont = quads_post_settings_to_quicktags( get_the_content() );
|
| 392 |
if( strpos( $cont, "<!--OffAds-->" ) === false && strpos( $cont, "<!--OffWidget-->" ) === false && quads_ad_is_allowed() && !quads_ad_reach_max_count() ) {
|
| 393 |
|
| 394 |
-
quads_set_ad_count_widget();
|
| 395 |
$code = quads_render_ad( 'ad' . $this->adsID . '_widget', $quads_options['ad' . $this->adsID . '_widget']['code'] );
|
| 396 |
echo "\n" . "<!-- Quick Adsense Reloaded -->" . "\n";
|
| 397 |
if( array_key_exists( 'before_widget', $args ) )
|
|
@@ -435,7 +435,7 @@ class quads_widgets_9 extends WP_Widget {
|
|
| 435 |
$cont = quads_post_settings_to_quicktags( get_the_content() );
|
| 436 |
if( strpos( $cont, "<!--OffAds-->" ) === false && strpos( $cont, "<!--OffWidget-->" ) === false && quads_ad_is_allowed() && !quads_ad_reach_max_count() ) {
|
| 437 |
|
| 438 |
-
quads_set_ad_count_widget();
|
| 439 |
$code = quads_render_ad( 'ad' . $this->adsID . '_widget', $quads_options['ad' . $this->adsID . '_widget']['code'] );
|
| 440 |
echo "\n" . "<!-- Quick Adsense Reloaded -->" . "\n";
|
| 441 |
if( array_key_exists( 'before_widget', $args ) )
|
|
@@ -479,7 +479,7 @@ class quads_widgets_10 extends WP_Widget {
|
|
| 479 |
$cont = quads_post_settings_to_quicktags( get_the_content() );
|
| 480 |
if( strpos( $cont, "<!--OffAds-->" ) === false && strpos( $cont, "<!--OffWidget-->" ) === false && quads_ad_is_allowed() && !quads_ad_reach_max_count() ) {
|
| 481 |
|
| 482 |
-
quads_set_ad_count_widget();
|
| 483 |
$code = quads_render_ad( 'ad' . $this->adsID . '_widget', $quads_options['ad' . $this->adsID . '_widget']['code'] );
|
| 484 |
echo "\n" . "<!-- Quick Adsense Reloaded -->" . "\n";
|
| 485 |
if( array_key_exists( 'before_widget', $args ) )
|
| 83 |
$cont = quads_post_settings_to_quicktags( get_the_content() );
|
| 84 |
if( strpos( $cont, "<!--OffAds-->" ) === false && strpos( $cont, "<!--OffWidget-->" ) === false && quads_ad_is_allowed() && !quads_ad_reach_max_count() ) {
|
| 85 |
|
| 86 |
+
//quads_set_ad_count_widget();
|
| 87 |
//$codetxt = $quads_options['ad' . $this->adsID . '_widget'];
|
| 88 |
$code = quads_render_ad( 'ad' . $this->adsID . '_widget', $quads_options['ad' . $this->adsID . '_widget']['code'] );
|
| 89 |
echo "\n" . "<!-- Quick Adsense Reloaded -->" . "\n";
|
| 128 |
$cont = quads_post_settings_to_quicktags( get_the_content() );
|
| 129 |
if( strpos( $cont, "<!--OffAds-->" ) === false && strpos( $cont, "<!--OffWidget-->" ) === false && quads_ad_is_allowed() && !quads_ad_reach_max_count() ) {
|
| 130 |
|
| 131 |
+
//quads_set_ad_count_widget();
|
| 132 |
$code = quads_render_ad( 'ad' . $this->adsID . '_widget', $quads_options['ad' . $this->adsID . '_widget']['code'] );
|
| 133 |
echo "\n" . "<!-- Quick Adsense Reloaded -->" . "\n";
|
| 134 |
//if (array_key_exists('before_widget', $args))
|
| 171 |
$cont = quads_post_settings_to_quicktags( get_the_content() );
|
| 172 |
if( strpos( $cont, "<!--OffAds-->" ) === false && strpos( $cont, "<!--OffWidget-->" ) === false && quads_ad_is_allowed() && !quads_ad_reach_max_count() ) {
|
| 173 |
|
| 174 |
+
//quads_set_ad_count_widget();
|
| 175 |
$code = quads_render_ad( 'ad' . $this->adsID . '_widget', $quads_options['ad' . $this->adsID . '_widget']['code'] );
|
| 176 |
echo "\n" . "<!-- Quick Adsense Reloaded -->" . "\n";
|
| 177 |
if( array_key_exists( 'before_widget', $args ) )
|
| 215 |
$cont = quads_post_settings_to_quicktags( get_the_content() );
|
| 216 |
if( strpos( $cont, "<!--OffAds-->" ) === false && strpos( $cont, "<!--OffWidget-->" ) === false && quads_ad_is_allowed() && !quads_ad_reach_max_count() ) {
|
| 217 |
|
| 218 |
+
//quads_set_ad_count_widget();
|
| 219 |
$code = quads_render_ad( 'ad' . $this->adsID . '_widget', $quads_options['ad' . $this->adsID . '_widget']['code'] );
|
| 220 |
echo "\n" . "<!-- Quick Adsense Reloaded -->" . "\n";
|
| 221 |
if( array_key_exists( 'before_widget', $args ) )
|
| 259 |
$cont = quads_post_settings_to_quicktags( get_the_content() );
|
| 260 |
if( strpos( $cont, "<!--OffAds-->" ) === false && strpos( $cont, "<!--OffWidget-->" ) === false && quads_ad_is_allowed() && !quads_ad_reach_max_count() ) {
|
| 261 |
|
| 262 |
+
//quads_set_ad_count_widget();
|
| 263 |
$code = quads_render_ad( 'ad' . $this->adsID . '_widget', $quads_options['ad' . $this->adsID . '_widget']['code'] );
|
| 264 |
echo "\n" . "<!-- Quick Adsense Reloaded -->" . "\n";
|
| 265 |
if( array_key_exists( 'before_widget', $args ) )
|
| 303 |
$cont = quads_post_settings_to_quicktags( get_the_content() );
|
| 304 |
if( strpos( $cont, "<!--OffAds-->" ) === false && strpos( $cont, "<!--OffWidget-->" ) === false && quads_ad_is_allowed() && !quads_ad_reach_max_count() ) {
|
| 305 |
|
| 306 |
+
//quads_set_ad_count_widget();
|
| 307 |
$code = quads_render_ad( 'ad' . $this->adsID . '_widget', $quads_options['ad' . $this->adsID . '_widget']['code'] );
|
| 308 |
echo "\n" . "<!-- Quick Adsense Reloaded -->" . "\n";
|
| 309 |
if( array_key_exists( 'before_widget', $args ) )
|
| 347 |
$cont = quads_post_settings_to_quicktags( get_the_content() );
|
| 348 |
if( strpos( $cont, "<!--OffAds-->" ) === false && strpos( $cont, "<!--OffWidget-->" ) === false && quads_ad_is_allowed() && !quads_ad_reach_max_count() ) {
|
| 349 |
|
| 350 |
+
//quads_set_ad_count_widget();
|
| 351 |
$code = quads_render_ad( 'ad' . $this->adsID . '_widget', $quads_options['ad' . $this->adsID . '_widget']['code'] );
|
| 352 |
echo "\n" . "<!-- Quick Adsense Reloaded -->" . "\n";
|
| 353 |
if( array_key_exists( 'before_widget', $args ) )
|
| 391 |
$cont = quads_post_settings_to_quicktags( get_the_content() );
|
| 392 |
if( strpos( $cont, "<!--OffAds-->" ) === false && strpos( $cont, "<!--OffWidget-->" ) === false && quads_ad_is_allowed() && !quads_ad_reach_max_count() ) {
|
| 393 |
|
| 394 |
+
//quads_set_ad_count_widget();
|
| 395 |
$code = quads_render_ad( 'ad' . $this->adsID . '_widget', $quads_options['ad' . $this->adsID . '_widget']['code'] );
|
| 396 |
echo "\n" . "<!-- Quick Adsense Reloaded -->" . "\n";
|
| 397 |
if( array_key_exists( 'before_widget', $args ) )
|
| 435 |
$cont = quads_post_settings_to_quicktags( get_the_content() );
|
| 436 |
if( strpos( $cont, "<!--OffAds-->" ) === false && strpos( $cont, "<!--OffWidget-->" ) === false && quads_ad_is_allowed() && !quads_ad_reach_max_count() ) {
|
| 437 |
|
| 438 |
+
//quads_set_ad_count_widget();
|
| 439 |
$code = quads_render_ad( 'ad' . $this->adsID . '_widget', $quads_options['ad' . $this->adsID . '_widget']['code'] );
|
| 440 |
echo "\n" . "<!-- Quick Adsense Reloaded -->" . "\n";
|
| 441 |
if( array_key_exists( 'before_widget', $args ) )
|
| 479 |
$cont = quads_post_settings_to_quicktags( get_the_content() );
|
| 480 |
if( strpos( $cont, "<!--OffAds-->" ) === false && strpos( $cont, "<!--OffWidget-->" ) === false && quads_ad_is_allowed() && !quads_ad_reach_max_count() ) {
|
| 481 |
|
| 482 |
+
//quads_set_ad_count_widget();
|
| 483 |
$code = quads_render_ad( 'ad' . $this->adsID . '_widget', $quads_options['ad' . $this->adsID . '_widget']['code'] );
|
| 484 |
echo "\n" . "<!-- Quick Adsense Reloaded -->" . "\n";
|
| 485 |
if( array_key_exists( 'before_widget', $args ) )
|
quick-adsense-reloaded.php
CHANGED
|
@@ -6,7 +6,7 @@
|
|
| 6 |
* Description: Insert Google AdSense or any Ads code into your website. A fork of Quick AdSense
|
| 7 |
* Author: Rene Hermenau, WP-Staging
|
| 8 |
* Author URI: https://wordpress.org/plugins/quick-adsense-reloaded/
|
| 9 |
-
* Version: 1.4.
|
| 10 |
* Text Domain: quick-adsense-reloaded
|
| 11 |
* Domain Path: languages
|
| 12 |
* Credits: WP QUADS - Quick AdSense Reloaded is a fork of Quick AdSense
|
|
@@ -35,7 +35,7 @@ if( !defined( 'ABSPATH' ) )
|
|
| 35 |
|
| 36 |
// Plugin version
|
| 37 |
if( !defined( 'QUADS_VERSION' ) ) {
|
| 38 |
-
define( 'QUADS_VERSION', '1.4.
|
| 39 |
}
|
| 40 |
|
| 41 |
// Plugin name
|
|
@@ -60,9 +60,10 @@ $visibleContentAdsGlobal = 0; // Number of active ads which are shown in the_con
|
|
| 60 |
$ad_count_custom = 0; // Number of active custom ads which are shown on the site
|
| 61 |
$ad_count_widget = 0; // Number of active ads in widgets
|
| 62 |
$AdsId = array(); // Array of active ad id's
|
| 63 |
-
$
|
| 64 |
-
$
|
| 65 |
-
|
|
|
|
| 66 |
|
| 67 |
|
| 68 |
if( !class_exists( 'QuickAdsenseReloaded' ) ) :
|
|
@@ -188,20 +189,20 @@ if( !class_exists( 'QuickAdsenseReloaded' ) ) :
|
|
| 188 |
|
| 189 |
require_once QUADS_PLUGIN_DIR . 'includes/admin/settings/register-settings.php';
|
| 190 |
$quads_options = quads_get_settings();
|
| 191 |
-
require_once QUADS_PLUGIN_DIR . 'includes/conditionals.php';
|
| 192 |
require_once QUADS_PLUGIN_DIR . 'includes/post_types.php';
|
| 193 |
require_once QUADS_PLUGIN_DIR . 'includes/user_roles.php';
|
|
|
|
| 194 |
require_once QUADS_PLUGIN_DIR . 'includes/template-functions.php';
|
| 195 |
require_once QUADS_PLUGIN_DIR . 'includes/class-quads-license-handler.php';
|
| 196 |
require_once QUADS_PLUGIN_DIR . 'includes/logger.php';
|
| 197 |
require_once QUADS_PLUGIN_DIR . 'includes/class-quads-html-elements.php';
|
| 198 |
-
require_once QUADS_PLUGIN_DIR . 'includes/widgets.php';
|
| 199 |
require_once QUADS_PLUGIN_DIR . 'includes/shortcodes.php';
|
| 200 |
require_once QUADS_PLUGIN_DIR . 'includes/api.php';
|
| 201 |
require_once QUADS_PLUGIN_DIR . 'includes/render-ad-functions.php';
|
| 202 |
require_once QUADS_PLUGIN_DIR . 'includes/scripts.php';
|
| 203 |
require_once QUADS_PLUGIN_DIR . 'includes/automattic-amp-ad.php';
|
| 204 |
require_once QUADS_PLUGIN_DIR . 'includes/helper-functions.php';
|
|
|
|
| 205 |
|
| 206 |
if( is_admin() || ( defined( 'WP_CLI' ) && WP_CLI ) ) {
|
| 207 |
require_once QUADS_PLUGIN_DIR . 'includes/admin/add-ons.php';
|
|
@@ -285,14 +286,7 @@ if( !class_exists( 'QuickAdsenseReloaded' ) ) :
|
|
| 285 |
}
|
| 286 |
QuickAdsenseReloaded::during_activation();
|
| 287 |
}
|
| 288 |
-
|
| 289 |
-
* Deactivation function fires when the plugin is deactivated.
|
| 290 |
-
*/
|
| 291 |
-
public static function deactivation() {
|
| 292 |
-
// Hook to plugin uninstall.
|
| 293 |
-
//register_uninstall_hook( $this, array('Freemius', '_uninstall_plugin_hook') );
|
| 294 |
-
wp_die('uninstall');
|
| 295 |
-
}
|
| 296 |
|
| 297 |
/**
|
| 298 |
* This function is fired from the activation method.
|
|
@@ -348,12 +342,6 @@ if( !class_exists( 'QuickAdsenseReloaded' ) ) :
|
|
| 348 |
* @since 2.0.0
|
| 349 |
* @return object The one true QuickAdsenseReloaded Instance
|
| 350 |
*/
|
| 351 |
-
//function QUADS() {
|
| 352 |
-
// return QuickAdsenseReloaded::instance();
|
| 353 |
-
//}
|
| 354 |
-
//
|
| 355 |
-
//// Get QUADS Running
|
| 356 |
-
//QUADS();
|
| 357 |
|
| 358 |
/**
|
| 359 |
* Populate the $quads global with an instance of the QuickAdsenseReloaded class and return it.
|
|
@@ -383,31 +371,12 @@ add_action( 'plugins_loaded', 'quads_loaded' );
|
|
| 383 |
register_activation_hook( __FILE__, array('QuickAdsenseReloaded', 'activation') );
|
| 384 |
|
| 385 |
|
| 386 |
-
/**
|
| 387 |
-
* The deactivation hook is called outside of the singleton because WordPress doesn't
|
| 388 |
-
* register the call from within the class hence, needs to be called outside and the
|
| 389 |
-
* function also needs to be static.
|
| 390 |
-
*/
|
| 391 |
-
//register_deactivation_hook( __FILE__, array('QuickAdsenseReloaded', 'deactivation') );
|
| 392 |
-
|
| 393 |
-
|
| 394 |
/**
|
| 395 |
* Check if advanced settings are available
|
| 396 |
*
|
| 397 |
* @return boolean
|
| 398 |
*/
|
| 399 |
-
|
| 400 |
-
// include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
|
| 401 |
-
// //$plugin = 'wp-quads-pro/wp-quads-pro.php';
|
| 402 |
-
// $plugin = 'wp-quads-pro.php';
|
| 403 |
-
// //$plugin = plugin_dir_path( __FILE__ ) . basename( __FILE__ );
|
| 404 |
-
//
|
| 405 |
-
// if( is_plugin_active( $plugin ) ) {
|
| 406 |
-
// return true;
|
| 407 |
-
// }
|
| 408 |
-
//
|
| 409 |
-
// return false;
|
| 410 |
-
//}
|
| 411 |
|
| 412 |
function quads_is_advanced(){
|
| 413 |
if ( function_exists( 'quads_is_active_pro' )){
|
| 6 |
* Description: Insert Google AdSense or any Ads code into your website. A fork of Quick AdSense
|
| 7 |
* Author: Rene Hermenau, WP-Staging
|
| 8 |
* Author URI: https://wordpress.org/plugins/quick-adsense-reloaded/
|
| 9 |
+
* Version: 1.4.1
|
| 10 |
* Text Domain: quick-adsense-reloaded
|
| 11 |
* Domain Path: languages
|
| 12 |
* Credits: WP QUADS - Quick AdSense Reloaded is a fork of Quick AdSense
|
| 35 |
|
| 36 |
// Plugin version
|
| 37 |
if( !defined( 'QUADS_VERSION' ) ) {
|
| 38 |
+
define( 'QUADS_VERSION', '1.4.1' );
|
| 39 |
}
|
| 40 |
|
| 41 |
// Plugin name
|
| 60 |
$ad_count_custom = 0; // Number of active custom ads which are shown on the site
|
| 61 |
$ad_count_widget = 0; // Number of active ads in widgets
|
| 62 |
$AdsId = array(); // Array of active ad id's
|
| 63 |
+
$maxWidgets = 10; // number of widgets
|
| 64 |
+
$maxAds = 10; // number of regular ads
|
| 65 |
+
//$AdsWidName = 'AdsWidget%d (WP QUADS)';
|
| 66 |
+
$AdsWidName = 'AdsWidget%d (Quick Adsense Reloaded)';
|
| 67 |
|
| 68 |
|
| 69 |
if( !class_exists( 'QuickAdsenseReloaded' ) ) :
|
| 189 |
|
| 190 |
require_once QUADS_PLUGIN_DIR . 'includes/admin/settings/register-settings.php';
|
| 191 |
$quads_options = quads_get_settings();
|
|
|
|
| 192 |
require_once QUADS_PLUGIN_DIR . 'includes/post_types.php';
|
| 193 |
require_once QUADS_PLUGIN_DIR . 'includes/user_roles.php';
|
| 194 |
+
require_once QUADS_PLUGIN_DIR . 'includes/widgets.php';
|
| 195 |
require_once QUADS_PLUGIN_DIR . 'includes/template-functions.php';
|
| 196 |
require_once QUADS_PLUGIN_DIR . 'includes/class-quads-license-handler.php';
|
| 197 |
require_once QUADS_PLUGIN_DIR . 'includes/logger.php';
|
| 198 |
require_once QUADS_PLUGIN_DIR . 'includes/class-quads-html-elements.php';
|
|
|
|
| 199 |
require_once QUADS_PLUGIN_DIR . 'includes/shortcodes.php';
|
| 200 |
require_once QUADS_PLUGIN_DIR . 'includes/api.php';
|
| 201 |
require_once QUADS_PLUGIN_DIR . 'includes/render-ad-functions.php';
|
| 202 |
require_once QUADS_PLUGIN_DIR . 'includes/scripts.php';
|
| 203 |
require_once QUADS_PLUGIN_DIR . 'includes/automattic-amp-ad.php';
|
| 204 |
require_once QUADS_PLUGIN_DIR . 'includes/helper-functions.php';
|
| 205 |
+
require_once QUADS_PLUGIN_DIR . 'includes/conditionals.php'; // load it at the end to make sure all ads are counted
|
| 206 |
|
| 207 |
if( is_admin() || ( defined( 'WP_CLI' ) && WP_CLI ) ) {
|
| 208 |
require_once QUADS_PLUGIN_DIR . 'includes/admin/add-ons.php';
|
| 286 |
}
|
| 287 |
QuickAdsenseReloaded::during_activation();
|
| 288 |
}
|
| 289 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 290 |
|
| 291 |
/**
|
| 292 |
* This function is fired from the activation method.
|
| 342 |
* @since 2.0.0
|
| 343 |
* @return object The one true QuickAdsenseReloaded Instance
|
| 344 |
*/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 345 |
|
| 346 |
/**
|
| 347 |
* Populate the $quads global with an instance of the QuickAdsenseReloaded class and return it.
|
| 371 |
register_activation_hook( __FILE__, array('QuickAdsenseReloaded', 'activation') );
|
| 372 |
|
| 373 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 374 |
/**
|
| 375 |
* Check if advanced settings are available
|
| 376 |
*
|
| 377 |
* @return boolean
|
| 378 |
*/
|
| 379 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 380 |
|
| 381 |
function quads_is_advanced(){
|
| 382 |
if ( function_exists( 'quads_is_active_pro' )){
|
readme.txt
CHANGED
|
@@ -8,8 +8,8 @@ License: GPLv2 or later
|
|
| 8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
| 9 |
Tags: adsense, ads, ad, google adsense, advertising, amp, ad injection, ad inserter, ad manager
|
| 10 |
Requires at least: 3.6+
|
| 11 |
-
Tested up to: 4.7
|
| 12 |
-
Stable tag: 1.4.
|
| 13 |
|
| 14 |
Quick Adsense Reloaded! Quickest way to insert Google AdSense & other ads into your website. Google AdSense integration with Google AMP support
|
| 15 |
|
|
@@ -130,6 +130,25 @@ Alternative Installation:
|
|
| 130 |
== Changelog ==
|
| 131 |
|
| 132 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 133 |
= 1.4.0 =
|
| 134 |
* New: Add poll when AdSense plugin is deactivated
|
| 135 |
* Fix: Responsive AdSense ads are not working if shortcode [quads] is used
|
| 8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
| 9 |
Tags: adsense, ads, ad, google adsense, advertising, amp, ad injection, ad inserter, ad manager
|
| 10 |
Requires at least: 3.6+
|
| 11 |
+
Tested up to: 4.7.1
|
| 12 |
+
Stable tag: 1.4.1
|
| 13 |
|
| 14 |
Quick Adsense Reloaded! Quickest way to insert Google AdSense & other ads into your website. Google AdSense integration with Google AMP support
|
| 15 |
|
| 130 |
== Changelog ==
|
| 131 |
|
| 132 |
|
| 133 |
+
= 1.4.1 =
|
| 134 |
+
* New: Add filter to add 3 more paragraph AdSense ads placed with WP QUADS PRO
|
| 135 |
+
* New: Support link to troubleshooting guide if AdSense ads are not shown
|
| 136 |
+
* New: Add floating Save Settings button
|
| 137 |
+
* New: Grey out unused AdSense ad spots in general settings
|
| 138 |
+
* New: Tested up to Wordpress 4.7.1
|
| 139 |
+
* New: Use up to 20 maximum AdSense ads on one page
|
| 140 |
+
* New: Allow the use of the same ad on several different ad positions at the same time
|
| 141 |
+
|
| 142 |
+
* Fix: Check if WP QUADS PRO is installed was very slow
|
| 143 |
+
* Fix: AdSense option Hide on device X condition not working width shortcode [quads]
|
| 144 |
+
* Fix: Rewrite admin html and css for a more robust structure to prevent to be overwritten by other plugin devs who think its cool to load their css stuff all over the admin area
|
| 145 |
+
* Fix: Button Open All Ads only works on second click
|
| 146 |
+
* Fix: Hide Sizing Options when ad type is not AdSense
|
| 147 |
+
|
| 148 |
+
* Tweak: Remove deprecated code lines and move relevant functons to api.php
|
| 149 |
+
|
| 150 |
+
|
| 151 |
+
|
| 152 |
= 1.4.0 =
|
| 153 |
* New: Add poll when AdSense plugin is deactivated
|
| 154 |
* Fix: Responsive AdSense ads are not working if shortcode [quads] is used
|
