Schema & Structured Data for WP & AMP - Version 1.9.16.2

Version Description

(29 Nov 2019) =

  • Minor Fixes
Download this release

Release Info

Developer magazine3
Plugin Icon 128x128 Schema & Structured Data for WP & AMP
Version 1.9.16.2
Comparing to
See all releases

Code changes from version 1.9.16.1 to 1.9.16.2

admin_section/css/main-style.css CHANGED
@@ -214,7 +214,7 @@ Tooltip css ends here
214
  float:right;
215
  }
216
  .saswp-settings-first-div{
217
- width: 70%;
218
  }
219
  .saswp-settings-container{
220
  display: inline-flex;
@@ -1017,7 +1017,20 @@ Google review module ends here
1017
 
1018
  .saswp-nav-menu-list label{
1019
  padding-left: 10px;
1020
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
1021
  /*** How to schema css starts here ***/
1022
 
1023
  .saswp-dynamic-properties
214
  float:right;
215
  }
216
  .saswp-settings-first-div{
217
+ width: 92%;
218
  }
219
  .saswp-settings-container{
220
  display: inline-flex;
1017
 
1018
  .saswp-nav-menu-list label{
1019
  padding-left: 10px;
1020
+ }
1021
+
1022
+ /** Coupon Code CSS **/
1023
+ .saswp-hide{
1024
+ display:none;
1025
+ }
1026
+ .saswp-settings-second-div .saswp-upgrade-pro.promo-cpn{
1027
+ display:block;
1028
+ }
1029
+ .saswp-upgrade-pro.promo-cpn{
1030
+ border: 1px solid #558B2F
1031
+ }
1032
+
1033
+
1034
  /*** How to schema css starts here ***/
1035
 
1036
  .saswp-dynamic-properties
admin_section/css/main-style.min.css CHANGED
@@ -1 +1,66 @@
1
- .saswp_warning{color:#ef6c00!important}.saswp_hide{display:none}.saswp-general table th{width:auto;font-weight:600;padding:0}.saswp-general table{margin-top:0}.saswp-general table td{padding:5px}.saswp-knowledge table th{width:auto;padding:0}.saswp-knowledge table{margin-top:0}.saswp-knowledge table td{padding:5px}.saswp-schema table th{width:auto;padding:0}.saswp-schema table{margin-top:0}.saswp-schema table td{padding:5px}.saswp-amp table th{width:auto;padding:0}.saswp-amp table{margin-top:0}.saswp-amp table td{padding:5px}.saswp-help table th{width:auto;padding:0}.saswp-support table th{width:auto;padding:0}.saswp-review table th{width:auto;padding:0}.saswp-help table{margin-top:0}.saswp-help table td{padding:5px}.saswp-settings-list{display:inline-block;width:100%}.saswp-settings-list li{padding-left:0}.saswp-settings-list li div label{font-weight:600}.saswp-general h2{margin-bottom:0}.saswp-knowledge h2{margin-bottom:0}.saswp-schema h2{margin-bottom:0}.saswp-help h2{margin-bottom:0}.saswp-settings-form p.submit{margin-top:0}.saswp_qanda_p{font-weight:500}.saswp-display-none{display:none!important}.saswp-placement-groups{border:1px solid #e5e5e5}.saswp-query-success{color:#060}.saswp-query-error{color:#bf3322}.saswp-tools table th{width:auto;padding:0}.saswp-tools table{margin-top:0}.saswp-tools table td{padding:5px}.saswp-tools-field-title strong{padding-right:130px}.saswp-tools .saswp-tooltip{width:230px}.saswp-tools .saswp-knowledge-label{float:left}.saswp-error{color:red!important}.saswp-tooltip{position:relative;display:inline-block}.saswp-tooltip .saswp-tooltiptext{visibility:hidden;width:200px;background-color:#000;color:#fff;text-align:center;border-radius:6px;padding:5px 0;position:absolute;z-index:1;bottom:100%;left:50%;margin-left:-25px}.saswp-tooltiptext::after{content:"";position:absolute;top:100%;left:10%;margin-left:-5px;border-width:5px;border-style:solid;border-color:#000 transparent transparent transparent}.saswp-knowledge-base .saswp-knowledge-label{width:200px;float:left;clear:both}.saswp-knowledge-base .saswp-knowledge-field{width:75%;float:right}.saswp-social-fileds ul{display:grid;grid-template-columns:26.5% 1fr}.saswp-social-fileds li{display:flex}.saswp-social-fileds .saswp-knowledge-field{width:100%;margin-left:10px}.saswp-social-fileds .saswp-knowledge-field input{float:right;margin:inherit}.saswp-schema-type-fields .saswp-knowledge-label{width:200px;float:left;clear:both}.saswp-schema-type-fields .saswp-knowledge-field{width:75%;float:right}.saswp-settings-first-div{width:70%}.saswp-settings-container{display:inline-flex;width:100%}.saswp-settings-second-div{float:right;position:relative;top:20px;margin-right:30px;margin-top:37px}.saswp-feedback-panel{height:200px;width:280px;background:#fff;position:relative}.saswp-start-quck-setup{position:relative;float:inherit;top:7px;left:15px}.saswp-feedback-panel ul{list-style-type:circle;list-style:decimal;padding-left:30px;font-size:15px}.saswp-feedback-panel a{text-decoration:none}.saswp-feedback-panel h2{text-align:center;padding-top:18px}.saswp-social-sharing-buttons{text-align:center;padding-top:20px}.saswp-facebook-share{background:#3b5998;box-shadow:0 0 0 #1b95e0!important;color:#fff!important;line-height:20px!important;height:21px!important;border-radius:3px;margin-right:5px}.saswp-social-sharing-buttons a{text-align:center;padding:8px}.twitter-share-button{background:#1b95e0!important;box-shadow:0 0 0 #1b95e0!important;color:#fff!important;line-height:20px!important;height:21px!important;border-radius:3px;margin-left:5px}.saswp-placement-button{padding:3px 10px;color:#0d0d0d;font-size:14px;border:1px solid #aaa;border-radius:2px;background:linear-gradient(#ededed,#fff)}.saswp-placement-table td{padding:5px 10px!important}.saswp-archive-div .saswp-knowledge-field{float:right;width:75%;padding-bottom:10px}.saswp-archive-div .saswp-knowledge-label{float:left;clear:both}.saswp-amp .saswp-knowledge-field{float:right;width:75%;padding-bottom:10px}.saswp-amp .saswp-knowledge-label{float:left;clear:both}.saswp-review .saswp-knowledge-field{float:right;width:75%;padding-bottom:10px}.saswp-review .saswp-knowledge-label{float:left;clear:both}.saswp-compativility-div .saswp-knowledge-field{float:right;width:75%;padding-bottom:10px}.saswp-compativility-div .saswp-knowledge-label{float:left;clear:both}.saswp-compativility-div li{display:inline-flex}.saswp-seller-div .saswp-knowledge-label{float:left;clear:both}.saswp-seller-div .saswp-knowledge-field{float:left;width:70%}.saswp-post-specific-tab-wrapper{display:inline-block;width:25%;vertical-align:top;box-sizing:border-box;padding-right:10px}.saswp-post-specific-container{display:inline-block;width:calc(75% - 1px);border-left:1px solid #eee}.saswp-post-specific-wrapper{padding:10px}.saswp-tab a.selected{background-color:#ccc}.saswp-tab-links{display:block;background-color:inherit;color:#000;padding:6px 10px;outline:0;text-align:left;cursor:pointer;transition:.3s;font-size:15px;width:130px;overflow:hidden;margin-right:10px}.saswp-star-rating{cursor:pointer}.saswp-post-specific-wrapper select{width:100%}.saswp-review-tables{width:100%}.saswp-over-all-raring{float:right}.saswp-review-pros-and-cons{position:relative;clear:both}.saswp-review-pros-and-cons>div:first{padding-left:10px}.saswp-review-pros-and-cons>div{width:49%;display:inline-block}.saswp-review-pros-and-cons>div:nth-child(2){padding-left:12px}.saswp-wp-ediot-desc{margin-bottom:-23px;display:block}.saswp-review-description{margin-top:40px;padding-top:10px;border-top:1px solid #eee}.saswp-review-pros-and-cons{margin-top:40px;padding-top:10px;border-top:1px solid #eee}.saspw-review-item-list{margin-top:20px;border-top:1px solid #eee}.saswp-review-item-list-table{padding-bottom:10px}#sasw-review input[type=text]{width:180px}#sasw-review input[type=number]{width:180px}#saswp-review-item-enable{width:10px}.saswp-enable-review-on-post{padding-bottom:10px}.saswp-enable-review-on-post label{font-weight:500}.saswp-compatibility table th{width:auto;padding:0}.saswp-compatibility .saswp-knowledge-label{float:left;clear:both}.saswp-tools .saswp-knowledge-label{float:left;clear:both}.saswp-tools .saswp-knowledge-field{float:right;width:69%;padding-bottom:10px}.saswp_kg_logo,.saswp_person_fields{background-color:#fff!important}.saswp_image_thumbnail{padding-top:5px;display:inline-block}.saswp-compatibility .saswp-knowledge-field{float:right;width:75%;padding-bottom:10px}.saswp-job-posting-note,.saswp-schem-type-note{color:#d2691e}.saswp-custom-fields-name{border:1px solid #aaa;border-radius:4px}.saswp-option-table-class p{margin:auto;font-style:italic;color:#666}.saswp-switch{position:relative;display:inline-block;width:40px;height:22px;border:20px}.saswp-switch input{opacity:0;width:0;height:0}.saswp-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#5a6783;transition:.4s;border-radius:20px}.saswp-slider:before{position:absolute;content:"";height:15px;width:15px;left:4px;bottom:4px;background-color:#fff;transition:.4s;border-radius:20px}input:checked+.saswp-slider{background-color:#61bd3b;border-radius:30px}input:focus+.saswp-slider{box-shadow:0 0 1px #2196f3}input:checked+.saswp-slider:before{transform:translateX(15px)}.saswp-slider.saswp-round{border-radius:34px}.saswp-slider.saswp-round:before{border-radius:50%}.saswp-tab-nav li{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;border-bottom:1px solid #eee}.saswp-tab-nav .selected{background-color:#ccc}.saswp-single-post-restore .saswp-switch{height:28px}.saswp-single-post-restore .saswp-slider:before{height:20px}.option-table-class{width:100%}.option-table-class tr td{padding:10px 10px 10px 10px}.option-table-class tr>td{width:30%}.option-table-class tr td:last-child{width:60%}.saswp-custom-fields-table{width:100%}.saswp-custom-fields-table input{width:100%}.saswp-custom-fields-table tr td{padding:10px 10px 10px 10px}.saswp-custom-fields-table td{width:30%;vertical-align:top}.saswp-option-table-class input[type=text],.saswp-option-table-class select{width:100%}.saswp-paywall-table-class input[type=text],.saswp-paywall-table-class select{width:100%}.saswp-email_schema table th{width:auto;padding:0}.saswp-email_schema .saswp-knowledge-label{float:left;clear:both}.saswp-email_schema .saswp-knowledge-field{float:right;width:75%;padding-bottom:10px}.saswp-add-on-plugin label{margin-top:10px}.saswp-add-on-plugin span{width:250px;display:inline-block}.saswp-knowledge-label label[for=saswp_search_box_schema_checkbox]{padding-left:10px}.saswp-knowledge-label label[for=saswp-woocommerce-booking-checkbox]{padding-left:10px}.saswp-knowledge-label label[for=saswp-woocommerce-membership-checkbox]{padding-left:10px}.saswp-global-selected{color:#000;font-weight:500}#saswp-global-tabs a{cursor:pointer}#saswp-global-tabs{padding-left:5px}#saswp-tools-tabs a{cursor:pointer}#saswp-review-tabs a{cursor:pointer}#saswp-tools-tabs{padding-left:5px}.saswp-need-help{padding-left:60px}.saswp-heading{display:inline-flex;align-items:baseline}.saswp-heading h2{margin-bottom:0}.saswp-view-docs a{margin-right:5px!important;margin-top:10px!important;float:right}.saswp-tabs .nav-tab{margin-left:4px}.saswp-panel{padding:7px 18px;background-color:#fff;box-shadow:0 0 20px 1px #d2cccc}.saswp-g-review-header{margin-top:50px}.saswp-g-review-body{display:inline-grid;grid-template-columns:1fr 300px;grid-gap:30px;margin-top:30px}.saswp-channel-list{margin-right:15px}.saswp-input-fields{display:inline-flex;align-items:center;margin-bottom:8px;width:100%}.saswp-input-fields label{width:130px}.saswp-input-fields select{width:100%}.saswp-panel h3{font-size:20px;line-height:1.4;color:#222;text-align:center;margin:10px 0 20px 0}.saswp-input-fields a.button-primary{margin-top:10px}.saswp-glg-review-body{display:grid;grid-template-columns:100px 1fr;grid-gap:20px;background:#fff;padding:20px;box-shadow:0 0 20px 1px #d2cccc;margin-bottom:30px}.saswp-g-plus{float:right;font-size:15px}.saswp-rtng{padding-left:5px;font-size:14px}.saswp-pt-dt{font-size:12px;color:#999;font-weight:600;margin-top:5px;display:inline-block}.saswp-str{display:inline-block;width:100%;vertical-align:middle}.saswp-athr{font-size:15px;line-height:1.4;color:#000;font-weight:700;display:inline-block;vertical-align:middle}.saswp-str-rtng .saswp-rvw-str{display:inline-block;vertical-align:middle;padding-left:10px;width:auto}.saswp-rv-cnt p{font-size:16px;line-height:1.6;color:#000;margin:10px 0 0 0}.saswp-rv-img img{max-width:100px;border-radius:100%}.saswp-premium_features table th,.saswp-services table th{width:auto;padding:0}.saswp-features-blocks{display:inline-grid;grid-template-columns:1fr 1fr;grid-gap:20px}.saswp-features-blocks li{background:#fff;padding:25px;border:1px solid #d8d8d8}.saswp-features-blocks li a{text-decoration:none}.saswp-ele-ic{border-radius:256px;display:inline-block;padding:8px 10px 8px 10px;width:70px;margin-right:20px;height:70px;float:left}.saswp-ele-ic img{width:80%;left:10%;position:relative;top:9%}.saswp-ele-1{background:#96588a}.saswp-ele-2{background:#00a97e}.saswp-ele-3{background:#cacaca}.saswp-ele-4{background:#9c56cc}.saswp-ele-tlt h3{margin:0;font-size:18px;line-height:1.4}.saswp-ele-tlt p{margin-top:10px}.saswp-sts-btn{box-sizing:border-box;height:52px;margin-top:20px;padding:6px 15px;border:1px solid #e5e5e5;border-radius:3px;display:flex;align-items:center;justify-content:space-between}.saswp-d-btn{background:#d2150a;padding:6px 18px;border-radius:30px;font-size:14px;color:#fff}.form-wrap .saswp-sts-txt{font-size:16px;color:#000}.saswp-sts-txt span{color:#bebfc0;padding-left:5px}.saswp_review_platform .saswp-g-plus{float:left}.saswp-pc-wrap{background-color:#004f74;padding:15px 15px 15px 30px;color:#fff;display:inline-flex;width:100%;flex-wrap:wrap;margin-bottom:20px}.saswp-pc-wrap .saswp-lst span{font-size:18px;font-weight:500;margin-bottom:10px;display:inline-block;line-height:1.3}.saswp-pc-wrap .saswp-lst{flex:1 0 42%}.saswp-pc-wrap .saswp-lst ul{margin:0}.saswp-pc-wrap .saswp-lst p{list-style-type:none;font-size:15px;font-weight:lighter;line-height:1.2;margin-bottom:10px;position:relative;padding-left:20px;color:#eee}.saswp-pc-wrap .saswp-lst p:before{content:'';position:absolute;width:8px;height:8px;background-color:#ccc;left:0;top:6px;border-radius:10px}.sgl .saswp-rvw{width:100%;margin-bottom:34px;font-size:13px;border-bottom:1px solid #ededed}.saswp-rvw-hd span,.saswp-rvw-sm span{background-color:#222;color:#fff;display:inline-block;font-size:15px}.saswp-rvw-hd span{line-height:1.4;padding:8px 12px 6px;margin:26px 0}.saswp-rvw td{padding:7px 14px}.saswp-rvw td,.sgl table td{border:1px solid #ededed}.saswp-rvw tbody{width:100%}.saswp-rvw-sm span{padding:8px 12px 6px;margin-bottom:13px;position:relative;line-height:1.2}.saswp-rvw-fs{line-height:1.5;font-size:48px;font-weight:600;margin-bottom:5px}.saswp-rvw-ov .ovs{font-size:11px;font-weight:600}.sgl .saswp-rvw tr td{background:#fff;width:100%}.sgl .saswp-rvw tr:hover td{background-color:#fcfcfc}.saswp-rvw .saswp-rvw-sm{padding:21px 14px}.str-ic{font-size:18px;line-height:1.2}.saswp-rvw-str{display:inline-flex;width:100%}.saswp-rvw-str .df-clr,.saswp-rvw-str .half-str,.saswp-rvw-str .str-ic{display:inline-block;width:20px;height:16px;background-repeat:no-repeat}.saswp-rvw-ov{text-align:center}.saswp-rvw-str .half-str{background-image:url(data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTkuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeD0iMHB4IiB5PSIwcHgiIHZpZXdCb3g9IjAgMCA0ODIuMjA3IDQ4Mi4yMDciIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDQ4Mi4yMDcgNDgyLjIwNzsiIHhtbDpzcGFjZT0icHJlc2VydmUiIHdpZHRoPSIxNnB4IiBoZWlnaHQ9IjE2cHgiPgo8cGF0aCBkPSJNNDgyLjIwNywxODYuOTczbC0xNTkuNjk5LTMzLjcwNUwyNDEuMTA0LDExLjgwM2wtODEuNDA0LDE0MS40NjVMMCwxODYuOTczbDEwOS4zODgsMTIxLjEzNEw5Mi4wOTQsNDcwLjQwNGwxNDkuMDEtNjYuNiAgbDE0OS4wMSw2Ni42bC0xNy4yOTQtMTYyLjI5Nkw0ODIuMjA3LDE4Ni45NzN6IE0yNDEuMTA0LDM3MC45NDNWNzEuOTUzbDYyLjA5LDEwNy45TDQyNSwyMDUuNTYxbC04My40MzMsOTIuMzkzbDEzLjE5MSwxMjMuNzg4ICBMMjQxLjEwNCwzNzAuOTQzeiIgZmlsbD0iI2ZmZDcwMCIvPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8L3N2Zz4K)}.saswp-rvw-str .str-ic{background-image:url(data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTkuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeD0iMHB4IiB5PSIwcHgiIHZpZXdCb3g9IjAgMCA0ODIuMjA3IDQ4Mi4yMDciIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDQ4Mi4yMDcgNDgyLjIwNzsiIHhtbDpzcGFjZT0icHJlc2VydmUiIHdpZHRoPSIxNnB4IiBoZWlnaHQ9IjE2cHgiPgo8cG9seWdvbiBwb2ludHM9IjQ4Mi4yMDcsMTg2Ljk3MyAzMjIuNTA4LDE1My4yNjkgMjQxLjEwNCwxMS44MDMgMTU5LjY5OSwxNTMuMjY5IDAsMTg2Ljk3MyAxMDkuMzg4LDMwOC4xMDggOTIuMDk0LDQ3MC40MDQgICAyNDEuMTA0LDQwMy44MDMgMzkwLjExMyw0NzAuNDA0IDM3Mi44MTgsMzA4LjEwOCAiIGZpbGw9IiNmZmQ3MDAiLz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPC9zdmc+Cg==)}.saswp-rvw-str .df-clr{background-image:url(data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTkuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeD0iMHB4IiB5PSIwcHgiIHZpZXdCb3g9IjAgMCA0ODIuMjA3IDQ4Mi4yMDciIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDQ4Mi4yMDcgNDgyLjIwNzsiIHhtbDpzcGFjZT0icHJlc2VydmUiIHdpZHRoPSIxNnB4IiBoZWlnaHQ9IjE2cHgiPgo8cG9seWdvbiBwb2ludHM9IjQ4Mi4yMDcsMTg2Ljk3MyAzMjIuNTA4LDE1My4yNjkgMjQxLjEwNCwxMS44MDMgMTU5LjY5OSwxNTMuMjY5IDAsMTg2Ljk3MyAxMDkuMzg4LDMwOC4xMDggOTIuMDk0LDQ3MC40MDQgICAyNDEuMTA0LDQwMy44MDMgMzkwLjExMyw0NzAuNDA0IDM3Mi44MTgsMzA4LjEwOCAiIGZpbGw9IiM2MzVlNjMiLz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPC9zdmc+Cg==)}.saswp-g-review-header{margin-top:50px}.saswp-g-review-body{display:inline-grid;grid-template-columns:1fr 300px;grid-gap:30px;margin-top:30px;width:100%}.saswp-channel-list{margin-right:15px}.saswp-input-fields{display:inline-flex;align-items:center;margin-bottom:8px;width:100%}.saswp-input-fields label{width:130px}.saswp-panel h3{font-size:20px;line-height:1.4;color:#222;text-align:center;margin:10px 0 20px 0}.saswp-input-fields a.button-primary{margin-top:10px}.saswp-glg-review-body{display:grid;grid-template-columns:100px 1fr;grid-gap:20px;background:#fff;padding:20px;box-shadow:0 0 20px 1px #d2cccc;margin-bottom:30px}.saswp-g-plus{float:right;font-size:15px;width:20px;height:20px}.saswp-g-plus img{max-width:100%}.saswp-rtng{padding-left:5px;font-size:14px}.saswp-pt-dt{font-size:12px;color:#999;font-weight:600;margin-top:5px;display:inline-block}.saswp-athr{font-size:15px;line-height:1.4;color:#000;font-weight:700}.saswp-rv-cnt p{font-size:16px;line-height:1.6;color:#000;margin:10px 0 0 0}.saswp-rv-img img{max-width:100px}.saswp-g-review-header div{margin-top:10px}.saswp-upgrade-pro{background:#fff;padding:25px;border:1px solid #d8d8d8;display:inline-block;margin-top:10px;width:81%}.saswp-upgrade-pro h2{font-size:20px;margin:0;color:#23282d;font-weight:600;text-align:center}.saswp-upgrade-pro ul{margin:25px 0 20px 0;display:inline-block}.saswp-upgrade-pro ul li{position:relative;padding-left:30px;font-size:14px;line-height:1.4;margin-bottom:10px}.saswp-upgrade-pro ul li:before{content:"";background-image:url(../images/check.png);background-repeat:no-repeat;background-size:20px;width:20px;height:20px;position:absolute;left:2px;top:2px}.saswp-upgrade-pro a{background:#d2150a;padding:10px 0;display:block;text-align:center;color:#fff;text-decoration:none;font-size:16px;font-weight:600;letter-spacing:1px;border-radius:5px}.saswp_image_prev{max-width:200px;max-height:200px;float:left;padding-left:2px}.saswp_prev_close{position:relative;width:30px;height:30px;top:12px;font-size:20px;top:-5px;text-decoration:none}.saswp-add-custom-schema-div{margin-top:10px;border-top:1px solid #eee;padding-top:5px}.saswp-nav-menu-list label{padding-left:10px}.saswp-dynamic-properties{border:1px solid #aaa;margin-top:5px;margin-bottom:5px}.saswp-table-close{float:right;cursor:pointer}.saswp-table-create-onajax table td,.saswp-table-create-onajax table th{padding:5px}.saswp-table-create-onajax select{width:98%}.saswp-g-reviews-settings-table input{width:100%}.saswp-s-reviews-settings-table input{width:100%}.saswp_rv_module_pro_notice{border:1px solid #d8d8d8;background:#fff}.saswp-settings-list .saswp-rev-mod{width:100%;display:inline-block;margin-top:20px}.saswp-rev-mod .saswp-knowledge-label{width:100%;display:inline-block;padding:10px 16px;font-weight:600;font-size:16px;color:#333;background:#f9f9f9;border:1px solid #d8d8d8;border-bottom:none;box-sizing:border-box}.saswp-rev-mod .saswp-knowledge-field{width:100%;display:inline-block}.saswp-rev-mod .saswp_rv_module_pro_notice{padding:20px}.saswp_cmpny_lst{width:100%;display:inline-block;margin-top:30px}.saswp_rv_module_pro_notice ul{margin:15px 0 20px 0;width:100%;display:inline-grid;grid-template-columns:1fr 1fr 1fr;grid-gap:20px;border-bottom:1px solid #eee;padding-bottom:20px}.saswp_rv_module_pro_notice ul li{position:relative;font-size:15px;line-height:1.5;color:#444;margin:0}.saswp_rv_module_pro_notice ul li span{padding-left:3px}.saswp_rv_module_pro_notice h2{text-align:center;font-size:31px}.saswp_rv_module_pro_notice .saswp_desc{text-align:center;font-size:18px;font-style:normal;color:#000}.saswp_rv_module_pro_notice .saswp_desc a{font-style:italic}.saswp_rv_module_pro_notice .saswp_lst{color:grey;font-family:georgia;font-style:italic;font-style:italic;font-size:15px;font-weight:600}.saswp_rv_module_pro_notice .saswp_avlbl{color:#2a902e;font-family:georgia;font-style:italic;font-size:15px;font-weight:600}.saswp_rv_module_pro_notice ul li img{width:20px;height:20px;position:relative;top:4px}.saswp-rev-btn{width:100%;display:inline-block;margin-top:20px;text-align:center}.saswp-rev-btn span{display:block;font-size:13px;margin-bottom:15px}.saswp-rev-btn a{padding:12px 18px;display:inline-block;text-decoration:none;border-radius:5px;background:#0085ba;color:#fff;font-weight:600;font-size:18px}.select2-container{width:100%!important}.saswp-schema-modify-section{margin-top:15px;border-top:1px solid #eee;padding-top:15px}.saswp-custom-meta-list{border:1px solid #aaa;border-radius:4px}.saswp-custom-fields-table tr td:nth-child(3n+3) input{border:1px solid #aaa;border-radius:4px}.updated.notice p{display:flex;width:100%;align-items:center}.updated.notice .dashicons-thumbs-up{margin-right:10px}a.saswp-feedback-no-thanks,a.saswp-feedback-remindme{display:inline-block;cursor:pointer}.saswp-feedback-remindme:after{content:",";display:inline-block;margin-right:5px;padding-left:5px}a.saswp-revws-lnk{display:inline-block;background:#0085ba;padding:12px 20px;color:#fff;text-decoration:none;border-radius:3px;margin-left:20px;font-size:14px;line-height:.6}.saswp-update-notice-btns{display:inline-block;width:100%;margin-bottom:5px}.saswp-about-contact-page{width:75%;float:right}.saswp-about-contact-page-tooltip{float:left;clear:both}.saswp-quick-setup{float:left}.saswp_add_schema_fields_on_fly{margin-bottom:5px!important}.saswp-custom-fields-table .saswp_image_prev{max-width:62px!important}.saswp-custom-fields-table .saswp_prev_close{font-size:15px}.saswp-review-content-table td:nth-child(2){width:50%;float:left}.saswp-review-content-table input{width:100%}.saswp-review-content-table select{width:100%}.saswp-review-content-table textarea{width:100%}.saswp-social-links-table{width:100%}.saswp-social-links-table input{width:100%}.saswp-add-social-links{margin:3px!important}.saswp-social-links-table td{padding-left:0!important}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .saswp_warning{color:#ef6c00!important}.saswp_hide{display:none}.saswp-general table th{width:auto;font-weight:600;padding:0}.saswp-general table{margin-top:0}.saswp-general table td{padding:5px}.saswp-knowledge table th{width:auto;padding:0}.saswp-knowledge table{margin-top:0}.saswp-knowledge table td{padding:5px}.saswp-schema table th{width:auto;padding:0}.saswp-schema table{margin-top:0}.saswp-schema table td{padding:5px}.saswp-amp table th{width:auto;padding:0}.saswp-amp table{margin-top:0}.saswp-amp table td{padding:5px}.saswp-help table th{width:auto;padding:0}.saswp-support table th{width:auto;padding:0}.saswp-review table th{width:auto;padding:0}.saswp-help table{margin-top:0}.saswp-help table td{padding:5px}.saswp-settings-list{display:inline-block;width:100%}.saswp-settings-list li{padding-left:0}.saswp-settings-list li div label{font-weight:600}.saswp-general h2{margin-bottom:0}.saswp-knowledge h2{margin-bottom:0}.saswp-schema h2{margin-bottom:0}.saswp-help h2{margin-bottom:0}.saswp-settings-form p.submit{margin-top:0}.saswp_qanda_p{font-weight:500}.saswp-display-none{display:none!important}.saswp-placement-groups{border:1px solid #e5e5e5}.saswp-query-success{color:#060}.saswp-query-error{color:#bf3322}.saswp-tools table th{width:auto;padding:0}.saswp-tools table{margin-top:0}.saswp-tools table td{padding:5px}.saswp-tools-field-title strong{padding-right:130px}.saswp-tools .saswp-tooltip{width:230px}.saswp-tools .saswp-knowledge-label{float:left}.saswp-error{color:red!important}.saswp-tooltip{position:relative;display:inline-block}.saswp-tooltip .saswp-tooltiptext{visibility:hidden;width:200px;background-color:#000;color:#fff;text-align:center;border-radius:6px;padding:5px 0;position:absolute;z-index:1;bottom:100%;left:50%;margin-left:-25px}.saswp-tooltiptext::after{content:"";position:absolute;top:100%;left:10%;margin-left:-5px;border-width:5px;border-style:solid;border-color:#000 transparent transparent transparent}.saswp-knowledge-base .saswp-knowledge-label{width:200px;float:left;clear:both}.saswp-knowledge-base .saswp-knowledge-field{width:75%;float:right}.saswp-social-fileds ul{display:grid;grid-template-columns:26.5% 1fr}.saswp-social-fileds li{display:flex}.saswp-social-fileds .saswp-knowledge-field{width:100%;margin-left:10px}.saswp-social-fileds .saswp-knowledge-field input{float:right;margin:inherit}.saswp-schema-type-fields .saswp-knowledge-label{width:200px;float:left;clear:both}.saswp-schema-type-fields .saswp-knowledge-field{width:75%;float:right}.saswp-settings-first-div{width:92%}.saswp-settings-container{display:inline-flex;width:100%}.saswp-settings-second-div{float:right;position:relative;top:20px;margin-right:30px;margin-top:37px}.saswp-feedback-panel{height:200px;width:280px;background:#fff;position:relative}.saswp-start-quck-setup{position:relative;float:inherit;top:7px;left:15px}.saswp-feedback-panel ul{list-style-type:circle;list-style:decimal;padding-left:30px;font-size:15px}.saswp-feedback-panel a{text-decoration:none}.saswp-feedback-panel h2{text-align:center;padding-top:18px}.saswp-social-sharing-buttons{text-align:center;padding-top:20px}.saswp-facebook-share{background:#3b5998;box-shadow:0 0 0 #1b95e0!important;color:#fff!important;line-height:20px!important;height:21px!important;border-radius:3px;margin-right:5px}.saswp-social-sharing-buttons a{text-align:center;padding:8px}.twitter-share-button{background:#1b95e0!important;box-shadow:0 0 0 #1b95e0!important;color:#fff!important;line-height:20px!important;height:21px!important;border-radius:3px;margin-left:5px}.saswp-placement-button{padding:3px 10px;color:#0d0d0d;font-size:14px;border:1px solid #aaa;border-radius:2px;background:linear-gradient(#ededed,#fff)}.saswp-placement-table td{padding:5px 10px!important}.saswp-archive-div .saswp-knowledge-field{float:right;width:75%;padding-bottom:10px}.saswp-archive-div .saswp-knowledge-label{float:left;clear:both}.saswp-amp .saswp-knowledge-field{float:right;width:75%;padding-bottom:10px}.saswp-amp .saswp-knowledge-label{float:left;clear:both}.saswp-review .saswp-knowledge-field{float:right;width:75%;padding-bottom:10px}.saswp-review .saswp-knowledge-label{float:left;clear:both}.saswp-compativility-div .saswp-knowledge-field{float:right;width:75%;padding-bottom:10px}.saswp-compativility-div .saswp-knowledge-label{float:left;clear:both}.saswp-compativility-div li{display:inline-flex}.saswp-seller-div .saswp-knowledge-label{float:left;clear:both}.saswp-seller-div .saswp-knowledge-field{float:left;width:70%}.saswp-post-specific-tab-wrapper{display:inline-block;width:25%;vertical-align:top;box-sizing:border-box;padding-right:10px}.saswp-post-specific-container{display:inline-block;width:calc(75% - 1px);border-left:1px solid #eee}.saswp-post-specific-wrapper{padding:10px}.saswp-tab a.selected{background-color:#ccc}.saswp-tab-links{display:block;background-color:inherit;color:#000;padding:6px 10px;outline:0;text-align:left;cursor:pointer;transition:.3s;font-size:15px;width:130px;overflow:hidden;margin-right:10px}.saswp-star-rating{cursor:pointer}.saswp-post-specific-wrapper select{width:100%}.saswp-review-tables{width:100%}.saswp-over-all-raring{float:right}.saswp-review-pros-and-cons{position:relative;clear:both}.saswp-review-pros-and-cons>div:first{padding-left:10px}.saswp-review-pros-and-cons>div{width:49%;display:inline-block}.saswp-review-pros-and-cons>div:nth-child(2){padding-left:12px}.saswp-wp-ediot-desc{margin-bottom:-23px;display:block}.saswp-review-description{margin-top:40px;padding-top:10px;border-top:1px solid #eee}.saswp-review-pros-and-cons{margin-top:40px;padding-top:10px;border-top:1px solid #eee}.saspw-review-item-list{margin-top:20px;border-top:1px solid #eee}.saswp-review-item-list-table{padding-bottom:10px}#sasw-review input[type=text]{width:180px}#sasw-review input[type=number]{width:180px}#saswp-review-item-enable{width:10px}.saswp-enable-review-on-post{padding-bottom:10px}.saswp-enable-review-on-post label{font-weight:500}.saswp-compatibility table th{width:auto;padding:0}.saswp-compatibility .saswp-knowledge-label{float:left;clear:both}.saswp-tools .saswp-knowledge-label{float:left;clear:both}.saswp-tools .saswp-knowledge-field{float:right;width:69%;padding-bottom:10px}.saswp_kg_logo,.saswp_person_fields{background-color:#fff!important}.saswp_image_thumbnail{padding-top:5px;display:inline-block}.saswp-compatibility .saswp-knowledge-field{float:right;width:75%;padding-bottom:10px}.saswp-job-posting-note,.saswp-schem-type-note{color:#d2691e}.saswp-custom-fields-name{border:1px solid #aaa;border-radius:4px}.saswp-option-table-class p{margin:auto;font-style:italic;color:#666}.saswp-switch{position:relative;display:inline-block;width:40px;height:22px;border:20px}.saswp-switch input{opacity:0;width:0;height:0}.saswp-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#5a6783;transition:.4s;border-radius:20px}.saswp-slider:before{position:absolute;content:"";height:15px;width:15px;left:4px;bottom:4px;background-color:#fff;transition:.4s;border-radius:20px}input:checked+.saswp-slider{background-color:#61bd3b;border-radius:30px}input:focus+.saswp-slider{box-shadow:0 0 1px #2196f3}input:checked+.saswp-slider:before{transform:translateX(15px)}.saswp-slider.saswp-round{border-radius:34px}.saswp-slider.saswp-round:before{border-radius:50%}.saswp-tab-nav li{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;border-bottom:1px solid #eee}.saswp-tab-nav .selected{background-color:#ccc}.saswp-single-post-restore .saswp-switch{height:28px}.saswp-single-post-restore .saswp-slider:before{height:20px}.option-table-class{width:100%}.option-table-class tr td{padding:10px 10px 10px 10px}.option-table-class tr>td{width:30%}.option-table-class tr td:last-child{width:60%}.saswp-custom-fields-table{width:100%}.saswp-custom-fields-table input{width:100%}.saswp-custom-fields-table tr td{padding:10px 10px 10px 10px}.saswp-custom-fields-table td{width:30%;vertical-align:top}.saswp-option-table-class input[type=text],.saswp-option-table-class select{width:100%}.saswp-paywall-table-class input[type=text],.saswp-paywall-table-class select{width:100%}.saswp-email_schema table th{width:auto;padding:0}.saswp-email_schema .saswp-knowledge-label{float:left;clear:both}.saswp-email_schema .saswp-knowledge-field{float:right;width:75%;padding-bottom:10px}.saswp-add-on-plugin label{margin-top:10px}.saswp-add-on-plugin span{width:250px;display:inline-block}.saswp-knowledge-label label[for=saswp_search_box_schema_checkbox]{padding-left:10px}.saswp-knowledge-label label[for=saswp-woocommerce-booking-checkbox]{padding-left:10px}.saswp-knowledge-label label[for=saswp-woocommerce-membership-checkbox]{padding-left:10px}.saswp-global-selected{color:#000;font-weight:500}#saswp-global-tabs a{cursor:pointer}#saswp-global-tabs{padding-left:5px}#saswp-tools-tabs a{cursor:pointer}#saswp-review-tabs a{cursor:pointer}#saswp-tools-tabs{padding-left:5px}.saswp-need-help{padding-left:60px}.saswp-heading{display:inline-flex;align-items:baseline}.saswp-heading h2{margin-bottom:0}.saswp-view-docs a{margin-right:5px!important;margin-top:10px!important;float:right}.saswp-tabs .nav-tab{margin-left:4px}.saswp-panel{padding:7px 18px;background-color:#fff;box-shadow:0 0 20px 1px #d2cccc}.saswp-g-review-header{margin-top:50px}.saswp-g-review-body{display:inline-grid;grid-template-columns:1fr 300px;grid-gap:30px;margin-top:30px}.saswp-channel-list{margin-right:15px}.saswp-input-fields{display:inline-flex;align-items:center;margin-bottom:8px;width:100%}.saswp-input-fields label{width:130px}.saswp-input-fields select{width:100%}.saswp-panel h3{font-size:20px;line-height:1.4;color:#222;text-align:center;margin:10px 0 20px 0}.saswp-input-fields a.button-primary{margin-top:10px}.saswp-glg-review-body{display:grid;grid-template-columns:100px 1fr;grid-gap:20px;background:#fff;padding:20px;box-shadow:0 0 20px 1px #d2cccc;margin-bottom:30px}.saswp-g-plus{float:right;font-size:15px}.saswp-rtng{padding-left:5px;font-size:14px}.saswp-pt-dt{font-size:12px;color:#999;font-weight:600;margin-top:5px;display:inline-block}.saswp-str{display:inline-block;width:100%;vertical-align:middle}.saswp-athr{font-size:15px;line-height:1.4;color:#000;font-weight:700;display:inline-block;vertical-align:middle}.saswp-str-rtng .saswp-rvw-str{display:inline-block;vertical-align:middle;padding-left:10px;width:auto}.saswp-rv-cnt p{font-size:16px;line-height:1.6;color:#000;margin:10px 0 0 0}.saswp-rv-img img{max-width:100px;border-radius:100%}.saswp-premium_features table th,.saswp-services table th{width:auto;padding:0}.saswp-features-blocks{display:inline-grid;grid-template-columns:1fr 1fr;grid-gap:20px}.saswp-features-blocks li{background:#fff;padding:25px;border:1px solid #d8d8d8}.saswp-features-blocks li a{text-decoration:none}.saswp-ele-ic{border-radius:256px;display:inline-block;padding:8px 10px 8px 10px;width:70px;margin-right:20px;height:70px;float:left}.saswp-ele-ic img{width:80%;left:10%;position:relative;top:9%}.saswp-ele-1{background:#96588a}.saswp-ele-2{background:#00a97e}.saswp-ele-3{background:#cacaca}.saswp-ele-4{background:#9c56cc}.saswp-ele-tlt h3{margin:0;font-size:18px;line-height:1.4}.saswp-ele-tlt p{margin-top:10px}.saswp-sts-btn{box-sizing:border-box;height:52px;margin-top:20px;padding:6px 15px;border:1px solid #e5e5e5;border-radius:3px;display:flex;align-items:center;justify-content:space-between}.saswp-d-btn{background:#d2150a;padding:6px 18px;border-radius:30px;font-size:14px;color:#fff}.form-wrap .saswp-sts-txt{font-size:16px;color:#000}.saswp-sts-txt span{color:#bebfc0;padding-left:5px}.saswp_review_platform .saswp-g-plus{float:left}.saswp-pc-wrap{background-color:#004f74;padding:15px 15px 15px 30px;color:#fff;display:inline-flex;width:100%;flex-wrap:wrap;margin-bottom:20px}.saswp-pc-wrap .saswp-lst span{font-size:18px;font-weight:500;margin-bottom:10px;display:inline-block;line-height:1.3}.saswp-pc-wrap .saswp-lst{flex:1 0 42%}.saswp-pc-wrap .saswp-lst ul{margin:0}.saswp-pc-wrap .saswp-lst p{list-style-type:none;font-size:15px;font-weight:lighter;line-height:1.2;margin-bottom:10px;position:relative;padding-left:20px;color:#eee}.saswp-pc-wrap .saswp-lst p:before{content:'';position:absolute;width:8px;height:8px;background-color:#ccc;left:0;top:6px;border-radius:10px}.sgl .saswp-rvw{width:100%;margin-bottom:34px;font-size:13px;border-bottom:1px solid #ededed}.saswp-rvw-hd span,.saswp-rvw-sm span{background-color:#222;color:#fff;display:inline-block;font-size:15px}.saswp-rvw-hd span{line-height:1.4;padding:8px 12px 6px;margin:26px 0}.saswp-rvw td{padding:7px 14px}.saswp-rvw td,.sgl table td{border:1px solid #ededed}.saswp-rvw tbody{width:100%}.saswp-rvw-sm span{padding:8px 12px 6px;margin-bottom:13px;position:relative;line-height:1.2}.saswp-rvw-fs{line-height:1.5;font-size:48px;font-weight:600;margin-bottom:5px}.saswp-rvw-ov .ovs{font-size:11px;font-weight:600}.sgl .saswp-rvw tr td{background:#fff;width:100%}.sgl .saswp-rvw tr:hover td{background-color:#fcfcfc}.saswp-rvw .saswp-rvw-sm{padding:21px 14px}.str-ic{font-size:18px;line-height:1.2}.saswp-rvw-str{display:inline-flex;width:100%}.saswp-rvw-str .df-clr,.saswp-rvw-str .half-str,.saswp-rvw-str .str-ic{display:inline-block;width:20px;height:16px;background-repeat:no-repeat}.saswp-rvw-ov{text-align:center}.saswp-rvw-str .half-str{background-image:url(data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTkuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeD0iMHB4IiB5PSIwcHgiIHZpZXdCb3g9IjAgMCA0ODIuMjA3IDQ4Mi4yMDciIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDQ4Mi4yMDcgNDgyLjIwNzsiIHhtbDpzcGFjZT0icHJlc2VydmUiIHdpZHRoPSIxNnB4IiBoZWlnaHQ9IjE2cHgiPgo8cGF0aCBkPSJNNDgyLjIwNywxODYuOTczbC0xNTkuNjk5LTMzLjcwNUwyNDEuMTA0LDExLjgwM2wtODEuNDA0LDE0MS40NjVMMCwxODYuOTczbDEwOS4zODgsMTIxLjEzNEw5Mi4wOTQsNDcwLjQwNGwxNDkuMDEtNjYuNiAgbDE0OS4wMSw2Ni42bC0xNy4yOTQtMTYyLjI5Nkw0ODIuMjA3LDE4Ni45NzN6IE0yNDEuMTA0LDM3MC45NDNWNzEuOTUzbDYyLjA5LDEwNy45TDQyNSwyMDUuNTYxbC04My40MzMsOTIuMzkzbDEzLjE5MSwxMjMuNzg4ICBMMjQxLjEwNCwzNzAuOTQzeiIgZmlsbD0iI2ZmZDcwMCIvPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8L3N2Zz4K)}.saswp-rvw-str .str-ic{background-image:url(data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTkuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeD0iMHB4IiB5PSIwcHgiIHZpZXdCb3g9IjAgMCA0ODIuMjA3IDQ4Mi4yMDciIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDQ4Mi4yMDcgNDgyLjIwNzsiIHhtbDpzcGFjZT0icHJlc2VydmUiIHdpZHRoPSIxNnB4IiBoZWlnaHQ9IjE2cHgiPgo8cG9seWdvbiBwb2ludHM9IjQ4Mi4yMDcsMTg2Ljk3MyAzMjIuNTA4LDE1My4yNjkgMjQxLjEwNCwxMS44MDMgMTU5LjY5OSwxNTMuMjY5IDAsMTg2Ljk3MyAxMDkuMzg4LDMwOC4xMDggOTIuMDk0LDQ3MC40MDQgICAyNDEuMTA0LDQwMy44MDMgMzkwLjExMyw0NzAuNDA0IDM3Mi44MTgsMzA4LjEwOCAiIGZpbGw9IiNmZmQ3MDAiLz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPC9zdmc+Cg==)}.saswp-rvw-str .df-clr{background-image:url(data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTkuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeD0iMHB4IiB5PSIwcHgiIHZpZXdCb3g9IjAgMCA0ODIuMjA3IDQ4Mi4yMDciIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDQ4Mi4yMDcgNDgyLjIwNzsiIHhtbDpzcGFjZT0icHJlc2VydmUiIHdpZHRoPSIxNnB4IiBoZWlnaHQ9IjE2cHgiPgo8cG9seWdvbiBwb2ludHM9IjQ4Mi4yMDcsMTg2Ljk3MyAzMjIuNTA4LDE1My4yNjkgMjQxLjEwNCwxMS44MDMgMTU5LjY5OSwxNTMuMjY5IDAsMTg2Ljk3MyAxMDkuMzg4LDMwOC4xMDggOTIuMDk0LDQ3MC40MDQgICAyNDEuMTA0LDQwMy44MDMgMzkwLjExMyw0NzAuNDA0IDM3Mi44MTgsMzA4LjEwOCAiIGZpbGw9IiM2MzVlNjMiLz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPC9zdmc+Cg==)}.saswp-g-review-header{margin-top:50px}.saswp-g-review-body{display:inline-grid;grid-template-columns:1fr 300px;grid-gap:30px;margin-top:30px;width:100%}.saswp-channel-list{margin-right:15px}.saswp-input-fields{display:inline-flex;align-items:center;margin-bottom:8px;width:100%}.saswp-input-fields label{width:130px}.saswp-panel h3{font-size:20px;line-height:1.4;color:#222;text-align:center;margin:10px 0 20px 0}.saswp-input-fields a.button-primary{margin-top:10px}.saswp-glg-review-body{display:grid;grid-template-columns:100px 1fr;grid-gap:20px;background:#fff;padding:20px;box-shadow:0 0 20px 1px #d2cccc;margin-bottom:30px}.saswp-g-plus{float:right;font-size:15px;width:20px;height:20px}.saswp-g-plus img{max-width:100%}.saswp-rtng{padding-left:5px;font-size:14px}.saswp-pt-dt{font-size:12px;color:#999;font-weight:600;margin-top:5px;display:inline-block}.saswp-athr{font-size:15px;line-height:1.4;color:#000;font-weight:700}.saswp-rv-cnt p{font-size:16px;line-height:1.6;color:#000;margin:10px 0 0 0}.saswp-rv-img img{max-width:100px}.saswp-g-review-header div{margin-top:10px}.saswp-upgrade-pro{background:#fff;padding:25px;border:1px solid #d8d8d8;display:inline-block;margin-top:10px;width:81%}.saswp-upgrade-pro h2{font-size:20px;margin:0;color:#23282d;font-weight:600;text-align:center}.saswp-upgrade-pro ul{margin:25px 0 20px 0;display:inline-block}.saswp-upgrade-pro ul li{position:relative;padding-left:30px;font-size:15px;line-height:1.4;margin-bottom:10px}.saswp-upgrade-pro a{background:#d2150a;padding:10px 0;display:block;text-align:center;color:#fff;text-decoration:none;font-size:16px;font-weight:600;letter-spacing:1px;border-radius:5px}.saswp_image_prev{max-width:200px;max-height:200px;float:left;padding-left:2px}.saswp_prev_close{position:relative;width:30px;height:30px;top:12px;font-size:20px;top:-5px;text-decoration:none}.saswp-add-custom-schema-div{margin-top:10px;border-top:1px solid #eee;padding-top:5px}.saswp-nav-menu-list label{padding-left:10px}.saswp-dynamic-properties{border:1px solid #aaa;margin-top:5px;margin-bottom:5px}.saswp-table-close{float:right;cursor:pointer}.saswp-table-create-onajax table td,.saswp-table-create-onajax table th{padding:5px}.saswp-table-create-onajax select{width:98%}.saswp-g-reviews-settings-table input{width:100%}.saswp-s-reviews-settings-table input{width:100%}.saswp_rv_module_pro_notice{border:1px solid #d8d8d8;background:#fff}.saswp-settings-list .saswp-rev-mod{width:100%;display:inline-block;margin-top:20px}.saswp-rev-mod .saswp-knowledge-label{width:100%;display:inline-block;padding:10px 16px;font-weight:600;font-size:16px;color:#333;background:#f9f9f9;border:1px solid #d8d8d8;border-bottom:none;box-sizing:border-box}.saswp-rev-mod .saswp-knowledge-field{width:100%;display:inline-block}.saswp-rev-mod .saswp_rv_module_pro_notice{padding:20px}.saswp_cmpny_lst{width:100%;display:inline-block;margin-top:30px}.saswp_rv_module_pro_notice ul{margin:15px 0 20px 0;width:100%;display:inline-grid;grid-template-columns:1fr 1fr 1fr;grid-gap:20px;border-bottom:1px solid #eee;padding-bottom:20px}.saswp_rv_module_pro_notice ul li{position:relative;font-size:15px;line-height:1.5;color:#444;margin:0}.saswp_rv_module_pro_notice ul li span{padding-left:3px}.saswp_rv_module_pro_notice h2{text-align:center;font-size:31px}.saswp_rv_module_pro_notice .saswp_desc{text-align:center;font-size:18px;font-style:normal;color:#000}.saswp_rv_module_pro_notice .saswp_desc a{font-style:italic}.saswp_rv_module_pro_notice .saswp_lst{color:grey;font-family:georgia;font-style:italic;font-style:italic;font-size:15px;font-weight:600}.saswp_rv_module_pro_notice .saswp_avlbl{color:#2a902e;font-family:georgia;font-style:italic;font-size:15px;font-weight:600}.saswp_rv_module_pro_notice ul li img{width:20px;height:20px;position:relative;top:4px}.saswp-rev-btn{width:100%;display:inline-block;margin-top:20px;text-align:center}.saswp-rev-btn span{display:block;font-size:13px;margin-bottom:15px}.saswp-rev-btn a{padding:12px 18px;display:inline-block;text-decoration:none;border-radius:5px;background:#0085ba;color:#fff;font-weight:600;font-size:18px}.select2-container{width:100%!important}.saswp-schema-modify-section{margin-top:15px;border-top:1px solid #eee;padding-top:15px}.saswp-custom-meta-list{border:1px solid #aaa;border-radius:4px}.saswp-custom-fields-table tr td:nth-child(3n+3) input{border:1px solid #aaa;border-radius:4px}.updated.notice p{display:flex;width:100%;align-items:center}.updated.notice .dashicons-thumbs-up{margin-right:10px}a.saswp-feedback-no-thanks,a.saswp-feedback-remindme{display:inline-block;cursor:pointer}.saswp-feedback-remindme:after{content:",";display:inline-block;margin-right:5px;padding-left:5px}a.saswp-revws-lnk{display:inline-block;background:#0085ba;padding:12px 20px;color:#fff;text-decoration:none;border-radius:3px;margin-left:20px;font-size:14px;line-height:.6}.saswp-update-notice-btns{display:inline-block;width:100%;margin-bottom:5px}.saswp-about-contact-page{width:75%;float:right}.saswp-about-contact-page-tooltip{float:left;clear:both}.saswp-quick-setup{float:left}.saswp_add_schema_fields_on_fly{margin-bottom:5px!important}.saswp-custom-fields-table .saswp_image_prev{max-width:62px!important}.saswp-custom-fields-table .saswp_prev_close{font-size:15px}.saswp-review-content-table td:nth-child(2){width:50%;float:left}.saswp-review-content-table input{width:100%}.saswp-review-content-table select{width:100%}.saswp-review-content-table textarea{width:100%}.saswp-social-links-table{width:100%}.saswp-social-links-table input{width:100%}.saswp-add-social-links{margin:3px!important}.saswp-social-links-table td{padding-left:0!important}
2
+
3
+ /** Coupon Code CSS **/
4
+ .saswp-hide{
5
+ display:none;
6
+ }
7
+ .saswp-settings-second-div .saswp-upgrade-pro.promo-cpn{
8
+ display: block;
9
+ margin: 0;
10
+ }
11
+ .saswp-upgrade-pro.promo-cpn{
12
+ border: 1px solid #558B2F;
13
+ border-radius: 8px;
14
+ }
15
+ .saswp-upgrade-pro.promo-cpn h2{
16
+ color: #2E7D32;
17
+ font-size: 24px;
18
+ text-align: center;
19
+ margin: 0px 0px 20px 0px;
20
+ }
21
+ .saswp-upgrade-pro.promo-cpn span {
22
+ text-align: center;
23
+ font-size: 14px;
24
+ display: inline-block;
25
+ color: #777;
26
+ padding: 0px 20px;
27
+ box-sizing: border-box;
28
+ line-height: 1.4;
29
+ font-weight: 400;
30
+ }
31
+ .saswp-promo {
32
+ font-size: 20px;
33
+ margin-top: 15px;
34
+ width: 100%;
35
+ text-align: center;
36
+ }
37
+ .saswp-upgrade-pro.promo-cpn .prm-txt {
38
+ display: block;
39
+ line-height: 1;
40
+ }
41
+ .saswp-upgrade-pro.promo-cpn .saswp-promo .prm-cpn {
42
+ border: 1px dashed #1B5E20;
43
+ border-radius: 100px;
44
+ margin-top: 5px;
45
+ color: #388E3C;
46
+ font-size: 20px;
47
+ padding: 2px 15px 2px 15px;
48
+ }
49
+ .saswp-upgrade-pro a{
50
+ background:#43A047;
51
+ }
52
+ .saswp-upgrade-pro{border-radius: 8px;}
53
+ .saswp-settings-second-div a{
54
+ text-decoration: none;
55
+ }
56
+ .saswp-upgrade-pro ul li:before{
57
+ content: "\f147";
58
+ background-repeat: no-repeat;
59
+ font-family: dashicons;
60
+ position: absolute;
61
+ color: #46b450;
62
+ font-size: 25px;
63
+ left: 0px;
64
+ line-height: 1;
65
+ top: 0px;
66
+ }
admin_section/images/reviews_platform_icon/booking-img.png ADDED
Binary file
admin_section/images/reviews_platform_icon/cars-img.png ADDED
Binary file
admin_section/images/reviews_platform_icon/hotels-img.png ADDED
Binary file
admin_section/images/reviews_platform_icon/lawyers-img.png ADDED
Binary file
admin_section/js/saswp-newsletter.js ADDED
File without changes
admin_section/settings.php CHANGED
@@ -215,53 +215,27 @@ function saswp_admin_interface_render(){
215
  </form>
216
  </div>
217
  <div class="saswp-settings-second-div">
218
- <p class="saswp-quick-setup"><?php
219
- $nonce = wp_create_nonce( 'saswp_install_wizard_nonce' );
220
- echo esc_html('Need Quick Setup?', 'schema-and-structured-data-for-wp'); ?>
221
- </p>
222
- <a href="<?php echo esc_url(admin_url( 'plugins.php?page=saswp-setup-wizard' ).'&_saswp_nonce='.$nonce); ?>" class="page-title-action saswp-start-quck-setup button button-primary"><?php echo esc_html('Try Installation Wizard', 'schema-and-structured-data-for-wp'); ?></a>
223
- <div class="saswp-feedback-panel">
224
-
225
- <h2><?php echo esc_html__( 'Leave A Feedback', 'schema-and-structured-data-for-wp' ); ?></h2>
226
-
227
- <ul>
228
- <li><a target="_blank" href="https://wordpress.org/support/plugin/schema-and-structured-data-for-wp/reviews/#new-post"><?php echo esc_html__( 'I would like to review this plugin', 'schema-and-structured-data-for-wp' ); ?></a></li>
229
- <li><a target="_blank" href="http://structured-data-for-wp.com/contact-us/"><?php echo esc_html__( 'I have ideas to improve this plugin', 'schema-and-structured-data-for-wp' ); ?></a></li>
230
- <li><a href="<?php echo esc_url( admin_url( 'admin.php?page=structured_data_options&tab=support' ) ); ?>"><?php echo esc_html__( 'I need help this plugin', 'schema-and-structured-data-for-wp' ); ?></a></li>
231
- </ul>
232
- <div class="saswp-social-sharing-buttons">
233
- <a class="saswp-facebook-share" href="https://www.facebook.com/sharer/sharer.php?u=http://structured-data-for-wp.com/" target="_blank">
234
- <span class="dashicons dashicons-facebook"></span>
235
- <?php echo esc_html__( 'Share', 'schema-and-structured-data-for-wp' ); ?>
236
- </a>
237
- <a target="_blank" class="twitter-share-button"
238
- href="https://twitter.com/home?status=I'm%20using%20this%20Structured%20data%20WordPress%20plugin%20for%20implementing%20Schema%20on%20my%20site!%20http%3A//structured-data-for-wp.com/%20via%20%40WPF_community">
239
- <span class="dashicons dashicons-twitter"></span>
240
- <?php echo esc_html__( 'Tweet', 'schema-and-structured-data-for-wp' ); ?>
241
- </a>
242
- </div>
243
-
244
- </div>
245
- <div class="saswp-view-docs">
246
-
247
- <p class="saswp-quick-setup"><?php echo esc_html__('Need Help?','schema-and-structured-data-for-wp') ?></p>
248
- <a class="button button-default" target="_blank" href="http://structured-data-for-wp.com/docs/"><?php echo esc_html__('View Documentation','schema-and-structured-data-for-wp') ?></a>
249
-
250
  </div>
251
-
252
  <?php if(!saswp_ext_installed_status()) { ?>
253
-
254
- <div class="saswp-upgrade-pro">
255
- <h2><?php echo esc_html__('Upgrade to Pro!','schema-and-structured-data-for-wp') ?></h2>
256
- <ul>
257
- <li><?php echo esc_html__('Premium features','schema-and-structured-data-for-wp') ?></li>
258
- <li><?php echo esc_html__('Dedicated Schema Support','schema-and-structured-data-for-wp') ?></li>
259
- <li><?php echo esc_html__('Active Development','schema-and-structured-data-for-wp') ?></li>
260
- </ul>
261
- <a target="_blank" href="http://structured-data-for-wp.com/pricing/"><?php echo esc_html__('UPGRADE','schema-and-structured-data-for-wp') ?></a>
262
- </div>
263
-
264
- <?php } ?>
265
  </div>
266
  </div>
267
 
215
  </form>
216
  </div>
217
  <div class="saswp-settings-second-div">
218
+ <a target="_blank" href="http://structured-data-for-wp.com/pricing/">
219
+ <div class="saswp-upgrade-pro promo-cpn">
220
+ <h2><?php echo esc_html__('50% OFF on PRO','schema-and-structured-data-for-wp') ?></h2>
221
+ <span><?php echo esc_html__('Limited Time Offer for this festive season','schema-and-structured-data-for-wp') ?></span>
222
+ <div class="saswp-promo">
223
+ <span class="prm-txt"><?php echo esc_html__('Promo:','schema-and-structured-data-for-wp') ?></span>
224
+ <span class="prm-cpn"><?php echo esc_html__('BFCM2019','schema-and-structured-data-for-wp') ?></span>
225
+ </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
226
  </div>
227
+ </a>
228
  <?php if(!saswp_ext_installed_status()) { ?>
229
+ <div class="saswp-upgrade-pro">
230
+ <h2><?php echo esc_html__('Upgrade to Pro!','schema-and-structured-data-for-wp') ?></h2>
231
+ <ul>
232
+ <li><?php echo esc_html__('Premium features','schema-and-structured-data-for-wp') ?></li>
233
+ <li><?php echo esc_html__('Dedicated Schema Support','schema-and-structured-data-for-wp') ?></li>
234
+ <li><?php echo esc_html__('Active Development','schema-and-structured-data-for-wp') ?></li>
235
+ </ul>
236
+ <a target="_blank" href="http://structured-data-for-wp.com/pricing/"><?php echo esc_html__('UPGRADE','schema-and-structured-data-for-wp') ?></a>
237
+ </div>
238
+ <?php } ?>
 
 
239
  </div>
240
  </div>
241
 
core/array-list/plugins.php ADDED
@@ -0,0 +1,132 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ // Exit if accessed directly.
3
+ if ( ! defined( 'ABSPATH' ) ) exit;
4
+
5
+ return array(
6
+
7
+ array(
8
+ 'key' => 'kk_star_ratings',
9
+ 'name' => 'kk Star Ratings',
10
+ 'path_free' => 'kk-star-ratings/index.php',
11
+ 'status_key' => 'saswp-kk-star-raring',
12
+ ),
13
+ array(
14
+ 'key' => 'wp_post_ratings',
15
+ 'name' => 'WP-PostRatings',
16
+ 'path_free' => 'wp-postratings/wp-postratings.php',
17
+ 'status_key' => 'saswp-wppostratings-raring',
18
+ ),
19
+ array(
20
+ 'key' => 'bb_press',
21
+ 'name' => 'bbPress',
22
+ 'path_free' => 'bbpress/bbpress.php',
23
+ 'status_key' => 'saswp-bbpress',
24
+ ),
25
+ array(
26
+ 'key' => 'woocommerce',
27
+ 'name' => 'Woocommerce',
28
+ 'path_free' => 'woocommerce/woocommerce.php',
29
+ 'status_key' => 'saswp-woocommerce',
30
+ ),
31
+ array(
32
+ 'key' => 'cooked',
33
+ 'name' => 'Cooked',
34
+ 'path_free' => 'cooked/cooked.php',
35
+ 'path_pro' => 'cooked-pro/cooked-pro.php',
36
+ 'status_key' => 'saswp-cooked',
37
+ ),
38
+ array(
39
+ 'key' => 'the_events_calendar',
40
+ 'name' => 'The Events Calendar',
41
+ 'path_free' => 'the-events-calendar/the-events-calendar.php',
42
+ 'status_key' => 'saswp-the-events-calendar',
43
+ ),
44
+ array(
45
+ 'key' => 'event_organiser',
46
+ 'name' => 'Event Organiser',
47
+ 'path_free' => 'event-organiser/event-organiser.php',
48
+ 'status_key' => 'saswp-event-organiser',
49
+ ),
50
+ array(
51
+ 'key' => 'modern_events_calendar',
52
+ 'name' => 'Modern Events Calendar Lite',
53
+ 'path_free' => 'modern-events-calendar-lite/modern-events-calendar-lite.php',
54
+ 'status_key' => 'saswp-modern-events-calendar',
55
+ ),
56
+ array(
57
+ 'key' => 'wp_event_manager',
58
+ 'name' => 'WP Event Manager',
59
+ 'path_free' => 'wp-event-manager/wp-event-manager.php',
60
+ 'status_key' => 'saswp-wp-event-manager',
61
+ ),
62
+ array(
63
+ 'key' => 'events_manager',
64
+ 'name' => 'Events Manager',
65
+ 'path_free' => 'events-manager/events-manager.php',
66
+ 'status_key' => 'saswp-events-manager',
67
+ ),
68
+ array(
69
+ 'key' => 'event_calendar_wd',
70
+ 'name' => 'Event Calendar WD',
71
+ 'path_free' => 'event-calendar-wd/ecwd.php',
72
+ 'status_key' => 'saswp-event-calendar-wd',
73
+ ),
74
+ array(
75
+ 'key' => 'dw_qna',
76
+ 'name' => 'DW Question Answer',
77
+ 'path_free' => 'dw-question-answer/dw-question-answer.php',
78
+ 'path_pro' => 'dw-question-answer-pro/dw-question-answer.php',
79
+ 'status_key' => 'saswp-dw-question-answer',
80
+ ),
81
+ array(
82
+ 'key' => 'yoast_seo',
83
+ 'name' => 'Yoast Seo',
84
+ 'path_free' => 'wordpress-seo/wp-seo.php',
85
+ 'path_pro' => 'wordpress-seo-premium/wp-seo-premium.php',
86
+ 'status_key' => 'saswp-yoast',
87
+ ),
88
+ array(
89
+ 'key' => 'rank_math',
90
+ 'name' => 'Rank Math',
91
+ 'path_free' => 'seo-by-rank-math/rank-math.php',
92
+ 'path_pro' => 'seo-by-rank-math-premium/rank-math-premium.php',
93
+ 'status_key' => 'saswp-rankmath',
94
+ ),
95
+ array(
96
+ 'key' => 'smart_crawl',
97
+ 'name' => 'SmartCrawl Seo',
98
+ 'path_free' => 'smartcrawl-seo/wpmu-dev-seo.php',
99
+ 'status_key' => 'saswp-smart-crawl',
100
+ ),
101
+ array(
102
+ 'key' => 'the_seo_framework',
103
+ 'name' => 'The SEO Framework',
104
+ 'path_free' => 'autodescription/autodescription.php',
105
+ 'status_key' => 'saswp-the-seo-framework',
106
+ ),
107
+ array(
108
+ 'key' => 'seo_press',
109
+ 'name' => 'SEOPress',
110
+ 'path_free' => 'wp-seopress/seopress.php',
111
+ 'status_key' => 'saswp-seo-press',
112
+ ),
113
+ array(
114
+ 'key' => 'aiosp',
115
+ 'name' => 'All in One SEO Pack',
116
+ 'path_free' => 'all-in-one-seo-pack/all_in_one_seo_pack.php',
117
+ 'status_key' => 'saswp-aiosp',
118
+ ),
119
+ array(
120
+ 'key' => 'squirrly_seo',
121
+ 'name' => 'Squirrly SEO',
122
+ 'path_free' => 'squirrly-seo/squirrly.php',
123
+ 'status_key' => 'saswp-squirrly-seo',
124
+ ),
125
+ array(
126
+ 'key' => 'wp_recipe_maker',
127
+ 'name' => 'WP Recipe Maker',
128
+ 'path_free' => 'wp-recipe-maker/wp-recipe-maker.php',
129
+ 'status_key' => 'saswp-wp-recipe-maker',
130
+ ),
131
+
132
+ );
google_review/google_review.php ADDED
@@ -0,0 +1,303 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Google Review Class
4
+ *
5
+ * @author Magazine3
6
+ * @category Admin
7
+ * @path google_review/google_review
8
+ * @Version 1.8
9
+ */
10
+
11
+ // Exit if accessed directly.
12
+ if ( ! defined( 'ABSPATH' ) ) exit;
13
+
14
+ class saswp_google_review{
15
+
16
+ public function __construct() {
17
+
18
+ }
19
+ /**
20
+ * List of hooks used in google review class
21
+ * since @version 1.8
22
+ */
23
+ public function saswp_google_review_hooks(){
24
+
25
+ add_action( 'init', array($this, 'saswp_add_google_review_menu_links'),20);
26
+
27
+ add_shortcode('saswp_google_review', array($this,'saswp_google_review_shortcode'));
28
+
29
+ if(is_admin()){
30
+
31
+ add_filter('get_edit_post_link', array($this, 'saswp_get_edit_post_link'), 99, 3);
32
+
33
+ }
34
+
35
+ }
36
+
37
+ public function saswp_get_edit_post_link($link, $post_id, $context){
38
+
39
+ $scr = get_current_screen();
40
+
41
+ $id = '';
42
+
43
+ if(is_object($scr)){
44
+ $id = $scr->id;
45
+ }
46
+
47
+ if ($id == 'edit-saswp-google-review' && $context == 'display') {
48
+
49
+ return wp_nonce_url(admin_url('admin.php?post_id='.$post_id.'&page=collection'), '_wpnonce');
50
+
51
+ } else {
52
+
53
+ return $link;
54
+
55
+ }
56
+ }
57
+ /**
58
+ * Function to register google review post type
59
+ * @since version 1.8
60
+ */
61
+ public function saswp_add_google_review_menu_links() {
62
+
63
+ $collection_post_type = array(
64
+ 'labels' => array(
65
+ 'name' => esc_html__( 'Google Review', 'schema-and-structured-data-for-wp' ),
66
+ 'add_new' => esc_html__( 'Add Place', 'schema-and-structured-data-for-wp' ),
67
+ 'add_new_item' => esc_html__( 'Edit Collection', 'schema-and-structured-data-for-wp' ),
68
+ 'edit_item' => esc_html__( 'Edit AD','schema-and-structured-data-for-wp'),
69
+ ),
70
+ 'public' => true,
71
+ 'has_archive' => false,
72
+ 'exclude_from_search' => true,
73
+ 'publicly_queryable' => false,
74
+ 'show_in_menu' => 'edit.php?post_type=saswp',
75
+ 'show_ui' => true,
76
+ 'show_in_nav_menus' => false,
77
+ 'show_admin_column' => true,
78
+ 'rewrite' => false,
79
+ );
80
+ register_post_type( 'saswp-google-review', $collection_post_type );
81
+
82
+ }
83
+ /**
84
+ * Function to fetch all the google place post
85
+ * @return type array
86
+ * @since version 1.8
87
+ */
88
+ public function saswp_fetch_all_google_review_post(){
89
+
90
+ $all_post = get_posts(
91
+ array(
92
+ 'post_type' => 'saswp-google-review',
93
+ 'posts_per_page' => -1,
94
+ 'post_status' => 'publish',
95
+ )
96
+ );
97
+
98
+ return $all_post;
99
+ }
100
+ /**
101
+ * Function to get google review list by using shortcode
102
+ * @param type $attr
103
+ * @return string
104
+ * @since @version 1.8
105
+ */
106
+ public function saswp_google_review_shortcode($attr){
107
+
108
+ $post_id = $attr['id'];
109
+
110
+ if($post_id){
111
+
112
+ if(saswp_global_option()){
113
+
114
+ $schema_markup = $this->saswp_get_google_review_schema_markup($post_id);
115
+
116
+ }
117
+ $output = $this->saswp_google_review_front_output($post_id);
118
+
119
+ if($schema_markup){
120
+ $output = $output.$schema_markup;
121
+ }
122
+ return $output;
123
+
124
+ }
125
+
126
+ }
127
+ /**
128
+ * Function to generate google review schema markup
129
+ * @global type $wpdb
130
+ * @global type $sd_data
131
+ * @param type $post_id
132
+ * @return string
133
+ * @since Version 1.8
134
+ *
135
+ */
136
+ public function saswp_get_google_review_schema_markup($post_id){
137
+
138
+ global $wpdb;
139
+ global $sd_data;
140
+ $html = '';
141
+
142
+ $place_id = get_post_meta($post_id, $key='saswp_google_place_id', true );
143
+
144
+ if($place_id){
145
+
146
+ $place = $wpdb->get_row($wpdb->prepare("SELECT * FROM " . $wpdb->prefix . "saswp_google_place WHERE place_id = %s", $place_id));
147
+
148
+ }
149
+
150
+ $date = get_the_date("Y-m-d\TH:i:s\Z");
151
+ $modified_date = get_the_modified_date("Y-m-d\TH:i:s\Z");
152
+
153
+ if($place->rating && isset($sd_data['saswp-google-review']) && $sd_data['saswp-google-review'] == 1){
154
+
155
+ $total_score = esc_attr(number_format((float)$place->rating, 2, '.', ''));
156
+
157
+ $input1 = array(
158
+ '@context' => 'http://schema.org',
159
+ '@type' => 'Review',
160
+ 'dateCreated' => esc_html($date),
161
+ 'datePublished' => esc_html($date),
162
+ 'dateModified' => esc_html($modified_date),
163
+ 'headline' => saswp_get_the_title(),
164
+ 'name' => saswp_get_the_title(),
165
+ 'url' => get_permalink(),
166
+ 'description' => saswp_get_the_excerpt(),
167
+ 'copyrightYear' => get_the_time( 'Y' ),
168
+ 'author' => saswp_get_author_details()
169
+ );
170
+
171
+ $input1['itemReviewed'] = array(
172
+ '@type' => 'Thing',
173
+ 'name' => saswp_get_the_title(),
174
+ );
175
+
176
+ $input1['reviewRating'] = array(
177
+ '@type' => 'Rating',
178
+ 'worstRating' => 1,
179
+ 'bestRating' => 5,
180
+ 'ratingValue' => esc_attr($total_score),
181
+ );
182
+
183
+ if(!empty($input1)){
184
+
185
+ $html .= "\n";
186
+ $html .= '<!-- Schema & Structured Data For Google Review v'.esc_attr(SASWP_VERSION).' - -->';
187
+ $html .= "\n";
188
+ $html .= '<script type="application/ld+json">';
189
+ $html .= "\n";
190
+ $html .= saswp_json_print_format($input1);
191
+ $html .= "\n";
192
+ $html .= '</script>';
193
+ $html .= "\n\n";
194
+
195
+ }
196
+
197
+ }
198
+
199
+ return $html;
200
+ }
201
+ /**
202
+ * Function to show google review list at user end
203
+ * @global type $wpdb
204
+ * @param type $post_id
205
+ * @return string
206
+ * @since version 1.8
207
+ */
208
+ public function saswp_google_review_front_output($post_id){
209
+
210
+ global $wpdb;
211
+ $reviews = null;
212
+ $output = '';
213
+
214
+ $place_id = get_post_meta($post_id, $key='saswp_google_place_id', true );
215
+
216
+ if($place_id){
217
+
218
+ $place = $wpdb->get_row($wpdb->prepare("SELECT * FROM " . $wpdb->prefix . "saswp_google_place WHERE place_id = %s", $place_id));
219
+
220
+ if($place->id){
221
+
222
+ $reviews = $wpdb->get_results($wpdb->prepare("SELECT * FROM " . $wpdb->prefix . "saswp_google_review WHERE google_place_id = %d ORDER BY time DESC", $place->id));
223
+
224
+ if($reviews){
225
+
226
+ foreach ($reviews as $review){
227
+
228
+ $review_rating = $review->rating;
229
+
230
+ $starating = '';
231
+
232
+ $starating .= '<div class="saswp-rvw-str">';
233
+ for($j=0; $j<5; $j++){
234
+
235
+ if($review_rating >$j){
236
+
237
+ $explod = explode('.', $review_rating);
238
+
239
+ if(isset($explod[1])){
240
+
241
+ if($j <$explod[0]){
242
+
243
+ $starating.='<span class="str-ic"></span>';
244
+
245
+ }else{
246
+
247
+ $starating.='<span class="half-str"></span>';
248
+
249
+ }
250
+ }else{
251
+
252
+ $starating.='<span class="str-ic"></span>';
253
+
254
+ }
255
+
256
+ } else{
257
+ $starating.='<span class="df-clr"></span>';
258
+ }
259
+ }
260
+ $starating .= '</div>';
261
+
262
+ $output.= '<div class="saswp-g-review-panel">
263
+ <div class="saswp-glg-review-body">
264
+ <div class="saswp-rv-img">
265
+ <img src="'.esc_url($review->profile_photo_url).'" alt="'.$review->author_name.'">
266
+ </div>
267
+ <div class="saswp-rv-cnt">
268
+ <div class="saswp-str-rtng">
269
+ <div class="saswp-str">
270
+ <span class="saswp-athr">'.$review->author_name.'</span>
271
+ '.$starating.'
272
+ </div>
273
+ <span class="saswp-g-plus">
274
+ <a href="#"><img src="'.SASWP_PLUGIN_URL.'/admin_section/images/google-img.png'.'"></a>
275
+ </span>
276
+ </div>
277
+ <span class="saswp-pt-dt">'.gmdate("H:i d M y", $review->time).'</span>
278
+ <p>'.substr($review->text,0,300).'</p>
279
+ </div>
280
+ </div>
281
+ </div>';
282
+
283
+ }
284
+
285
+ }
286
+
287
+ }
288
+
289
+ }
290
+
291
+ return $output;
292
+
293
+ }
294
+
295
+ }
296
+
297
+ if (class_exists('saswp_google_review')) {
298
+
299
+ $object = new saswp_google_review;
300
+ $object->saswp_google_review_hooks();
301
+
302
+ };
303
+
google_review/google_review_page.php ADDED
@@ -0,0 +1,400 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Google Review Page
4
+ *
5
+ * @author Magazine3
6
+ * @category Admin
7
+ * @path google_review/google_review_page
8
+ * @Version 1.8
9
+ */
10
+
11
+ // Exit if accessed directly.
12
+ if ( ! defined( 'ABSPATH' ) ) exit;
13
+
14
+ add_action('admin_init', 'saswp_add_google_places');
15
+
16
+ /**
17
+ * Function to save google place review by place id
18
+ * Since @version 1.8
19
+ */
20
+ function saswp_add_google_places(){
21
+
22
+ if(!function_exists('wp_get_current_user')) {
23
+ include(ABSPATH . "wp-includes/pluggable.php");
24
+ }
25
+
26
+ if(isset($_POST['place_post_ID'])){
27
+
28
+ $post_id = sanitize_text_field($_POST['place_post_ID']);
29
+ $post_title = sanitize_text_field($_POST['saswp_g_review_title']);
30
+
31
+ $post = array(
32
+ 'ID' => $post_id,
33
+ 'post_title' => $post_title,
34
+ 'post_status' => 'publish',
35
+ 'post_name' => $post_title,
36
+ 'post_type' => 'saswp-google-review',
37
+ );
38
+
39
+ wp_update_post($post);
40
+
41
+ $post_meta = array();
42
+
43
+ $post_meta['saswp_google_place_id'] = sanitize_text_field($_POST['saswp_google_place_id']);
44
+ $post_meta['saswp_language_list'] = sanitize_text_field($_POST['saswp_language_list']);
45
+ $post_meta['saswp_googel_api'] = sanitize_text_field($_POST['saswp_googel_api']);
46
+
47
+ if(!empty($post_meta)){
48
+
49
+ foreach($post_meta as $meta_key => $meta_val){
50
+
51
+ update_post_meta($post_id, $meta_key, $meta_val);
52
+
53
+ }
54
+
55
+ }
56
+
57
+ if($_POST['saswp-page'] == 'collection'){
58
+
59
+ $current_url = htmlspecialchars_decode(wp_nonce_url(admin_url('admin.php?post_id='.$post_id.'&page=collection'), '_wpnonce'));
60
+ wp_redirect( $current_url );
61
+ exit;
62
+ }
63
+
64
+ }
65
+
66
+ }
67
+
68
+ class saswp_google_review_page{
69
+
70
+ public function __construct() {
71
+
72
+ add_action( 'admin_menu', array($this, 'saswp_add_google_review_links'),20);
73
+ add_action( 'wp_ajax_saswp_connect_google_place', array($this,'saswp_connect_google_place'));
74
+
75
+ }
76
+ /**
77
+ * Ajax Function to connect google place api with place id
78
+ * @return type json
79
+ * Since @version 1.8
80
+ */
81
+ public function saswp_connect_google_place(){
82
+
83
+ if ( ! isset( $_POST['saswp_security_nonce'] ) ){
84
+ return;
85
+ }
86
+ if ( !wp_verify_nonce( $_POST['saswp_security_nonce'], 'saswp_ajax_check_nonce' ) ){
87
+ return;
88
+ }
89
+
90
+ $place_id = '';
91
+ $language = '';
92
+ $google_api = '';
93
+
94
+ if(isset($_POST['place_id'])){
95
+ $place_id = sanitize_text_field($_POST['place_id']);
96
+ }
97
+ if(isset($_POST['language'])){
98
+ $language = sanitize_text_field($_POST['language']);
99
+ }
100
+ if(isset($_POST['google_api'])){
101
+ $google_api = sanitize_text_field($_POST['google_api']);
102
+ }
103
+
104
+ if($place_id){
105
+
106
+ $result = saswp_get_google_review_data($place_id, $language);
107
+
108
+ if($result){
109
+
110
+ echo json_encode(array('status' => 't'));
111
+
112
+ }else{
113
+
114
+ echo json_encode(array('status' => 'f'));
115
+
116
+ }
117
+
118
+ }
119
+
120
+ wp_die();
121
+
122
+ }
123
+
124
+ public function saswp_add_google_review_links() {
125
+
126
+ add_submenu_page( 'edit.php?post_type=saswp',
127
+ esc_html__( 'Structured Data', 'schema-and-structured-data-for-wp' ),
128
+ esc_html__( '', 'schema-and-structured-data-for-wp' ),
129
+ 'manage_options',
130
+ 'collection',
131
+ array($this, 'saswp_admin_google_review_interface_render'));
132
+
133
+ }
134
+ /**
135
+ * Function to create google review page in admin area
136
+ * @global type $wpdb
137
+ * Since @version 1.8
138
+ */
139
+ public function saswp_admin_google_review_interface_render(){
140
+
141
+ global $wpdb;
142
+
143
+ $language = array(
144
+ 'af' => 'Afrikanns',
145
+ 'sq' => 'Albanian',
146
+ 'ar' => 'Arabic',
147
+ 'hy' => 'Armenian',
148
+ 'eu' => 'Basque',
149
+ 'bn' => 'Bengali',
150
+ 'bg' => 'Bulgarian',
151
+ 'ca' => 'Catalan',
152
+ 'km' => 'Cambodian',
153
+ 'zh' => 'Chinese (Mandarin)',
154
+ 'hr' => 'Croation',
155
+ 'cs' => 'Czech',
156
+ 'da' => 'Danish',
157
+ 'nl' => 'Dutch',
158
+ 'en' => 'English',
159
+ 'et' => 'Estonian',
160
+ 'fj' => 'Fiji',
161
+ 'fi' => 'Finnish',
162
+ 'fr' => 'French',
163
+ 'ka' => 'Georgian',
164
+ 'de' => 'German',
165
+ 'el' => 'Greek',
166
+ 'gu' => 'Gujarati',
167
+ 'he' => 'Hebrew',
168
+ 'hi' => 'Hindi',
169
+ 'hu' => 'Hungarian',
170
+ 'is' => 'Icelandic',
171
+ 'id' => 'Indonesian',
172
+ 'ga' => 'Irish',
173
+ 'it' => 'Italian',
174
+ 'ja' => 'Japanese',
175
+ 'jw' => 'Javanese',
176
+ 'ko' => 'Korean',
177
+ 'la' => 'Latin',
178
+ 'lv' => 'Latvian',
179
+ 'lt' => 'Lithuanian',
180
+ 'mk' => 'Macedonian',
181
+ 'ms' => 'Malay',
182
+ 'ml' => 'Malayalam',
183
+ 'mt' => 'Maltese',
184
+ 'mi' => 'Maori',
185
+ 'mr' => 'Marathi',
186
+ 'mn' => 'Mongolian',
187
+ 'ne' => 'Nepali',
188
+ 'no' => 'Norwegian',
189
+ 'fa' => 'Persian',
190
+ 'pl' => 'Polish',
191
+ 'pt' => 'Portuguese',
192
+ 'pa' => 'Punjabi',
193
+ 'qu' => 'Quechua',
194
+ 'ro' => 'Romanian',
195
+ 'ru' => 'Russian',
196
+ 'sm' => 'Samoan',
197
+ 'sr' => 'Serbian',
198
+ 'sk' => 'Slovak',
199
+ 'sl' => 'Slovenian',
200
+ 'es' => 'Spanish',
201
+ 'sw' => 'Swahili',
202
+ 'sv' => 'Swedish ',
203
+ 'ta' => 'Tamil',
204
+ 'tt' => 'Tatar',
205
+ 'te' => 'Telugu',
206
+ 'th' => 'Thai',
207
+ 'bo' => 'Tibetan',
208
+ 'to' => 'Tonga',
209
+ 'tr' => 'Turkish',
210
+ 'uk' => 'Ukranian',
211
+ 'ur' => 'Urdu',
212
+ 'uz' => 'Uzbek',
213
+ 'vi' => 'Vietnamese',
214
+ 'cy' => 'Welsh',
215
+ 'xh' => 'Xhosa'
216
+ );
217
+
218
+ $post_meta = array();
219
+ $post_id = '';
220
+ $reviews = null;
221
+
222
+ if(isset($_GET['post_id'])){
223
+
224
+ $post_id = intval($_GET['post_id']);
225
+
226
+
227
+ $post_meta = get_post_meta($post_id, $key='', true );
228
+
229
+
230
+ } else{
231
+
232
+ $post = get_default_post_to_edit( 'saswp-google-review', true );
233
+ $post_id = $post->ID;
234
+ }
235
+
236
+ if(isset($post_meta['saswp_google_place_id'])){
237
+
238
+ $place_id = trim($post_meta['saswp_google_place_id'][0]);
239
+ $place = $wpdb->get_row($wpdb->prepare("SELECT * FROM " . $wpdb->prefix . "saswp_google_place WHERE place_id = %s", $place_id));
240
+
241
+ if(is_object($place)){
242
+
243
+ $reviews = $wpdb->get_results($wpdb->prepare("SELECT * FROM " . $wpdb->prefix . "saswp_google_review WHERE google_place_id = %d ORDER BY time DESC", $place->id));
244
+
245
+ }
246
+
247
+ }
248
+
249
+ ?>
250
+ <div class="saswp-heading">
251
+ <h1 class="wp-heading-inline"><?php echo esc_html__('Google Review','schema-and-structured-data-for-wp'); ?> </h1><span class="saswp-need-help"><a target="_blank" href="http://structured-data-for-wp.com/docs/article/how-to-display-google-review/"><?php echo esc_html__('Need Help?','schema-and-structured-data-for-wp'); ?></a></span>
252
+ </div>
253
+
254
+ <div class="saswp-g-review-container">
255
+ <form method="post" action="post.php">
256
+ <div class="saswp-g-review-header">
257
+
258
+ <input type="hidden" name="post_type" value="saswp-google-review">
259
+ <input type="hidden" name="saswp-page" value="collection">
260
+ <input type="hidden" id="place_post_ID" name="place_post_ID" value="<?php echo $post_id; ?>">
261
+ <input type="text" value="<?php if(get_the_title($post_id) == 'Auto Draft'){ echo 'Untitled'; }else{ echo get_the_title($post_id); } ?>" id="saswp_g_review_title" name="saswp_g_review_title" style="width: 30%;">
262
+
263
+ <button type="submit" class="btn btn-success button-primary" > <?php echo esc_html__('Save','schema-and-structured-data-for-wp'); ?> </button>
264
+ <div>Use ShortCode [saswp_google_review id="<?php echo $post_id; ?>"]</div>
265
+
266
+ </div>
267
+
268
+ <div class="saswp-g-review-body">
269
+
270
+ <div class="saswp-review-list">
271
+
272
+ <?php
273
+
274
+ if($reviews){
275
+
276
+ foreach ($reviews as $review){
277
+
278
+ $review_rating = $review->rating;
279
+
280
+ $starating = '';
281
+
282
+ $starating .= '<div class="saswp-rvw-str">';
283
+
284
+ for($j=0; $j<5; $j++){
285
+
286
+ if($review_rating >$j){
287
+
288
+ $explod = explode('.', $review_rating);
289
+
290
+ if(isset($explod[1])){
291
+
292
+ if($j <$explod[0]){
293
+
294
+ $starating.='<span class="str-ic"></span>';
295
+
296
+ }else{
297
+
298
+ $starating.='<span class="half-str"></span>';
299
+
300
+ }
301
+ }else{
302
+
303
+ $starating.='<span class="str-ic"></span>';
304
+
305
+ }
306
+
307
+ } else{
308
+ $starating.='<span class="df-clr"></span>';
309
+ }
310
+ }
311
+ $starating .= '</div>';
312
+
313
+
314
+ echo '<div class="saswp-g-review-panel">
315
+ <div class="saswp-glg-review-body">
316
+ <div class="saswp-rv-img">
317
+ <img src="'.esc_url($review->profile_photo_url).'" alt="'.esc_attr($review->author_name).'">
318
+ </div>
319
+ <div class="saswp-rv-cnt">
320
+ <div class="saswp-str-rtng">
321
+ <div class="saswp-str">
322
+ <span class="saswp-athr">'.esc_attr($review->author_name).'</span>
323
+ '.$starating.'
324
+ </div>
325
+ <span class="saswp-g-plus">
326
+ <a href="#"><img src="'.SASWP_PLUGIN_URL.'/admin_section/images/google-img.png'.'"></a>
327
+ </span>
328
+ </div>
329
+ <span class="saswp-pt-dt">'.gmdate("H:i d M y", $review->time).'</span>
330
+ <p>'.substr($review->text,0,300).'</p>
331
+ </div>
332
+ </div>
333
+ </div>';
334
+
335
+ }
336
+
337
+ }
338
+
339
+ ?>
340
+
341
+ </div>
342
+
343
+ <div class="saswp-channel-list">
344
+ <div class="saswp-panel">
345
+ <h3><?php echo esc_html__('Google Review Settings','schema-and-structured-data-for-wp'); ?></h3>
346
+ <div class="saswp-input-fields">
347
+ <label><?php echo esc_html__('Place ID','schema-and-structured-data-for-wp'); ?>:</label><input value="<?php if(isset($post_meta['saswp_google_place_id'])){ echo $post_meta['saswp_google_place_id'][0];} ?>" type="text" id="saswp_google_place_id" name="saswp_google_place_id" placeholder="<?php echo esc_html__('Place Id', 'schema-and-structured-data-for-wp' ); ?>">
348
+ </div>
349
+
350
+ <div class="saswp-input-fields">
351
+ <label><?php echo esc_html__('Languages','schema-and-structured-data-for-wp'); ?>:</label>
352
+ <select name="saswp_language_list" id="saswp_language_list">
353
+ <?php
354
+
355
+ foreach ($language as $key => $value) {
356
+
357
+ $sel = '';
358
+
359
+ if(saswp_remove_warnings($post_meta, 'saswp_language_list', 'saswp_array')==$key){
360
+
361
+ $sel = 'selected';
362
+
363
+ }
364
+
365
+ echo "<option value='".esc_attr($key)."' ".esc_attr($sel).">".esc_html__($value, 'schema-and-structured-data-for-wp' )."</option>";
366
+
367
+ }
368
+ ?>
369
+ </select>
370
+
371
+ </div>
372
+
373
+ <div class="saswp-input-fields">
374
+ <label><?php echo esc_html__('Goolge API','schema-and-structured-data-for-wp'); ?></label>
375
+ <input value="<?php if(isset($post_meta['saswp_googel_api'])){ echo $post_meta['saswp_googel_api'][0];} ?>" type="text" id="saswp_googel_api" name="saswp_googel_api" placeholder="<?php echo esc_html__('Google API', 'schema-and-structured-data-for-wp' ); ?>">
376
+ </div>
377
+
378
+ <div class="saswp-input-fields">
379
+ <a class="saswp_coonect_google_place btn btn-success button-primary" ><?php echo esc_html__('Connect Google','schema-and-structured-data-for-wp'); ?></a>
380
+ </div>
381
+
382
+ </div>
383
+
384
+ </div>
385
+
386
+
387
+ </div>
388
+
389
+ </form>
390
+ </div>
391
+
392
+ <?php
393
+ }
394
+
395
+ }
396
+
397
+ if (class_exists('saswp_google_review_page')) {
398
+ new saswp_google_review_page;
399
+ };
400
+
google_review/google_review_setup.php ADDED
@@ -0,0 +1,245 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Google Review Setup Page
4
+ *
5
+ * @author Magazine3
6
+ * @category Admin
7
+ * @path google_review/google_review_setup
8
+ * @Version 1.8
9
+ */
10
+
11
+ // Exit if accessed directly.
12
+ if ( ! defined( 'ABSPATH' ) ) exit;
13
+
14
+ add_action('admin_init', 'saswp_create_database_for_existing_users');
15
+ add_action('the_post', 'saswp_create_database_for_existing_users');
16
+
17
+ /**
18
+ * Function to initiate database installation
19
+ * @return type null
20
+ * @Since version 1.8
21
+ */
22
+ function saswp_create_database_for_existing_users(){
23
+
24
+ if ( ! current_user_can( 'manage_options' ) ) {
25
+ return;
26
+ }
27
+ $status = get_option('saswp-database-on-first-load');
28
+
29
+ if($status != 'enable'){
30
+
31
+ saswp_google_review_database_install();
32
+ update_option('saswp-database-on-first-load', 'enable');
33
+
34
+ }
35
+
36
+ }
37
+ /**
38
+ * Function to install database tables for google review
39
+ * @global type $wpdb
40
+ * @Since version 1.8
41
+ */
42
+ function saswp_google_review_database_install() {
43
+
44
+ global $wpdb;
45
+
46
+ require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
47
+
48
+ $charset_collate = $engine = '';
49
+
50
+
51
+ if(!empty($wpdb->charset)) {
52
+ $charset_collate .= " DEFAULT CHARACTER SET {$wpdb->charset}";
53
+ }
54
+ if($wpdb->has_cap('collation') AND !empty($wpdb->collate)) {
55
+ $charset_collate .= " COLLATE {$wpdb->collate}";
56
+ }
57
+
58
+ $found_engine = $wpdb->get_var("SELECT ENGINE FROM `information_schema`.`TABLES` WHERE `TABLE_SCHEMA` = '".DB_NAME."' AND `TABLE_NAME` = '{$wpdb->prefix}posts';");
59
+
60
+ if(strtolower($found_engine) == 'innodb') {
61
+ $engine = ' ENGINE=InnoDB';
62
+ }
63
+
64
+ $found_tables = $wpdb->get_col("SHOW TABLES LIKE '{$wpdb->prefix}saswp%';");
65
+
66
+ if(!in_array("{$wpdb->prefix}saswp_google_place", $found_tables)) {
67
+
68
+ dbDelta("CREATE TABLE `{$wpdb->prefix}saswp_google_place` (".
69
+ "id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,".
70
+ "place_id VARCHAR(80) NOT NULL,".
71
+ "name VARCHAR(255) NOT NULL,".
72
+ "photo VARCHAR(425),".
73
+ "icon VARCHAR(255),".
74
+ "address VARCHAR(255),".
75
+ "rating DOUBLE PRECISION,".
76
+ "url VARCHAR(255),".
77
+ "website VARCHAR(255),".
78
+ "updated BIGINT(20),".
79
+ "PRIMARY KEY (`id`),".
80
+ "UNIQUE INDEX saswp_place_id (`place_id`)".
81
+ ") ".$charset_collate.$engine.";");
82
+
83
+ }
84
+
85
+ if(!in_array("{$wpdb->prefix}saswp_google_review", $found_tables)) {
86
+
87
+ dbDelta("CREATE TABLE `{$wpdb->prefix}saswp_google_review` (".
88
+ "id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,".
89
+ "google_place_id BIGINT(20) UNSIGNED NOT NULL,".
90
+ "hash VARCHAR(40) NOT NULL,".
91
+ "rating INTEGER NOT NULL,".
92
+ "text VARCHAR(10000),".
93
+ "time INTEGER NOT NULL,".
94
+ "language VARCHAR(10),".
95
+ "author_name VARCHAR(255),".
96
+ "author_url VARCHAR(255),".
97
+ "profile_photo_url VARCHAR(255),".
98
+ "PRIMARY KEY (`id`),".
99
+ "UNIQUE INDEX saswp_google_review_hash (`hash`),".
100
+ "INDEX saswp_google_place_id (`google_place_id`)".
101
+ ") ".$charset_collate.$engine.";");
102
+
103
+ }
104
+
105
+ }
106
+ /**
107
+ * Function to retrive google review data from google with maps api
108
+ * @param type $place_id
109
+ * @param string $language
110
+ * @return type array
111
+ * @Since version 1.8
112
+ */
113
+ function saswp_get_google_review_data($place_id, $language=null){
114
+
115
+ if($language){
116
+
117
+ $language = '&language='.$language;
118
+
119
+ }
120
+
121
+ if($place_id){
122
+
123
+ $result = wp_remote_get('https://maps.googleapis.com/maps/api/place/details/json?placeid='.$place_id.'&key=AIzaSyAQ1j_iD1npoqTRuhrIx-ADeVZjQddUqKs'.$language);
124
+
125
+ if($result){
126
+
127
+ $result = json_decode($result['body']);
128
+ $result->result->business_photo = saswp_business_image($result->result);
129
+ $response = saswp_save_google_reviews($result->result);
130
+ return $response;
131
+ }
132
+
133
+ }
134
+
135
+ }
136
+ /**
137
+ * Function to save retrived google review data from google place
138
+ * @global type $wpdb
139
+ * @param type $place
140
+ * @return type string
141
+ * @Since version 1.8
142
+ */
143
+ function saswp_save_google_reviews($place) {
144
+
145
+ global $wpdb;
146
+ $response = null;
147
+
148
+ $google_place_id = $wpdb->get_var($wpdb->prepare("SELECT id FROM " . $wpdb->prefix . "saswp_google_place WHERE place_id = %s", $place->place_id));
149
+
150
+ if ($google_place_id) {
151
+
152
+ $response = $wpdb->update($wpdb->prefix . 'saswp_google_place', array(
153
+ 'name' => $place->name,
154
+ 'photo' => $place->business_photo,
155
+ 'rating' => $place->rating
156
+ ), array('ID' => $google_place_id));
157
+
158
+ } else {
159
+
160
+ $response = $wpdb->insert($wpdb->prefix . 'saswp_google_place', array(
161
+ 'place_id' => $place->place_id,
162
+ 'name' => $place->name,
163
+ 'photo' => $place->business_photo,
164
+ 'icon' => $place->icon,
165
+ 'address' => $place->formatted_address,
166
+ 'rating' => isset($place->rating) ? $place->rating : null,
167
+ 'url' => isset($place->url) ? $place->url : null,
168
+ 'website' => isset($place->website) ? $place->website : null
169
+ ));
170
+
171
+ $google_place_id = $wpdb->insert_id;
172
+
173
+ }
174
+
175
+ if ($place->reviews) {
176
+
177
+ $reviews = $place->reviews;
178
+
179
+ foreach ($reviews as $review) {
180
+
181
+ $google_review_id = $wpdb->get_var($wpdb->prepare("SELECT id FROM " . $wpdb->prefix . "saswp_google_review WHERE time = %s", $review->time));
182
+
183
+ if ($google_review_id) {
184
+
185
+ $update_params = array(
186
+ 'rating' => $review->rating,
187
+ 'text' => $review->text
188
+ );
189
+
190
+ if (isset($review->profile_photo_url)) {
191
+
192
+ $update_params['profile_photo_url'] = $review->profile_photo_url;
193
+
194
+ }
195
+
196
+ $response = $wpdb->update($wpdb->prefix . 'saswp_google_review', $update_params, array('id' => $google_review_id));
197
+
198
+ } else {
199
+
200
+ $response = $wpdb->insert($wpdb->prefix . 'saswp_google_review', array(
201
+ 'google_place_id' => $google_place_id,
202
+ 'hash' => $review->time,
203
+ 'rating' => $review->rating,
204
+ 'text' => $review->text,
205
+ 'time' => $review->time,
206
+ 'language' => $review->language,
207
+ 'author_name' => $review->author_name,
208
+ 'author_url' => isset($review->author_url) ? $review->author_url : null,
209
+ 'profile_photo_url' => isset($review->profile_photo_url) ? $review->profile_photo_url : null
210
+ ));
211
+
212
+ }
213
+ }
214
+ }
215
+
216
+ return $response;
217
+ }
218
+ /**
219
+ * Function to retrive image from google place
220
+ * @global type $sd_data
221
+ * @param type $result_json
222
+ * @return type string
223
+ * @Since version 1.8
224
+ */
225
+ function saswp_business_image($result_json) {
226
+
227
+ global $sd_data;
228
+
229
+ if (isset($result_json->photos)) {
230
+
231
+ $request_url = add_query_arg(
232
+ array(
233
+ 'photoreference' => $result_json->photos[0]->photo_reference,
234
+ 'key' => isset($sd_data['google_place_api_key']) ? $sd_data['google_place_api_key']:'',
235
+ 'maxwidth' => '300',
236
+ 'maxheight' => '300',
237
+ ),
238
+ 'https://maps.googleapis.com/maps/api/place/photo'
239
+ );
240
+
241
+ return $request_url;
242
+
243
+ }
244
+ return null;
245
+ }
google_review/google_review_widget.php ADDED
@@ -0,0 +1,129 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Google Review Widget Class
4
+ *
5
+ * @author Magazine3
6
+ * @category Admin
7
+ * @path google_review/google_review_widget
8
+ * @Version 1.8
9
+ */
10
+
11
+ // Exit if accessed directly.
12
+ if ( ! defined( 'ABSPATH' ) ) exit;
13
+
14
+ /*
15
+ * To change this license header, choose License Headers in Project Properties.
16
+ * To change this template file, choose Tools | Templates
17
+ * and open the template in the editor.
18
+ */
19
+ /**
20
+ * Adds Saswp_Google_Review_Widget widget.
21
+ */
22
+ class Saswp_Google_Review_Widget extends WP_Widget {
23
+
24
+ /**
25
+ * Register widget with WordPress.
26
+ */
27
+ function __construct() {
28
+ parent::__construct(
29
+ 'saswp_google_review_widget', // Base ID
30
+ esc_html__( 'Schema Google Review', 'schema-and-structured-data-for-wp' ), // Name
31
+ array( 'description' => esc_html__( 'Widget to display google reviews', 'schema-and-structured-data-for-wp' ), ) // Args
32
+ );
33
+ }
34
+
35
+ /**
36
+ * Front-end display of widget.
37
+ *
38
+ * @see WP_Widget::widget()
39
+ *
40
+ * @param array $args Widget arguments.
41
+ * @param array $instance Saved values from database.
42
+ */
43
+ public function widget( $args, $instance ) {
44
+
45
+ echo html_entity_decode(esc_attr($args['before_widget']));
46
+
47
+ if ( ! class_exists('saswp_google_review')) {
48
+ require_once SASWP_DIR_NAME.'/google_review/google_review.php';
49
+ }
50
+
51
+ $object = new saswp_google_review();
52
+ $all_ads = $object->saswp_fetch_all_google_review_post();
53
+ $goolge_review_obj = new saswp_google_review();
54
+
55
+ foreach($all_ads as $ad){
56
+
57
+ if($ad->ID == $instance['g_review']){
58
+
59
+ $ad_code = $object->saswp_google_review_front_output($instance['g_review']);
60
+ $goolge_review = $goolge_review_obj->saswp_get_google_review_schema_markup($instance['g_review']);
61
+
62
+ if($goolge_review){
63
+ echo $ad_code . $goolge_review;
64
+ } else {
65
+ echo $ad_code;
66
+ }
67
+ }
68
+ }
69
+ echo html_entity_decode(esc_attr($args['after_widget']));
70
+ }
71
+
72
+ /**
73
+ * Back-end widget form.
74
+ *
75
+ * @see WP_Widget::form()
76
+ *
77
+ * @param array $instance Previously saved values from database.
78
+ */
79
+ public function form( $instance ) {
80
+
81
+ $title = ! empty( $instance['title'] ) ? $instance['title'] : esc_html__( 'Review Title', 'schema-and-structured-data-for-wp' );
82
+ $ads = ! empty( $instance['g_review'] ) ? $instance['g_review'] : esc_html__( 'review list to be display', 'schema-and-structured-data-for-wp' );?>
83
+ <p>
84
+ <label for="<?php echo esc_attr( $this->get_field_id( 'g_review' ) ); ?>">
85
+ <?php esc_attr_e( 'Places :', 'schema-and-structured-data-for-wp' ); ?></label><?php
86
+
87
+ $ads_select_html = '';
88
+ if ( ! class_exists('saswp_google_review')) {
89
+ require_once SASWP_DIR_NAME.'/google_review/google_review.php';
90
+ }
91
+ $object = new saswp_google_review();
92
+ $all_ads = $object->saswp_fetch_all_google_review_post();
93
+ foreach($all_ads as $ad){
94
+ $ads_select_html .= '<option '. esc_attr(selected( $ads, $ad->ID, false)).' value="'.esc_attr($ad->ID).'">'.esc_html__($ad->post_title, 'schema-and-structured-data-for-wp').'</option>';
95
+ }
96
+ echo '<select id="'.esc_attr( $this->get_field_id( 'g_review' )).'" name="'.esc_attr( $this->get_field_name( 'g_review' )).'">'
97
+ .$ads_select_html.
98
+ '</select>';?>
99
+ </p><?php
100
+ }
101
+
102
+ /**
103
+ * Sanitize widget form values as they are saved.
104
+ *
105
+ * @see WP_Widget::update()
106
+ *
107
+ * @param array $new_instance Values just sent to be saved.
108
+ * @param array $old_instance Previously saved values from database.
109
+ *
110
+ * @return array Updated safe values to be saved.
111
+ */
112
+ public function update( $new_instance, $old_instance ) {
113
+
114
+ $instance = array();
115
+ $instance['g_review'] = ( ! empty( $new_instance['g_review'] ) ) ? sanitize_text_field( $new_instance['g_review'] ) : '';
116
+ return $instance;
117
+
118
+ }
119
+
120
+ } // class Saswp_Google_Review_Widget
121
+
122
+ /**
123
+ * We are registering our widget here in wordpress
124
+ */
125
+ function register_saswp_google_review_widget(){
126
+ register_widget('Saswp_Google_Review_Widget');
127
+ }
128
+
129
+ add_action('widgets_init', 'register_saswp_google_review_widget');
metaboxes/help.php ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * To change this license header, choose License Headers in Project Properties.
4
+ * To change this template file, choose Tools | Templates
5
+ * and open the template in the editor.
6
+ */
7
+ add_action( 'add_meta_boxes', 'saswp_help_meta_box' );
8
+ function saswp_help_meta_box()
9
+ {
10
+ add_meta_box( 'saswp_help_meta_box_id',
11
+ esc_html__('Help', 'schema-and-structured-data-for-wp' ),
12
+ 'saswp_help_meta_box_cb',
13
+ 'saswp',
14
+ 'advanced', 'low'
15
+ );
16
+ }
17
+
18
+ function saswp_help_meta_box_cb()
19
+ {
20
+ echo '<a href="admin.php?page=structured_data_options&tab=help">'.esc_html__('Need Help', 'schema-and-structured-data-for-wp').'</a>';
21
+ }
readme.txt CHANGED
@@ -3,7 +3,7 @@ Contributors: magazine3
3
  Tags: Schema, Structured Data, Google Snippets, Rich Snippets, Schema.org, SEO, AMP
4
  Requires at least: 3.0
5
  Tested up to: 5.3
6
- Stable tag: 1.9.16.1
7
  License: GPLv2 or later
8
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
9
 
@@ -118,6 +118,10 @@ You can contact us from [here](http://structured-data-for-wp.com/contact-us/)
118
 
119
  == Changelog ==
120
 
 
 
 
 
121
  = 1.9.16.1 (14 Nov 2019) =
122
 
123
  * Fixed: Uncaught TypeError: $ is not a function #609
3
  Tags: Schema, Structured Data, Google Snippets, Rich Snippets, Schema.org, SEO, AMP
4
  Requires at least: 3.0
5
  Tested up to: 5.3
6
+ Stable tag: 1.9.16.2
7
  License: GPLv2 or later
8
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
9
 
118
 
119
  == Changelog ==
120
 
121
+ = 1.9.16.2 (29 Nov 2019) =
122
+
123
+ * Minor Fixes
124
+
125
  = 1.9.16.1 (14 Nov 2019) =
126
 
127
  * Fixed: Uncaught TypeError: $ is not a function #609
structured-data-for-wp.php CHANGED
@@ -2,7 +2,7 @@
2
  /*
3
  Plugin Name: Schema & Structured Data for WP
4
  Description: Schema & Structured Data adds Google Rich Snippets markup according to Schema.org guidelines to structure your site for SEO. (AMP Compatible)
5
- Version: 1.9.16.1
6
  Text Domain: schema-and-structured-data-for-wp
7
  Domain Path: /languages
8
  Author: Magazine3
@@ -13,7 +13,7 @@ License: GPL2
13
  // Exit if accessed directly.
14
  if ( ! defined( 'ABSPATH' ) ) exit;
15
 
16
- define('SASWP_VERSION', '1.9.16.1');
17
  define('SASWP_DIR_NAME_FILE', __FILE__ );
18
  define('SASWP_DIR_NAME', dirname( __FILE__ ));
19
  define('SASWP_DIR_URI', plugin_dir_url(__FILE__));
2
  /*
3
  Plugin Name: Schema & Structured Data for WP
4
  Description: Schema & Structured Data adds Google Rich Snippets markup according to Schema.org guidelines to structure your site for SEO. (AMP Compatible)
5
+ Version: 1.9.16.2
6
  Text Domain: schema-and-structured-data-for-wp
7
  Domain Path: /languages
8
  Author: Magazine3
13
  // Exit if accessed directly.
14
  if ( ! defined( 'ABSPATH' ) ) exit;
15
 
16
+ define('SASWP_VERSION', '1.9.16.2');
17
  define('SASWP_DIR_NAME_FILE', __FILE__ );
18
  define('SASWP_DIR_NAME', dirname( __FILE__ ));
19
  define('SASWP_DIR_URI', plugin_dir_url(__FILE__));