Version Description
- Feature: A-Z Listing shortcode
- Feature: New brands exporter/importer introduced
- Fix: Missing some brands to filter
- Fix: Coupon doesnt work for product variations (thanks @gekomees)
- Fix: The brand description is not shown if there are no products
- Enhancement: wpautop() for brand descriptions
- Enhancement: Other filter by brand widget enhancements
- Enhancement: Brands page link in breadcrumbs
- Enhancement: Enqueue the carousel lib conditionally
- Dev: New filter hook 'pwb_description_allowed_tags'
- Update: WC 3.5 compatibility
Download this release
Release Info
Developer | titodevera |
Plugin | Perfect Brands for WooCommerce |
Version | 1.7.0 |
Comparing to | |
See all releases |
Code changes from version 1.6.5 to 1.7.0
- assets/css/styles-admin.css +44 -0
- assets/css/styles-admin.min.css +1 -1
- assets/css/styles-frontend.css +60 -0
- assets/css/styles-frontend.min.css +1 -1
- assets/img/icon_pwb.jpg +0 -0
- assets/js/functions-admin.js +71 -2
- assets/js/functions-admin.min.js +1 -1
- assets/js/functions-frontend.js +91 -85
- assets/js/functions-frontend.min.js +1 -1
- classes/admin/class-brands-custom-fields.php +3 -2
- classes/admin/class-brands-exporter.php +128 -0
- classes/admin/class-edit-brands-page.php +1 -1
- classes/admin/class-pwb-admin-tab.php +8 -4
- classes/admin/class-pwb-coupon.php +5 -1
- classes/class-perfect-woocommerce-brands.php +66 -38
- classes/class-pwb-api-support.php +1 -4
- classes/shortcodes/class-pwb-all-brands.php +3 -3
- classes/shortcodes/class-pwb-az-listing.php +125 -0
- classes/shortcodes/class-pwb-carousel.php +5 -1
- classes/shortcodes/class-pwb-product-carousel.php +4 -0
- classes/widgets/class-pwb-filter-by-brand.php +54 -57
- lang/perfect-woocommerce-brands-es_ES.mo +0 -0
- lang/perfect-woocommerce-brands-es_ES.po +195 -161
- lang/perfect-woocommerce-brands.pot +192 -154
- main.php +12 -12
- readme.txt +17 -3
- templates/admin/brands-exporter.php +19 -0
- templates/shortcodes/carousel.php +1 -1
- uninstall.php +3 -0
assets/css/styles-admin.css
CHANGED
@@ -105,6 +105,15 @@
|
|
105 |
display: none!important;
|
106 |
}
|
107 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
108 |
/* ----------------------- /Taxonomy pwb-brand ----------------------- */
|
109 |
|
110 |
/* ----------------------- Settings page ----------------------- */
|
@@ -164,3 +173,38 @@ table.wp-list-table .column-taxonomy-pwb-brand{
|
|
164 |
@keyframes pwbblinkkf {
|
165 |
50% { opacity: 0; }
|
166 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
105 |
display: none!important;
|
106 |
}
|
107 |
}
|
108 |
+
.pwb-brands-exporter{
|
109 |
+
margin-top: 20px;
|
110 |
+
padding-top: 20px;
|
111 |
+
border-top: 1px solid #ddd;
|
112 |
+
text-align: right;
|
113 |
+
}
|
114 |
+
.pwb-brands-exporter p{
|
115 |
+
font-style: italic;
|
116 |
+
}
|
117 |
/* ----------------------- /Taxonomy pwb-brand ----------------------- */
|
118 |
|
119 |
/* ----------------------- Settings page ----------------------- */
|
173 |
@keyframes pwbblinkkf {
|
174 |
50% { opacity: 0; }
|
175 |
}
|
176 |
+
@keyframes PWBLoadingOverlay {
|
177 |
+
to {transform: rotate(360deg);}
|
178 |
+
}
|
179 |
+
.pwb-loading-overlay{
|
180 |
+
position: relative;
|
181 |
+
}
|
182 |
+
.pwb-loading-overlay::after{
|
183 |
+
content: "";
|
184 |
+
position: absolute;
|
185 |
+
top: 0;
|
186 |
+
right: 0;
|
187 |
+
bottom: 0;
|
188 |
+
left: 0;
|
189 |
+
background-color: rgba( 255, 255, 255, .7 );
|
190 |
+
z-index: 1;
|
191 |
+
}
|
192 |
+
.pwb-loading-overlay::before{
|
193 |
+
content: "";
|
194 |
+
position: absolute;
|
195 |
+
box-sizing: border-box;
|
196 |
+
top: 50%;
|
197 |
+
left: 50%;
|
198 |
+
width: 15px;
|
199 |
+
height: 15px;
|
200 |
+
margin-top: -7.5px;
|
201 |
+
margin-left: -7.5px;
|
202 |
+
border-radius: 50%;
|
203 |
+
border-top: 2px solid #000;
|
204 |
+
border-right: 2px solid transparent;
|
205 |
+
animation: PWBLoadingOverlay .6s linear infinite;
|
206 |
+
z-index: 1;
|
207 |
+
}
|
208 |
+
input.pwb-brands-import-file{
|
209 |
+
display: none!important;
|
210 |
+
}
|
assets/css/styles-admin.min.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.pwb-clearfix:after{content:"";display:table;clear:both}.pwb-blocked{opacity:.6}.taxonomy-pwb-brand .pwb_brand_image_selected_remove{color:#ff3030;font-family:Arial,Helvetica,sans-serif;text-decoration:none;font-size:20px;font-weight:bold;position:absolute;top:0;right:0;bottom:0;left:0;background-color:rgba(0,0,0,0.5);opacity:0;-webkit-transition:opacity 200ms ease-in-out;-moz-transition:opacity 200ms ease-in-out;-ms-transition:opacity 200ms ease-in-out;-o-transition:opacity 200ms ease-in-out;transition:opacity 200ms ease-in-out}.taxonomy-pwb-brand .pwb_brand_image_selected span{display:inline-block;position:relative;text-align:center;line-height:90px;height:90px}.taxonomy-pwb-brand .pwb_brand_image_selected span:hover .pwb_brand_image_selected_remove{opacity:1}.taxonomy-pwb-brand .pwb_brand_cont #pwb_brand_image,.taxonomy-pwb-brand .pwb_brand_cont #pwb_brand_banner{display:none}.taxonomy-pwb-brand .pwb_brand_cont>div{margin-top:10px}#wp-pwb-brand-description-field-wrap,#brand-description-help-text{width:95%}.taxonomy-pwb-brand .term-description-wrap{display:none!important}.taxonomy-pwb-brand #col-right.pwb-force-full-width .pwb-edit-brands-bottom>span{-ms-transform:rotate(180deg);-webkit-transform:rotate(180deg);transform:rotate(180deg)}.taxonomy-pwb-brand table.wp-list-table .column-featured{width:48px;text-align:center}.taxonomy-pwb-brand .pwb-edit-brands-bottom{margin-top:20px;margin-bottom:20px;background-color:#f6f6f6;border-top:1px solid #e4e4e4;padding:10px}.taxonomy-pwb-brand .pwb-edit-brands-bottom>span:hover{cursor:pointer}.taxonomy-pwb-brand .pwb-edit-brands-bottom>span{float:left}.taxonomy-pwb-brand .pwb-featured-count{font-style:italic;float:right;margin-left:12px;margin-top:0;margin-bottom:0}.taxonomy-pwb-brand table.wp-list-table .column-featured .dashicons-star-empty:hover:before{content:"\f155"}.taxonomy-pwb-brand table .column-featured>span:hover{cursor:pointer}@media screen and (max-width:782px){.taxonomy-pwb-brand .wp-list-table thead th.column-logo,.taxonomy-pwb-brand .wp-list-table tfoot th.column-logo{display:none}.taxonomy-pwb-brand .wp-list-table td.column-logo:before{content:""!important}.taxonomy-pwb-brand .pwb-edit-brands-bottom>span{display:none}}@media screen and (min-width:782px){.taxonomy-pwb-brand #col-right.pwb-force-full-width{width:100%!important}.taxonomy-pwb-brand #col-left.pwb-force-full-width{width:0!important;display:none!important}}#wc_pwb_admin_status_result{display:none;background-color:#f6f6f6;padding:14px}#wc_pwb_admin_tab_tools_system_status{display:none!important}select.pwb-admin-tab-field,input[type="text"].pwb-admin-tab-field{min-width:350px;display:block;height:auto}table.wp-list-table .column-taxonomy-pwb-brand{width:11%!important}.pwb-display-as-logo{display:none}.pwb-display-as-logo.show{display:block}.pwb-notice-dismissible p a{margin-right:12px}.pwb-notice-dismissible .dashicons-heart{color:#f188ff;margin-left:3px}.pwb-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999999999;line-height:1;background:rgba(0,0,0,0.9);font-size:2em;padding-top:20px;text-align:center}.pwb-modal-inner{max-width:70%;margin:0 auto;animation:pwbblinkkf 3s linear infinite;color:#fff}.pwb-modal-inner p{font-size:2em}@keyframes pwbblinkkf{50%{opacity:0}}
|
1 |
+
.pwb-clearfix:after{content:"";display:table;clear:both}.pwb-blocked{opacity:.6}.taxonomy-pwb-brand .pwb_brand_image_selected_remove{color:#ff3030;font-family:Arial,Helvetica,sans-serif;text-decoration:none;font-size:20px;font-weight:bold;position:absolute;top:0;right:0;bottom:0;left:0;background-color:rgba(0,0,0,0.5);opacity:0;-webkit-transition:opacity 200ms ease-in-out;-moz-transition:opacity 200ms ease-in-out;-ms-transition:opacity 200ms ease-in-out;-o-transition:opacity 200ms ease-in-out;transition:opacity 200ms ease-in-out}.taxonomy-pwb-brand .pwb_brand_image_selected span{display:inline-block;position:relative;text-align:center;line-height:90px;height:90px}.taxonomy-pwb-brand .pwb_brand_image_selected span:hover .pwb_brand_image_selected_remove{opacity:1}.taxonomy-pwb-brand .pwb_brand_cont #pwb_brand_image,.taxonomy-pwb-brand .pwb_brand_cont #pwb_brand_banner{display:none}.taxonomy-pwb-brand .pwb_brand_cont>div{margin-top:10px}#wp-pwb-brand-description-field-wrap,#brand-description-help-text{width:95%}.taxonomy-pwb-brand .term-description-wrap{display:none!important}.taxonomy-pwb-brand #col-right.pwb-force-full-width .pwb-edit-brands-bottom>span{-ms-transform:rotate(180deg);-webkit-transform:rotate(180deg);transform:rotate(180deg)}.taxonomy-pwb-brand table.wp-list-table .column-featured{width:48px;text-align:center}.taxonomy-pwb-brand .pwb-edit-brands-bottom{margin-top:20px;margin-bottom:20px;background-color:#f6f6f6;border-top:1px solid #e4e4e4;padding:10px}.taxonomy-pwb-brand .pwb-edit-brands-bottom>span:hover{cursor:pointer}.taxonomy-pwb-brand .pwb-edit-brands-bottom>span{float:left}.taxonomy-pwb-brand .pwb-featured-count{font-style:italic;float:right;margin-left:12px;margin-top:0;margin-bottom:0}.taxonomy-pwb-brand table.wp-list-table .column-featured .dashicons-star-empty:hover:before{content:"\f155"}.taxonomy-pwb-brand table .column-featured>span:hover{cursor:pointer}@media screen and (max-width:782px){.taxonomy-pwb-brand .wp-list-table thead th.column-logo,.taxonomy-pwb-brand .wp-list-table tfoot th.column-logo{display:none}.taxonomy-pwb-brand .wp-list-table td.column-logo:before{content:""!important}.taxonomy-pwb-brand .pwb-edit-brands-bottom>span{display:none}}@media screen and (min-width:782px){.taxonomy-pwb-brand #col-right.pwb-force-full-width{width:100%!important}.taxonomy-pwb-brand #col-left.pwb-force-full-width{width:0!important;display:none!important}}.pwb-brands-exporter{margin-top:20px;padding-top:20px;border-top:1px solid #ddd;text-align:right}.pwb-brands-exporter p{font-style:italic}#wc_pwb_admin_status_result{display:none;background-color:#f6f6f6;padding:14px}#wc_pwb_admin_tab_tools_system_status{display:none!important}select.pwb-admin-tab-field,input[type="text"].pwb-admin-tab-field{min-width:350px;display:block;height:auto}table.wp-list-table .column-taxonomy-pwb-brand{width:11%!important}.pwb-display-as-logo{display:none}.pwb-display-as-logo.show{display:block}.pwb-notice-dismissible p a{margin-right:12px}.pwb-notice-dismissible .dashicons-heart{color:#f188ff;margin-left:3px}.pwb-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999999999;line-height:1;background:rgba(0,0,0,0.9);font-size:2em;padding-top:20px;text-align:center}.pwb-modal-inner{max-width:70%;margin:0 auto;animation:pwbblinkkf 3s linear infinite;color:#fff}.pwb-modal-inner p{font-size:2em}@keyframes pwbblinkkf{50%{opacity:0}}@keyframes PWBLoadingOverlay{to{transform:rotate(360deg)}}.pwb-loading-overlay{position:relative}.pwb-loading-overlay::after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-color:rgba(255,255,255,.7);z-index:1}.pwb-loading-overlay::before{content:"";position:absolute;box-sizing:border-box;top:50%;left:50%;width:15px;height:15px;margin-top:-7.5px;margin-left:-7.5px;border-radius:50%;border-top:2px solid #000;border-right:2px solid transparent;animation:PWBLoadingOverlay .6s linear infinite;z-index:1}input.pwb-brands-import-file{display:none!important}
|
assets/css/styles-frontend.css
CHANGED
@@ -220,6 +220,54 @@
|
|
220 |
}
|
221 |
/* ----------------------- /PWB All Brands ----------------------- */
|
222 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
223 |
/* ----------------------- Filter products widget ----------------------- */
|
224 |
.pwb-filter-products input[type="checkbox"]{
|
225 |
margin-right: 10px;
|
@@ -281,4 +329,16 @@
|
|
281 |
width: 50%;
|
282 |
}
|
283 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
284 |
/* ----------------------- /Responsive ----------------------- */
|
220 |
}
|
221 |
/* ----------------------- /PWB All Brands ----------------------- */
|
222 |
|
223 |
+
/* ----------------------- PWB AZ Listing ----------------------- */
|
224 |
+
.pwb-az-listing-row{
|
225 |
+
margin-bottom: 20px;
|
226 |
+
}
|
227 |
+
.pwb-az-listing-row-in{
|
228 |
+
margin-left: -5px;
|
229 |
+
margin-right: -5px;
|
230 |
+
}
|
231 |
+
.pwb-az-listing-col{
|
232 |
+
padding: 5px;
|
233 |
+
}
|
234 |
+
.pwb-az-listing-col > a{
|
235 |
+
display: block;
|
236 |
+
text-transform: uppercase;
|
237 |
+
white-space:nowrap;
|
238 |
+
overflow:hidden;
|
239 |
+
}
|
240 |
+
.pwb-az-listing-title{
|
241 |
+
border-bottom: 1px solid #ddd;
|
242 |
+
font-weight: bold;
|
243 |
+
font-size: 115%;
|
244 |
+
text-transform: uppercase;
|
245 |
+
}
|
246 |
+
.pwb-az-listing-header{
|
247 |
+
margin-bottom: 30px;
|
248 |
+
}
|
249 |
+
.pwb-az-listing-header ul{
|
250 |
+
margin: 0;
|
251 |
+
padding: 0;
|
252 |
+
list-style: none;
|
253 |
+
margin-right: -2px;
|
254 |
+
margin-left: -2px;
|
255 |
+
}
|
256 |
+
.pwb-az-listing-header li{
|
257 |
+
display: inline-block;
|
258 |
+
float: left;
|
259 |
+
width: 25px;
|
260 |
+
height: 25px;
|
261 |
+
margin: 2px;
|
262 |
+
line-height: 25px;
|
263 |
+
border: 1px solid #ddd;
|
264 |
+
text-align: center;
|
265 |
+
}
|
266 |
+
.pwb-az-listing-header a{
|
267 |
+
text-transform: uppercase;
|
268 |
+
}
|
269 |
+
/* ----------------------- /PWB AZ Listing ----------------------- */
|
270 |
+
|
271 |
/* ----------------------- Filter products widget ----------------------- */
|
272 |
.pwb-filter-products input[type="checkbox"]{
|
273 |
margin-right: 10px;
|
329 |
width: 50%;
|
330 |
}
|
331 |
}
|
332 |
+
|
333 |
+
@media (min-width: 576px) {
|
334 |
+
.pwb-az-listing-col{
|
335 |
+
width: 50%;
|
336 |
+
float: left;
|
337 |
+
}
|
338 |
+
}
|
339 |
+
@media (min-width: 992px) {
|
340 |
+
.pwb-az-listing-col{
|
341 |
+
width: 25%;
|
342 |
+
}
|
343 |
+
}
|
344 |
/* ----------------------- /Responsive ----------------------- */
|
assets/css/styles-frontend.min.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.pwb-clearfix:after{content:"";display:table;clear:both}.pwb-brand-banner-cont.before-loop{margin-bottom:1em}.pwb-brand-banner-cont.after-loop{margin-top:1em}.pwb-carousel .pwb-slick-slide a{display:block}.pwb-carousel .pwb-slick-slide a>img{margin:0 auto}.pwb-carousel .slick-loading .slick-list,.pwb-product-carousel .slick-loading .slick-list{background:#fff url('./ajax-loader.gif') center center no-repeat}.pwb-carousel .pwb-slick-slide,.pwb-product-carousel .pwb-slick-slide{margin:0 10px}.pwb-carousel .slick-prev,.pwb-carousel .slick-next,.pwb-product-carousel .slick-prev,.pwb-product-carousel .slick-next{font-size:0;position:absolute;top:0;bottom:0;display:block;cursor:pointer;font-size:22px;width:30px;overflow:hidden;text-align:center;color:#aeaeae;border:0;outline:0;z-index:999;background:#eee;opacity:0;transition:opacity .3s ease-in-out;-webkit-transition:opacity .3s ease-in-out;-moz-transition:opacity .3s ease-in-out;-o-transition:opacity .3s ease-in-out}.pwb-carousel .slick-prev>span,.pwb-carousel .slick-next>span,.pwb-product-carousel .slick-prev>span,.pwb-product-carousel .slick-next>span{display:inline-block;height:20px;width:20px;padding:10px;position:absolute;top:50%;margin-top:-20px;left:0;right:0}.pwb-carousel .slick-prev:hover,.pwb-carousel .slick-prev:focus,.pwb-carousel .slick-next:hover,.pwb-carousel .slick-next:focus,.pwb-product-carousel .slick-prev:hover,.pwb-product-carousel .slick-prev:focus,.pwb-product-carousel .slick-next:hover,.pwb-product-carousel .slick-next:focus{outline:0}.pwb-carousel .slick-prev,.pwb-product-carousel .slick-prev{left:0}.pwb-carousel .slick-next,.pwb-product-carousel .slick-next{right:0}.pwb-carousel:hover .slick-next,.pwb-carousel:hover .slick-prev,.pwb-product-carousel:hover .slick-next,.pwb-product-carousel:hover .slick-prev{opacity:.8}.pwb-product-carousel .pwb-amount{display:block;width:100%;margin-bottom:12px}.pwb-carousel,.pwb-product-carousel{min-height:30px}.pwb-carousel .pwb-slick-slide,.pwb-product-carousel .pwb-slick-slide{display:none}.pwb-carousel.slick-initialized .pwb-slick-slide,.pwb-product-carousel.slick-initialized .pwb-slick-slide{display:block}.pwb-carousel .slick-list,.pwb-product-carousel .slick-list{opacity:0;position:absolute}.pwb-carousel.slick-initialized,.pwb-product-carousel.slick-initialized{min-height:none}.pwb-carousel.slick-initialized .slick-list,.pwb-product-carousel.slick-initialized .slick-list{opacity:1;position:relative;transition:opacity .2s ease-in}.pwb-carousel.slick-initialized .pwb-carousel-loader,.pwb-product-carousel.slick-initialized .pwb-carousel-loader{display:none!important;opacity:0!important}.pwb-carousel-loader{font-size:10px;margin:50px auto;text-indent:-9999em;width:30px;height:30px;border-radius:50%;background:#525252;background:-moz-linear-gradient(left,#525252 10%,rgba(82,82,82,0) 42%);background:-webkit-linear-gradient(left,#525252 10%,rgba(82,82,82,0) 42%);background:-o-linear-gradient(left,#525252 10%,rgba(82,82,82,0) 42%);background:-ms-linear-gradient(left,#525252 10%,rgba(82,82,82,0) 42%);background:linear-gradient(to right,#525252 10%,rgba(82,82,82,0) 42%);position:relative;-webkit-animation:PWBCarouselLoader 1.4s infinite linear;animation:PWBCarouselLoader 1.4s infinite linear;-webkit-transform:translateZ(0);-ms-transform:translateZ(0);transform:translateZ(0)}.pwb-carousel-loader:before{width:50%;height:50%;background:#525252;border-radius:100% 0 0 0;position:absolute;top:0;left:0;content:''}.pwb-carousel-loader:after{background:#fff;width:75%;height:75%;border-radius:50%;content:'';margin:auto;position:absolute;top:0;left:0;bottom:0;right:0}@-webkit-keyframes PWBCarouselLoader{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes PWBCarouselLoader{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.pwb-brands-cols-outer{margin-left:-15px;margin-right:-15px}.pwb-all-brands .pwb-pagination-wrapper{margin-top:20px;padding-top:10px;border-top:1px solid #ededed;text-align:right}.pwb-all-brands .pwb-pagination{display:inline-block;margin-right:10px;background-color:#ededed;color:#333;text-align:center;padding:10px}.pwb-all-brands .pwb-brands-cols-outer:after{content:"";display:table;clear:both}.pwb-all-brands .pwb-brands-cols-outer .pwb-brands-col3{padding:0 15px;width:20%;float:left}.pwb-all-brands .pwb-brands-cols-outer .pwb-brands-col3>p:first-child{height:25px;overflow:hidden;font-size:14px}.pwb-filter-products input[type="checkbox"]{margin-right:10px}.pwb-filter-products li{margin-bottom:5px}.pwb-row:after{content:"";display:table;clear:both}.pwb-columns-2{width:50%}.pwb-columns-3{width:33.33333%}.pwb-columns-4{width:25%}.pwb-columns-5{width:20%}.pwb-columns-6{width:16.66666%}.pwb-columns{float:left}@media screen and (max-width:1000px){.pwb-all-brands .pwb-brands-cols-outer .pwb-brands-col3{width:25%}}@media screen and (max-width:700px){.pwb-all-brands .pwb-brands-cols-outer .pwb-brands-col3{width:50%}.pwb-columns-5,.pwb-columns-6{width:25%}}@media screen and (max-width:480px){.pwb-all-brands .pwb-brands-cols-outer .pwb-brands-col3{width:100%;float:none}.pwb-all-brands .pwb-brands-cols-outer .pwb-brands-col3>p:first-child{height:auto}.pwb-columns-3,.pwb-columns-4,.pwb-columns-5,.pwb-columns-6{width:50%}}
|
1 |
+
.pwb-clearfix:after{content:"";display:table;clear:both}.pwb-brand-banner-cont.before-loop{margin-bottom:1em}.pwb-brand-banner-cont.after-loop{margin-top:1em}.pwb-carousel .pwb-slick-slide a{display:block}.pwb-carousel .pwb-slick-slide a>img{margin:0 auto}.pwb-carousel .slick-loading .slick-list,.pwb-product-carousel .slick-loading .slick-list{background:#fff url('./ajax-loader.gif') center center no-repeat}.pwb-carousel .pwb-slick-slide,.pwb-product-carousel .pwb-slick-slide{margin:0 10px}.pwb-carousel .slick-prev,.pwb-carousel .slick-next,.pwb-product-carousel .slick-prev,.pwb-product-carousel .slick-next{font-size:0;position:absolute;top:0;bottom:0;display:block;cursor:pointer;font-size:22px;width:30px;overflow:hidden;text-align:center;color:#aeaeae;border:0;outline:0;z-index:999;background:#eee;opacity:0;transition:opacity .3s ease-in-out;-webkit-transition:opacity .3s ease-in-out;-moz-transition:opacity .3s ease-in-out;-o-transition:opacity .3s ease-in-out}.pwb-carousel .slick-prev>span,.pwb-carousel .slick-next>span,.pwb-product-carousel .slick-prev>span,.pwb-product-carousel .slick-next>span{display:inline-block;height:20px;width:20px;padding:10px;position:absolute;top:50%;margin-top:-20px;left:0;right:0}.pwb-carousel .slick-prev:hover,.pwb-carousel .slick-prev:focus,.pwb-carousel .slick-next:hover,.pwb-carousel .slick-next:focus,.pwb-product-carousel .slick-prev:hover,.pwb-product-carousel .slick-prev:focus,.pwb-product-carousel .slick-next:hover,.pwb-product-carousel .slick-next:focus{outline:0}.pwb-carousel .slick-prev,.pwb-product-carousel .slick-prev{left:0}.pwb-carousel .slick-next,.pwb-product-carousel .slick-next{right:0}.pwb-carousel:hover .slick-next,.pwb-carousel:hover .slick-prev,.pwb-product-carousel:hover .slick-next,.pwb-product-carousel:hover .slick-prev{opacity:.8}.pwb-product-carousel .pwb-amount{display:block;width:100%;margin-bottom:12px}.pwb-carousel,.pwb-product-carousel{min-height:30px}.pwb-carousel .pwb-slick-slide,.pwb-product-carousel .pwb-slick-slide{display:none}.pwb-carousel.slick-initialized .pwb-slick-slide,.pwb-product-carousel.slick-initialized .pwb-slick-slide{display:block}.pwb-carousel .slick-list,.pwb-product-carousel .slick-list{opacity:0;position:absolute}.pwb-carousel.slick-initialized,.pwb-product-carousel.slick-initialized{min-height:none}.pwb-carousel.slick-initialized .slick-list,.pwb-product-carousel.slick-initialized .slick-list{opacity:1;position:relative;transition:opacity .2s ease-in}.pwb-carousel.slick-initialized .pwb-carousel-loader,.pwb-product-carousel.slick-initialized .pwb-carousel-loader{display:none!important;opacity:0!important}.pwb-carousel-loader{font-size:10px;margin:50px auto;text-indent:-9999em;width:30px;height:30px;border-radius:50%;background:#525252;background:-moz-linear-gradient(left,#525252 10%,rgba(82,82,82,0) 42%);background:-webkit-linear-gradient(left,#525252 10%,rgba(82,82,82,0) 42%);background:-o-linear-gradient(left,#525252 10%,rgba(82,82,82,0) 42%);background:-ms-linear-gradient(left,#525252 10%,rgba(82,82,82,0) 42%);background:linear-gradient(to right,#525252 10%,rgba(82,82,82,0) 42%);position:relative;-webkit-animation:PWBCarouselLoader 1.4s infinite linear;animation:PWBCarouselLoader 1.4s infinite linear;-webkit-transform:translateZ(0);-ms-transform:translateZ(0);transform:translateZ(0)}.pwb-carousel-loader:before{width:50%;height:50%;background:#525252;border-radius:100% 0 0 0;position:absolute;top:0;left:0;content:''}.pwb-carousel-loader:after{background:#fff;width:75%;height:75%;border-radius:50%;content:'';margin:auto;position:absolute;top:0;left:0;bottom:0;right:0}@-webkit-keyframes PWBCarouselLoader{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes PWBCarouselLoader{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.pwb-brands-cols-outer{margin-left:-15px;margin-right:-15px}.pwb-all-brands .pwb-pagination-wrapper{margin-top:20px;padding-top:10px;border-top:1px solid #ededed;text-align:right}.pwb-all-brands .pwb-pagination{display:inline-block;margin-right:10px;background-color:#ededed;color:#333;text-align:center;padding:10px}.pwb-all-brands .pwb-brands-cols-outer:after{content:"";display:table;clear:both}.pwb-all-brands .pwb-brands-cols-outer .pwb-brands-col3{padding:0 15px;width:20%;float:left}.pwb-all-brands .pwb-brands-cols-outer .pwb-brands-col3>p:first-child{height:25px;overflow:hidden;font-size:14px}.pwb-az-listing-row{margin-bottom:20px}.pwb-az-listing-row-in{margin-left:-5px;margin-right:-5px}.pwb-az-listing-col{padding:5px}.pwb-az-listing-col>a{display:block;text-transform:uppercase;white-space:nowrap;overflow:hidden}.pwb-az-listing-title{border-bottom:1px solid #ddd;font-weight:bold;font-size:115%;text-transform:uppercase}.pwb-az-listing-header{margin-bottom:30px}.pwb-az-listing-header ul{margin:0;padding:0;list-style:none;margin-right:-2px;margin-left:-2px}.pwb-az-listing-header li{display:inline-block;float:left;width:25px;height:25px;margin:2px;line-height:25px;border:1px solid #ddd;text-align:center}.pwb-az-listing-header a{text-transform:uppercase}.pwb-filter-products input[type="checkbox"]{margin-right:10px}.pwb-filter-products li{margin-bottom:5px}.pwb-row:after{content:"";display:table;clear:both}.pwb-columns-2{width:50%}.pwb-columns-3{width:33.33333%}.pwb-columns-4{width:25%}.pwb-columns-5{width:20%}.pwb-columns-6{width:16.66666%}.pwb-columns{float:left}@media screen and (max-width:1000px){.pwb-all-brands .pwb-brands-cols-outer .pwb-brands-col3{width:25%}}@media screen and (max-width:700px){.pwb-all-brands .pwb-brands-cols-outer .pwb-brands-col3{width:50%}.pwb-columns-5,.pwb-columns-6{width:25%}}@media screen and (max-width:480px){.pwb-all-brands .pwb-brands-cols-outer .pwb-brands-col3{width:100%;float:none}.pwb-all-brands .pwb-brands-cols-outer .pwb-brands-col3>p:first-child{height:auto}.pwb-columns-3,.pwb-columns-4,.pwb-columns-5,.pwb-columns-6{width:50%}}@media(min-width:576px){.pwb-az-listing-col{width:50%;float:left}}@media(min-width:992px){.pwb-az-listing-col{width:25%}}
|
assets/img/icon_pwb.jpg
CHANGED
Binary file
|
assets/js/functions-admin.js
CHANGED
@@ -54,14 +54,16 @@ jQuery( function ( $ ) {
|
|
54 |
});
|
55 |
|
56 |
//clear custom fields when brand is added
|
57 |
-
|
|
|
58 |
//Check ajax action of request that succeeded
|
59 |
if( typeof settings != "undefined" && settings.data && ~settings.data.indexOf("action=add-tag") && ~settings.data.indexOf("taxonomy=pwb-brand") ) {
|
60 |
$('#pwb_brand_image').val('');
|
61 |
$('#pwb_brand_banner').val('');
|
62 |
$('.pwb_brand_image_selected').remove();
|
63 |
}
|
64 |
-
|
|
|
65 |
|
66 |
function add_delete_link( $imageSelectorScope ){
|
67 |
|
@@ -271,4 +273,71 @@ jQuery( function ( $ ) {
|
|
271 |
}
|
272 |
/* ····························· /Widgets ····························· */
|
273 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
274 |
});
|
54 |
});
|
55 |
|
56 |
//clear custom fields when brand is added
|
57 |
+
if( $('body').hasClass('edit-tags-php') && $('body').hasClass('taxonomy-pwb-brand') ){
|
58 |
+
jQuery( document ).ajaxSuccess(function( event, xhr, settings ) {
|
59 |
//Check ajax action of request that succeeded
|
60 |
if( typeof settings != "undefined" && settings.data && ~settings.data.indexOf("action=add-tag") && ~settings.data.indexOf("taxonomy=pwb-brand") ) {
|
61 |
$('#pwb_brand_image').val('');
|
62 |
$('#pwb_brand_banner').val('');
|
63 |
$('.pwb_brand_image_selected').remove();
|
64 |
}
|
65 |
+
});
|
66 |
+
}
|
67 |
|
68 |
function add_delete_link( $imageSelectorScope ){
|
69 |
|
273 |
}
|
274 |
/* ····························· /Widgets ····························· */
|
275 |
|
276 |
+
/* ····························· Brands exporter ····························· */
|
277 |
+
$('button.pwb-brands-export').on('click', function(e){
|
278 |
+
e.preventDefault();
|
279 |
+
|
280 |
+
var $clickedBtn = $(this);
|
281 |
+
$clickedBtn.addClass('pwb-loading-overlay');
|
282 |
+
$clickedBtn.prop("disabled",true);
|
283 |
+
|
284 |
+
var data = { 'action': 'pwb_brands_export' };
|
285 |
+
$.post(ajax_object.ajax_url, data, function(response) {
|
286 |
+
|
287 |
+
if( response.success ){
|
288 |
+
$clickedBtn.removeClass('pwb-loading-overlay');
|
289 |
+
$clickedBtn.prop("disabled",false);
|
290 |
+
|
291 |
+
//descarga el archivo json de exportación
|
292 |
+
$('#pwb-download-export-file').remove();
|
293 |
+
var link = document.createElement("a");
|
294 |
+
link.download = 'brands.json';
|
295 |
+
link.id = 'pwb-download-export-file';
|
296 |
+
link.href = response.data.export_file_url;
|
297 |
+
$('body').append( link );
|
298 |
+
link.click();
|
299 |
+
}
|
300 |
+
|
301 |
+
});
|
302 |
+
|
303 |
+
});
|
304 |
+
|
305 |
+
$('button.pwb-brands-import').on('click', function(e){
|
306 |
+
e.preventDefault();
|
307 |
+
$('input.pwb-brands-import-file').trigger('click');
|
308 |
+
});
|
309 |
+
$('input.pwb-brands-import-file').on('change', function(e){
|
310 |
+
e.preventDefault();
|
311 |
+
|
312 |
+
var $clickedBtn = $('button.pwb-brands-import');
|
313 |
+
$clickedBtn.addClass('pwb-loading-overlay');
|
314 |
+
$clickedBtn.prop("disabled",true);
|
315 |
+
|
316 |
+
var file = $(this)[0].files[0];
|
317 |
+
|
318 |
+
var reqData = new FormData();
|
319 |
+
reqData.append('action', 'pwb_brands_import');
|
320 |
+
reqData.append('file', file);
|
321 |
+
|
322 |
+
$.ajax({
|
323 |
+
url: ajax_object.ajax_url,
|
324 |
+
type: 'post',
|
325 |
+
cache: false,
|
326 |
+
dataType: 'json',
|
327 |
+
contentType: false,
|
328 |
+
processData: false,
|
329 |
+
data: reqData,
|
330 |
+
success: function( resp ){
|
331 |
+
if( resp.success ){
|
332 |
+
$clickedBtn.removeClass('pwb-loading-overlay');
|
333 |
+
location.reload();
|
334 |
+
}else{
|
335 |
+
alert('Importer error');
|
336 |
+
}
|
337 |
+
}
|
338 |
+
});
|
339 |
+
|
340 |
+
})
|
341 |
+
/* ····························· /Brands exporter ····························· */
|
342 |
+
|
343 |
});
|
assets/js/functions-admin.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
jQuery(function(d){var b=null;function a(h,g){var i=g.parent();b=wp.media({frame:"post",state:"insert",multiple:false});b.on("insert",function(){var l=b.state().get("selection").first().toJSON();var m=l.id;var n=l.url;var k='<img src="'+n+'" width="90" height="90">';var j="";switch(h.target.id){case"pwb_brand_image_select":j=".taxonomy-pwb-brand #pwb_brand_image";break;case"pwb_brand_banner_select":j=".taxonomy-pwb-brand #pwb_brand_banner";break}d(j).val(m);d(j+"_result").remove();if(d(".pwb_brand_image_selected",i).length){d(".pwb_brand_image_selected span",i).html(k)}else{i.append('<div class="pwb_brand_image_selected"><span>'+k+"</span></div>")}c(i)});b.open()}d(".taxonomy-pwb-brand #pwb_brand_image_select, .taxonomy-pwb-brand #pwb_brand_banner_select").on("click",function(g){a(g,d(this))});d(".taxonomy-pwb-brand #pwb_brand_image_select, .taxonomy-pwb-brand #pwb_brand_banner_select").each(function(){c(d(this).parent())});jQuery(document).ajaxSuccess(function(h,i,g){if(typeof g!="undefined"&&g.data&&~g.data.indexOf("action=add-tag")&&~g.data.indexOf("taxonomy=pwb-brand")){d("#pwb_brand_image").val("");d("#pwb_brand_banner").val("");d(".pwb_brand_image_selected").remove()}})
|
1 |
+
jQuery(function(d){var b=null;function a(h,g){var i=g.parent();b=wp.media({frame:"post",state:"insert",multiple:false});b.on("insert",function(){var l=b.state().get("selection").first().toJSON();var m=l.id;var n=l.url;var k='<img src="'+n+'" width="90" height="90">';var j="";switch(h.target.id){case"pwb_brand_image_select":j=".taxonomy-pwb-brand #pwb_brand_image";break;case"pwb_brand_banner_select":j=".taxonomy-pwb-brand #pwb_brand_banner";break}d(j).val(m);d(j+"_result").remove();if(d(".pwb_brand_image_selected",i).length){d(".pwb_brand_image_selected span",i).html(k)}else{i.append('<div class="pwb_brand_image_selected"><span>'+k+"</span></div>")}c(i)});b.open()}d(".taxonomy-pwb-brand #pwb_brand_image_select, .taxonomy-pwb-brand #pwb_brand_banner_select").on("click",function(g){a(g,d(this))});d(".taxonomy-pwb-brand #pwb_brand_image_select, .taxonomy-pwb-brand #pwb_brand_banner_select").each(function(){c(d(this).parent())});if(d("body").hasClass("edit-tags-php")&&d("body").hasClass("taxonomy-pwb-brand")){jQuery(document).ajaxSuccess(function(h,i,g){if(typeof g!="undefined"&&g.data&&~g.data.indexOf("action=add-tag")&&~g.data.indexOf("taxonomy=pwb-brand")){d("#pwb_brand_image").val("");d("#pwb_brand_banner").val("");d(".pwb_brand_image_selected").remove()}})}function c(g){d(".pwb_brand_image_selected span",g).append('<a href="#" class="pwb_brand_image_selected_remove">X</a>');d(".pwb_brand_image_selected_remove",g).on("click",function(h){h.preventDefault();d(this).closest(".pwb_brand_image_selected").remove();d("#pwb_brand_image",g).val("");d("#pwb_brand_banner",g).val("")})}d(".taxonomy-pwb-brand table .column-featured > span").not("pwb-blocked").on("click",function(h){h.preventDefault();var i=d(this);i.addClass("pwb-blocked");if(i.hasClass("dashicons-star-filled")){i.removeClass("dashicons-star-filled");i.addClass("dashicons-star-empty")}else{i.removeClass("dashicons-star-empty");i.addClass("dashicons-star-filled")}var g={action:"pwb_admin_set_featured_brand",brand:i.data("brand-id")};d.post(ajax_object.ajax_url,g,function(j){i.removeClass("pwb-blocked");if(j.success){var k=d(".taxonomy-pwb-brand .pwb-featured-count > span");if(j.data.direction=="up"){k.html(parseInt(k.text())+1)}else{k.html(parseInt(k.text())-1)}}else{alert(j.data.error_msg)}})});d(".taxonomy-pwb-brand #pwb-first-featured-brands").on("change",function(h){h.preventDefault();d("#screen-options-apply").replaceWith('<img src="'+ajax_object.site_url+'/wp-admin/images/loading.gif">');var g={action:"pwb_admin_save_screen_settings",new_val:d(this).is(":checked")};d.post(ajax_object.ajax_url,g,function(i){location.reload()})});d(".pwb-edit-brands-bottom > span").on("click",function(g){g.preventDefault();d(".taxonomy-pwb-brand #col-left").toggleClass("pwb-force-full-width");d(".taxonomy-pwb-brand #col-right").toggleClass("pwb-force-full-width")});d("#wc_pwb_admin_tab_tools_migrate").on("change",function(){if(d(this).val()!="-"){if(confirm(ajax_object.translations.migrate_notice)){d("html").append('<div class="pwb-modal"><div class="pwb-modal-inner"></div></div>');d(".pwb-modal-inner").html("<p>"+ajax_object.translations.migrating+"</p>");var g={action:"pwb_admin_migrate_brands",from:d(this).val()};d.post(ajax_object.ajax_url,g,function(h){setTimeout(function(){location.href=ajax_object.brands_url},1000)})}else{}}d(this).val("-")});d("#wc_pwb_admin_tab_tools_dummy_data").on("change",function(){if(d(this).val()!="-"){if(confirm(ajax_object.translations.dummy_data_notice)){d("html").append('<div class="pwb-modal"><div class="pwb-modal-inner"></div></div>');d(".pwb-modal-inner").html("<p>"+ajax_object.translations.dummy_data+"</p>");var g={action:"pwb_admin_dummy_data",from:d(this).val()};d.post(ajax_object.ajax_url,g,function(h){setTimeout(function(){location.href=ajax_object.brands_url},1000)})}else{}}d(this).val("-")});var f=d("#wc_pwb_admin_tab_tools_system_status").siblings("p");f.addClass("button wc_pwb_admin_tab_status_btn");d(".wc_pwb_admin_tab_status_btn").on("click",function(h){h.preventDefault();if(!d("#wc_pwb_admin_status_result").length){$systemStatusTextarea=d("#wc_pwb_admin_tab_tools_system_status");d('<pre id="wc_pwb_admin_status_result"></pre>').insertAfter($systemStatusTextarea);jQuery("#wc_pwb_admin_status_result").click(function(l){l.preventDefault();var j=d(this)[0];if(d.browser.msie){var i=document.body.createTextRange();i.moveToElementText(j);i.select()}else{if(d.browser.mozilla||d.browser.opera){var k=window.getSelection();var i=document.createRange();i.selectNodeContents(j);k.removeAllRanges();k.addRange(i)}else{if(d.browser.safari){var k=window.getSelection();k.setBaseAndExtent(j,0,j,1)}}}})}d("#wc_pwb_admin_status_result").html('<img src="'+ajax_object.site_url+'/wp-admin/images/spinner.gif" alt="Loading" height="20" width="20">');d("#wc_pwb_admin_status_result").show();var g={action:"pwb_system_status"};jQuery.post(ajaxurl,g,function(i){d("#wc_pwb_admin_status_result").html(i);d("#wc_pwb_admin_status_result").trigger("click")})});d(document).on("click",".pwb-notice-dismissible .notice-dismiss",function(i){i.preventDefault();var g=d(this).closest(".pwb-notice-dismissible").data("notice");var h={action:"dismiss_pwb_notice",notice_name:g};jQuery.post(ajaxurl,h,function(j){})});e();jQuery(document).bind("widget-added",function(h,g){e(g)});jQuery(document).on("widget-updated",function(h,g){e(g)});function e(g){$currentWidget=d(".pwb-select-display-as");if(g!=undefined){$currentWidget=d(".pwb-select-display-as",g)}$currentWidget.on("change",function(){if(d(this).val()=="brand_logo"){d(this).parent().siblings(".pwb-display-as-logo").addClass("show")}else{d(this).parent().siblings(".pwb-display-as-logo").removeClass("show")}})}d("button.pwb-brands-export").on("click",function(i){i.preventDefault();var h=d(this);h.addClass("pwb-loading-overlay");h.prop("disabled",true);var g={action:"pwb_brands_export"};d.post(ajax_object.ajax_url,g,function(j){if(j.success){h.removeClass("pwb-loading-overlay");h.prop("disabled",false);d("#pwb-download-export-file").remove();var k=document.createElement("a");k.download="brands.json";k.id="pwb-download-export-file";k.href=j.data.export_file_url;d("body").append(k);k.click()}})});d("button.pwb-brands-import").on("click",function(g){g.preventDefault();d("input.pwb-brands-import-file").trigger("click")});d("input.pwb-brands-import-file").on("change",function(j){j.preventDefault();var i=d("button.pwb-brands-import");i.addClass("pwb-loading-overlay");i.prop("disabled",true);var h=d(this)[0].files[0];var g=new FormData();g.append("action","pwb_brands_import");g.append("file",h);d.ajax({url:ajax_object.ajax_url,type:"post",cache:false,dataType:"json",contentType:false,processData:false,data:g,success:function(k){if(k.success){i.removeClass("pwb-loading-overlay");location.reload()}else{alert("Importer error")}}})})});
|
assets/js/functions-frontend.js
CHANGED
@@ -5,107 +5,113 @@ jQuery( function ( $ ) {
|
|
5 |
location.href = href;
|
6 |
});
|
7 |
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
|
|
|
|
43 |
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
|
|
|
80 |
|
81 |
/* ··························· Filter by brand widget ··························· */
|
82 |
|
83 |
var PWBFilterByBrand = function(){
|
84 |
|
|
|
85 |
var currentUrl = window.location.href;
|
86 |
|
87 |
-
var marcas =
|
88 |
$('.pwb-filter-products input[type="checkbox"]').each(function(index){
|
89 |
-
|
90 |
-
if(checked){
|
91 |
-
marcas+=$(this).val();
|
92 |
-
if($('.pwb-filter-products input[type="checkbox"]').length-1 != index){
|
93 |
-
marcas+=',';
|
94 |
-
}
|
95 |
-
}
|
96 |
});
|
|
|
|
|
|
|
97 |
|
98 |
-
|
99 |
-
|
100 |
|
101 |
-
|
102 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
103 |
|
104 |
-
if( currentUrl.indexOf("?") === -1 ){
|
105 |
-
currentUrl = currentUrl + '?pwb-brand-filter='+marcas;
|
106 |
}else{
|
107 |
-
currentUrl =
|
108 |
}
|
|
|
109 |
location.href = currentUrl;
|
110 |
|
111 |
}
|
5 |
location.href = href;
|
6 |
});
|
7 |
|
8 |
+
if( typeof $.fn.slick === 'function' ){
|
9 |
+
|
10 |
+
$('.pwb-carousel').slick({
|
11 |
+
slide: '.pwb-slick-slide',
|
12 |
+
infinite: true,
|
13 |
+
draggable: false,
|
14 |
+
prevArrow: '<div class="slick-prev"><span title="Prev"><</span></div>',
|
15 |
+
nextArrow: '<div class="slick-next"><span title="Next">></span></div>',
|
16 |
+
speed: 300,
|
17 |
+
lazyLoad: 'progressive',
|
18 |
+
responsive: [
|
19 |
+
{
|
20 |
+
breakpoint: 1024,
|
21 |
+
settings: {
|
22 |
+
slidesToShow: 4,
|
23 |
+
draggable: true,
|
24 |
+
arrows: false
|
25 |
+
}
|
26 |
+
},
|
27 |
+
{
|
28 |
+
breakpoint: 600,
|
29 |
+
settings: {
|
30 |
+
slidesToShow: 3,
|
31 |
+
draggable: true,
|
32 |
+
arrows: false
|
33 |
+
}
|
34 |
+
},
|
35 |
+
{
|
36 |
+
breakpoint: 480,
|
37 |
+
settings: {
|
38 |
+
slidesToShow: 2,
|
39 |
+
draggable: true,
|
40 |
+
arrows: false
|
41 |
+
}
|
42 |
+
}
|
43 |
+
]
|
44 |
+
});
|
45 |
|
46 |
+
$('.pwb-product-carousel').slick({
|
47 |
+
slide: '.pwb-slick-slide',
|
48 |
+
infinite: true,
|
49 |
+
draggable: false,
|
50 |
+
prevArrow: '<div class="slick-prev"><span title="Prev"><</span></div>',
|
51 |
+
nextArrow: '<div class="slick-next"><span title="Next">></span></div>',
|
52 |
+
speed: 300,
|
53 |
+
lazyLoad: 'progressive',
|
54 |
+
responsive: [
|
55 |
+
{
|
56 |
+
breakpoint: 1024,
|
57 |
+
settings: {
|
58 |
+
slidesToShow: 3,
|
59 |
+
draggable: true,
|
60 |
+
arrows: false
|
61 |
+
}
|
62 |
+
},
|
63 |
+
{
|
64 |
+
breakpoint: 600,
|
65 |
+
settings: {
|
66 |
+
slidesToShow: 2,
|
67 |
+
draggable: true,
|
68 |
+
arrows: false
|
69 |
+
}
|
70 |
+
},
|
71 |
+
{
|
72 |
+
breakpoint: 480,
|
73 |
+
settings: {
|
74 |
+
slidesToShow: 1,
|
75 |
+
draggable: true,
|
76 |
+
arrows: false
|
77 |
+
}
|
78 |
+
}
|
79 |
+
]
|
80 |
+
});
|
81 |
|
82 |
+
}
|
83 |
|
84 |
/* ··························· Filter by brand widget ··························· */
|
85 |
|
86 |
var PWBFilterByBrand = function(){
|
87 |
|
88 |
+
var baseUrl = [location.protocol, '//', location.host, location.pathname].join('');
|
89 |
var currentUrl = window.location.href;
|
90 |
|
91 |
+
var marcas = [];
|
92 |
$('.pwb-filter-products input[type="checkbox"]').each(function(index){
|
93 |
+
if( $(this).prop('checked') ) marcas.push( $(this).val() );
|
|
|
|
|
|
|
|
|
|
|
|
|
94 |
});
|
95 |
+
marcas = marcas.join();
|
96 |
+
|
97 |
+
if( marcas ){
|
98 |
|
99 |
+
//removes previous "pwb-brand" from url
|
100 |
+
currentUrl = currentUrl.replace(/&?pwb-brand-filter=([^&]$|[^&]*)/i, "");
|
101 |
|
102 |
+
//removes pagination
|
103 |
+
currentUrl = currentUrl.replace(/\/page\/\d*\//i, "");
|
104 |
+
|
105 |
+
if( currentUrl.indexOf("?") === -1 ){
|
106 |
+
currentUrl = currentUrl + '?pwb-brand-filter='+marcas;
|
107 |
+
}else{
|
108 |
+
currentUrl = currentUrl + '&pwb-brand-filter='+marcas;
|
109 |
+
}
|
110 |
|
|
|
|
|
111 |
}else{
|
112 |
+
currentUrl = baseUrl;
|
113 |
}
|
114 |
+
|
115 |
location.href = currentUrl;
|
116 |
|
117 |
}
|
assets/js/functions-frontend.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
jQuery(function(e){e(".pwb-dropdown-widget").on("change",function(){var g=e(this).find(":selected").val();location.href=g});e(".pwb-carousel").slick({slide:".pwb-slick-slide",infinite:true,draggable:false,prevArrow:'<div class="slick-prev"><span title="Prev"><</span></div>',nextArrow:'<div class="slick-next"><span title="Next">></span></div>',speed:300,lazyLoad:"progressive",responsive:[{breakpoint:1024,settings:{slidesToShow:4,draggable:true,arrows:false}},{breakpoint:600,settings:{slidesToShow:3,draggable:true,arrows:false}},{breakpoint:480,settings:{slidesToShow:2,draggable:true,arrows:false}}]});e(".pwb-product-carousel").slick({slide:".pwb-slick-slide",infinite:true,draggable:false,prevArrow:'<div class="slick-prev"><span title="Prev"><</span></div>',nextArrow:'<div class="slick-next"><span title="Next">></span></div>',speed:300,lazyLoad:"progressive",responsive:[{breakpoint:1024,settings:{slidesToShow:3,draggable:true,arrows:false}},{breakpoint:600,settings:{slidesToShow:2,draggable:true,arrows:false}},{breakpoint:480,settings:{slidesToShow:1,draggable:true,arrows:false}}]})
|
1 |
+
jQuery(function(e){e(".pwb-dropdown-widget").on("change",function(){var g=e(this).find(":selected").val();location.href=g});if(typeof e.fn.slick==="function"){e(".pwb-carousel").slick({slide:".pwb-slick-slide",infinite:true,draggable:false,prevArrow:'<div class="slick-prev"><span title="Prev"><</span></div>',nextArrow:'<div class="slick-next"><span title="Next">></span></div>',speed:300,lazyLoad:"progressive",responsive:[{breakpoint:1024,settings:{slidesToShow:4,draggable:true,arrows:false}},{breakpoint:600,settings:{slidesToShow:3,draggable:true,arrows:false}},{breakpoint:480,settings:{slidesToShow:2,draggable:true,arrows:false}}]});e(".pwb-product-carousel").slick({slide:".pwb-slick-slide",infinite:true,draggable:false,prevArrow:'<div class="slick-prev"><span title="Prev"><</span></div>',nextArrow:'<div class="slick-next"><span title="Next">></span></div>',speed:300,lazyLoad:"progressive",responsive:[{breakpoint:1024,settings:{slidesToShow:3,draggable:true,arrows:false}},{breakpoint:600,settings:{slidesToShow:2,draggable:true,arrows:false}},{breakpoint:480,settings:{slidesToShow:1,draggable:true,arrows:false}}]})}var f=function(){var h=[location.protocol,"//",location.host,location.pathname].join("");var i=window.location.href;var g=[];e('.pwb-filter-products input[type="checkbox"]').each(function(j){if(e(this).prop("checked")){g.push(e(this).val())}});g=g.join();if(g){i=i.replace(/&?pwb-brand-filter=([^&]$|[^&]*)/i,"");i=i.replace(/\/page\/\d*\//i,"");if(i.indexOf("?")===-1){i=i+"?pwb-brand-filter="+g}else{i=i+"&pwb-brand-filter="+g}}else{i=h}location.href=i};e(".pwb-filter-products button").on("click",function(){f()});e(".pwb-filter-products.pwb-hide-submit-btn input").on("change",function(){f()});var d=PWBgetUrlParameter("pwb-brand-filter");if(d!=null){var b=d.split(",");e('.pwb-filter-products input[type="checkbox"]').prop("checked",false);for(var c=0,a=b.length;c<a;c++){e('.pwb-filter-products input[type="checkbox"]').each(function(g){if(e(this).val()){if(b[c]==e(this).val()){e(this).prop("checked",true)}}})}}else{e('.pwb-filter-products input[type="checkbox"]').prop("checked",false)}});var PWBgetUrlParameter=function PWBgetUrlParameter(a){var d=decodeURIComponent(window.location.search.substring(1)),c=d.split("&"),e,b;for(b=0;b<c.length;b++){e=c[b].split("=");if(e[0]===a){return e[1]===undefined?true:e[1]}}};
|
classes/admin/class-brands-custom-fields.php
CHANGED
@@ -161,10 +161,11 @@ class Brands_Custom_Fields {
|
|
161 |
|
162 |
/* ·············· Brand desc ·············· */
|
163 |
if( isset( $_POST['pwb_brand_description_field'] ) ){
|
164 |
-
$
|
165 |
-
|
166 |
'<p><span><a><ul><ol><li><h1><h2><h3><h4><h5><h6><pre><strong><em><blockquote><del><ins><img><code><hr>'
|
167 |
);
|
|
|
168 |
global $wpdb;
|
169 |
$wpdb->update( $wpdb->term_taxonomy, [ 'description' => $desc ], [ 'term_id' => $term_id ] );
|
170 |
}
|
161 |
|
162 |
/* ·············· Brand desc ·············· */
|
163 |
if( isset( $_POST['pwb_brand_description_field'] ) ){
|
164 |
+
$allowed_tags = apply_filters(
|
165 |
+
'pwb_description_allowed_tags',
|
166 |
'<p><span><a><ul><ol><li><h1><h2><h3><h4><h5><h6><pre><strong><em><blockquote><del><ins><img><code><hr>'
|
167 |
);
|
168 |
+
$desc = strip_tags( wp_unslash( $_POST['pwb_brand_description_field'] ), $allowed_tags );
|
169 |
global $wpdb;
|
170 |
$wpdb->update( $wpdb->term_taxonomy, [ 'description' => $desc ], [ 'term_id' => $term_id ] );
|
171 |
}
|
classes/admin/class-brands-exporter.php
ADDED
@@ -0,0 +1,128 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
namespace Perfect_Woocommerce_Brands\Admin;
|
3 |
+
|
4 |
+
defined( 'ABSPATH' ) or die( 'No script kiddies please!' );
|
5 |
+
|
6 |
+
class Brands_Exporter {
|
7 |
+
|
8 |
+
function __construct(){
|
9 |
+
add_action( 'after-pwb-brand-table', array( $this, 'exporter_button' ) );
|
10 |
+
add_action( 'wp_ajax_pwb_brands_export', array( $this, 'export_brands' ) );
|
11 |
+
add_action( 'wp_ajax_pwb_brands_import', array( $this, 'import_brands' ) );
|
12 |
+
}
|
13 |
+
|
14 |
+
public function exporter_button(){
|
15 |
+
echo \Perfect_Woocommerce_Brands\Perfect_Woocommerce_Brands::render_template(
|
16 |
+
'brands-exporter', 'admin', array( 'ok' => 'va' )
|
17 |
+
);
|
18 |
+
}
|
19 |
+
|
20 |
+
public function export_brands(){
|
21 |
+
$this->get_brands();
|
22 |
+
wp_die();
|
23 |
+
}
|
24 |
+
|
25 |
+
private function get_brands(){
|
26 |
+
|
27 |
+
$brands_data = array();
|
28 |
+
|
29 |
+
$brands = get_terms( 'pwb-brand',array( 'hide_empty' => false ) );
|
30 |
+
foreach( $brands as $brand ){
|
31 |
+
|
32 |
+
$current_brand = array(
|
33 |
+
'slug' => $brand->slug,
|
34 |
+
'name' => $brand->name,
|
35 |
+
'banner_link' => get_term_meta( $brand->term_id, 'pwb_brand_banner_link', true ),
|
36 |
+
'desc' => htmlentities( $brand->description )
|
37 |
+
);
|
38 |
+
|
39 |
+
$image = get_term_meta( $brand->term_id, 'pwb_brand_image', true );
|
40 |
+
$image = wp_get_attachment_image_src( $image, 'full' );
|
41 |
+
if( $image ) $current_brand['image'] = $image[0];
|
42 |
+
|
43 |
+
$banner = get_term_meta( $brand->term_id, 'pwb_brand_banner', true );
|
44 |
+
$banner = wp_get_attachment_image_src( $banner, 'full' );
|
45 |
+
if( $banner ) $current_brand['banner'] = $banner[0];
|
46 |
+
|
47 |
+
$brands_data[] = $current_brand;
|
48 |
+
|
49 |
+
}
|
50 |
+
|
51 |
+
$export_file = fopen( WP_CONTENT_DIR . '/uploads/pwb-export.json', 'w' );
|
52 |
+
fwrite( $export_file, json_encode( $brands_data ) );
|
53 |
+
fclose( $export_file );
|
54 |
+
|
55 |
+
$result = array( 'export_file_url' => WP_CONTENT_URL . '/uploads/pwb-export.json' );
|
56 |
+
|
57 |
+
wp_send_json_success( $result );
|
58 |
+
|
59 |
+
}
|
60 |
+
|
61 |
+
public function import_brands(){
|
62 |
+
|
63 |
+
if( isset( $_FILES['file'] ) ){
|
64 |
+
$file = $_FILES['file'];
|
65 |
+
|
66 |
+
$file_content = json_decode( file_get_contents( $file['tmp_name'] ), true );
|
67 |
+
|
68 |
+
if( is_array( $file_content ) ){
|
69 |
+
|
70 |
+
foreach( $file_content as $brand ){
|
71 |
+
|
72 |
+
$new_brand = wp_insert_term( $brand['name'], 'pwb-brand', array(
|
73 |
+
'slug' => $brand['slug'],
|
74 |
+
'description' => html_entity_decode( $brand['desc'] )
|
75 |
+
));
|
76 |
+
|
77 |
+
if( !is_wp_error( $new_brand ) ){
|
78 |
+
|
79 |
+
if( !empty( $brand['image'] ) )
|
80 |
+
$this->upload_remote_image_and_attach( $brand['image'], $new_brand['term_id'], 'pwb_brand_image' );
|
81 |
+
if( !empty( $brand['banner'] ) )
|
82 |
+
$this->upload_remote_image_and_attach( $brand['banner'], $new_brand['term_id'], 'pwb_brand_banner' );
|
83 |
+
if( !empty( $brand['banner_link'] ) )
|
84 |
+
update_term_meta( $new_brand['term_id'], 'pwb_brand_banner_link', $brand['banner_link'], true );
|
85 |
+
|
86 |
+
}
|
87 |
+
|
88 |
+
}
|
89 |
+
|
90 |
+
wp_send_json_success();
|
91 |
+
|
92 |
+
}else{
|
93 |
+
wp_send_json_error();
|
94 |
+
}
|
95 |
+
|
96 |
+
|
97 |
+
|
98 |
+
}else{
|
99 |
+
wp_send_json_error();
|
100 |
+
}
|
101 |
+
|
102 |
+
wp_die();
|
103 |
+
}
|
104 |
+
|
105 |
+
private function upload_remote_image_and_attach( $image_url, $term_id, $meta_key ){
|
106 |
+
|
107 |
+
$get = wp_remote_get( $image_url );
|
108 |
+
$type = wp_remote_retrieve_header( $get, 'content-type' );
|
109 |
+
|
110 |
+
if( !$type ) return false;
|
111 |
+
|
112 |
+
$mirror = wp_upload_bits( basename( $image_url ), '', wp_remote_retrieve_body( $get ) );
|
113 |
+
|
114 |
+
$attachment = array(
|
115 |
+
'post_title' => basename( $image_url ),
|
116 |
+
'post_mime_type' => $type
|
117 |
+
);
|
118 |
+
|
119 |
+
$attach_id = wp_insert_attachment( $attachment, $mirror['file'] );
|
120 |
+
require_once ABSPATH . 'wp-admin/includes/image.php';
|
121 |
+
$attach_data = wp_generate_attachment_metadata( $attach_id, $mirror['file'] );
|
122 |
+
wp_update_attachment_metadata( $attach_id, $attach_data );
|
123 |
+
|
124 |
+
update_term_meta( $term_id, $meta_key, $attach_id, true );
|
125 |
+
|
126 |
+
}
|
127 |
+
|
128 |
+
}
|
classes/admin/class-edit-brands-page.php
CHANGED
@@ -108,7 +108,7 @@ class Edit_Brands_Page {
|
|
108 |
$direction = 'up';
|
109 |
$brand = intval( $_POST['brand'] );
|
110 |
if( $this->is_featured_brand( $brand ) ){
|
111 |
-
|
112 |
$direction = 'down';
|
113 |
}else{
|
114 |
update_term_meta( $brand, 'pwb_featured_brand', true );
|
108 |
$direction = 'up';
|
109 |
$brand = intval( $_POST['brand'] );
|
110 |
if( $this->is_featured_brand( $brand ) ){
|
111 |
+
delete_term_meta( $brand, 'pwb_featured_brand', true );
|
112 |
$direction = 'down';
|
113 |
}else{
|
114 |
update_term_meta( $brand, 'pwb_featured_brand', true );
|
classes/admin/class-pwb-admin-tab.php
CHANGED
@@ -62,10 +62,7 @@
|
|
62 |
|
63 |
$available_image_sizes_adapted = array();
|
64 |
$available_image_sizes = get_intermediate_image_sizes();
|
65 |
-
|
66 |
-
foreach($available_image_sizes as $image_size){
|
67 |
-
$available_image_sizes_adapted[$image_size] = $image_size;
|
68 |
-
}
|
69 |
$available_image_sizes_adapted['full'] = 'full';
|
70 |
|
71 |
$settings = array(
|
@@ -152,6 +149,13 @@
|
|
152 |
'after_sharing' => __( 'After sharing', 'perfect-woocommerce-brands' )
|
153 |
)
|
154 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
155 |
'section_end' => array(
|
156 |
'type' => 'sectionend',
|
157 |
'id' => 'wc_pwb_admin_tab_section_end'
|
62 |
|
63 |
$available_image_sizes_adapted = array();
|
64 |
$available_image_sizes = get_intermediate_image_sizes();
|
65 |
+
foreach( $available_image_sizes as $image_size ) $available_image_sizes_adapted[$image_size] = $image_size;
|
|
|
|
|
|
|
66 |
$available_image_sizes_adapted['full'] = 'full';
|
67 |
|
68 |
$settings = array(
|
149 |
'after_sharing' => __( 'After sharing', 'perfect-woocommerce-brands' )
|
150 |
)
|
151 |
),
|
152 |
+
'brands_page_id' => array(
|
153 |
+
'name' => __( 'Brands page id', 'perfect-woocommerce-brands' ),
|
154 |
+
'type' => 'text',
|
155 |
+
'class' => 'pwb-admin-tab-field',
|
156 |
+
'desc' => __( 'For linking breadcrumbs', 'perfect-woocommerce-brands' ),
|
157 |
+
'id' => 'wc_pwb_admin_tab_brands_page_id'
|
158 |
+
),
|
159 |
'section_end' => array(
|
160 |
'type' => 'sectionend',
|
161 |
'id' => 'wc_pwb_admin_tab_section_end'
|
classes/admin/class-pwb-coupon.php
CHANGED
@@ -64,7 +64,11 @@
|
|
64 |
$selected_brands = get_post_meta( $coupon_id, '_pwb_coupon_restriction', true );
|
65 |
if ( empty( $selected_brands ) ) return $valid;
|
66 |
|
67 |
-
|
|
|
|
|
|
|
|
|
68 |
$product_brands = wp_get_post_terms( $product_id, 'pwb-brand', array( 'fields' => 'ids' ) );
|
69 |
$valid_brands = array_intersect( $selected_brands, $product_brands );
|
70 |
return !empty( $valid_brands );
|
64 |
$selected_brands = get_post_meta( $coupon_id, '_pwb_coupon_restriction', true );
|
65 |
if ( empty( $selected_brands ) ) return $valid;
|
66 |
|
67 |
+
if( $product->is_type( 'variation' ) ){
|
68 |
+
$product_id = $product->get_parent_id();
|
69 |
+
}else{
|
70 |
+
$product_id = is_callable( array( $product, 'get_id' ) ) ? $product->get_id() : $product->id;
|
71 |
+
}
|
72 |
$product_brands = wp_get_post_terms( $product_id, 'pwb-brand', array( 'fields' => 'ids' ) );
|
73 |
$valid_brands = array_intersect( $selected_brands, $product_brands );
|
74 |
return !empty( $valid_brands );
|
classes/class-perfect-woocommerce-brands.php
CHANGED
@@ -11,7 +11,7 @@ class Perfect_Woocommerce_Brands{
|
|
11 |
add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ) );
|
12 |
add_action( 'admin_enqueue_scripts', array( $this, 'admin_enqueue_scripts' ) );
|
13 |
$this->brand_logo_position();
|
14 |
-
$this
|
15 |
add_action( 'woocommerce_after_shop_loop_item_title', array( $this, 'show_brands_in_loop' ) );
|
16 |
$this->add_shortcodes();
|
17 |
if( is_plugin_active('js_composer/js_composer.php') || is_plugin_active('visual_composer/js_composer.php') ){
|
@@ -35,16 +35,18 @@ class Perfect_Woocommerce_Brands{
|
|
35 |
remove_action( 'woocommerce_archive_description', 'woocommerce_taxonomy_archive_description', 10 );
|
36 |
});
|
37 |
add_action( 'woocommerce_product_duplicate', array( $this, 'product_duplicate_save' ), 10, 2 );
|
|
|
|
|
38 |
}
|
39 |
|
40 |
public function review_notice(){
|
41 |
$show_notice = get_option('wc_pwb_notice_plugin_review', true);
|
42 |
$activate_on = get_option('pwb_activate_on', time());
|
43 |
$now = time();
|
44 |
-
$
|
45 |
$date_diff = $now - $activate_on;
|
46 |
|
47 |
-
if ( $show_notice && $date_diff > $
|
48 |
?>
|
49 |
<div class="notice notice-info pwb-notice-dismissible is-dismissible" data-notice="wc_pwb_notice_plugin_review">
|
50 |
<p><?php echo __('We know that you´re in love with Perfect WooCommerce Brands, you can help us making it a bit better. Thanks a lot!', 'perfect-woocommerce-brands' ); ?><span class="dashicons dashicons-heart"></span></p>
|
@@ -152,6 +154,10 @@ class Perfect_Woocommerce_Brands{
|
|
152 |
'\Perfect_Woocommerce_Brands\Shortcodes\PWB_All_Brands_Shortcode',
|
153 |
'all_brands_shortcode'
|
154 |
) );
|
|
|
|
|
|
|
|
|
155 |
add_shortcode( 'pwb-brand', array(
|
156 |
'\Perfect_Woocommerce_Brands\Shortcodes\PWB_Brand_Shortcode',
|
157 |
'brand_shortcode'
|
@@ -241,12 +247,18 @@ class Perfect_Woocommerce_Brands{
|
|
241 |
}
|
242 |
|
243 |
public function brand_desc_position(){
|
244 |
-
|
245 |
-
if(
|
246 |
-
|
247 |
-
|
248 |
-
|
|
|
|
|
|
|
|
|
|
|
249 |
}
|
|
|
250 |
}
|
251 |
|
252 |
/*
|
@@ -448,6 +460,16 @@ class Perfect_Woocommerce_Brands{
|
|
448 |
|
449 |
));
|
450 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
451 |
vc_map(array(
|
452 |
"name" => __( "PWB brand", "perfect-woocommerce-brands" ),
|
453 |
"description" => __( "Show brand for a specific product", "perfect-woocommerce-brands" ),
|
@@ -506,7 +528,7 @@ class Perfect_Woocommerce_Brands{
|
|
506 |
$attachment_html = wp_get_attachment_image($attachment_id,$image_size);
|
507 |
|
508 |
if( !empty($attachment_html) && $show_as=='brand_image' || !empty($attachment_html) && !$show_as ){
|
509 |
-
echo '<a href="'.$brand_link.'" title="'
|
510 |
}else{
|
511 |
echo '<a href="'.$brand_link.'" title="'.__( 'View brand', 'perfect-woocommerce-brands' ).'">'.$brand->name.'</a>';
|
512 |
}
|
@@ -525,7 +547,7 @@ class Perfect_Woocommerce_Brands{
|
|
525 |
|
526 |
public function enqueue_scripts(){
|
527 |
|
528 |
-
|
529 |
'pwb-lib-slick',
|
530 |
PWB_PLUGIN . '/assets/lib/slick/slick.min.js',
|
531 |
array('jquery'),
|
@@ -533,7 +555,7 @@ class Perfect_Woocommerce_Brands{
|
|
533 |
true
|
534 |
);
|
535 |
|
536 |
-
|
537 |
'pwb-lib-slick',
|
538 |
PWB_PLUGIN . '/assets/lib/slick/slick.css',
|
539 |
array(),
|
@@ -544,7 +566,7 @@ class Perfect_Woocommerce_Brands{
|
|
544 |
wp_enqueue_style(
|
545 |
'pwb-styles-frontend',
|
546 |
PWB_PLUGIN . '/assets/css/styles-frontend.min.css',
|
547 |
-
array(
|
548 |
PWB_PLUGIN_VERSION,
|
549 |
'all'
|
550 |
);
|
@@ -552,7 +574,7 @@ class Perfect_Woocommerce_Brands{
|
|
552 |
wp_enqueue_script(
|
553 |
'pwb-functions-frontend',
|
554 |
PWB_PLUGIN . '/assets/js/functions-frontend.min.js',
|
555 |
-
array('jquery'
|
556 |
PWB_PLUGIN_VERSION,
|
557 |
true
|
558 |
);
|
@@ -692,38 +714,34 @@ class Perfect_Woocommerce_Brands{
|
|
692 |
$show_desc = get_option('wc_pwb_admin_tab_brand_desc');
|
693 |
$show_desc_class = ( !$show_desc || $show_desc == 'yes' ) ? 'before-loop' : 'after-loop';
|
694 |
|
695 |
-
|
696 |
-
|
697 |
-
|
698 |
-
$brand_banner_link = get_term_meta( $queried_object->term_id, 'pwb_brand_banner_link', true );
|
699 |
-
$show_desc = get_option('wc_pwb_admin_tab_brand_desc');
|
700 |
-
|
701 |
-
if( $brand_banner!='' || $queried_object->description != '' && $show_desc !== 'no' ){
|
702 |
-
echo '<div class="pwb-brand-banner-cont '.$show_desc_class.'">';
|
703 |
-
}
|
704 |
|
705 |
-
|
706 |
-
|
707 |
-
|
708 |
-
if($brand_banner_link!=''){
|
709 |
-
echo '<a href="'.site_url($brand_banner_link).'">'.wp_get_attachment_image ( $brand_banner, 'full', false ).'</a>';
|
710 |
-
}else{
|
711 |
-
echo wp_get_attachment_image ( $brand_banner, 'full', false );
|
712 |
-
}
|
713 |
-
echo '</div>';
|
714 |
-
}
|
715 |
|
716 |
-
|
717 |
-
|
718 |
-
|
719 |
-
|
720 |
-
echo '</
|
|
|
|
|
721 |
}
|
|
|
|
|
722 |
|
723 |
-
|
|
|
|
|
|
|
724 |
echo '</div>';
|
725 |
}
|
726 |
|
|
|
|
|
727 |
}
|
728 |
|
729 |
}
|
@@ -741,4 +759,14 @@ class Perfect_Woocommerce_Brands{
|
|
741 |
wp_set_object_terms( $duplicate->get_id(), $product_brands, 'pwb-brand' );
|
742 |
}
|
743 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
744 |
}
|
11 |
add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ) );
|
12 |
add_action( 'admin_enqueue_scripts', array( $this, 'admin_enqueue_scripts' ) );
|
13 |
$this->brand_logo_position();
|
14 |
+
add_action( 'parse_query', array( $this, 'brand_desc_position' ) );
|
15 |
add_action( 'woocommerce_after_shop_loop_item_title', array( $this, 'show_brands_in_loop' ) );
|
16 |
$this->add_shortcodes();
|
17 |
if( is_plugin_active('js_composer/js_composer.php') || is_plugin_active('visual_composer/js_composer.php') ){
|
35 |
remove_action( 'woocommerce_archive_description', 'woocommerce_taxonomy_archive_description', 10 );
|
36 |
});
|
37 |
add_action( 'woocommerce_product_duplicate', array( $this, 'product_duplicate_save' ), 10, 2 );
|
38 |
+
|
39 |
+
add_filter( 'woocommerce_get_breadcrumb', array( $this, 'breadcrumbs' ) );
|
40 |
}
|
41 |
|
42 |
public function review_notice(){
|
43 |
$show_notice = get_option('wc_pwb_notice_plugin_review', true);
|
44 |
$activate_on = get_option('pwb_activate_on', time());
|
45 |
$now = time();
|
46 |
+
$one_week = 604800;
|
47 |
$date_diff = $now - $activate_on;
|
48 |
|
49 |
+
if ( $show_notice && $date_diff > $one_week ) {
|
50 |
?>
|
51 |
<div class="notice notice-info pwb-notice-dismissible is-dismissible" data-notice="wc_pwb_notice_plugin_review">
|
52 |
<p><?php echo __('We know that you´re in love with Perfect WooCommerce Brands, you can help us making it a bit better. Thanks a lot!', 'perfect-woocommerce-brands' ); ?><span class="dashicons dashicons-heart"></span></p>
|
154 |
'\Perfect_Woocommerce_Brands\Shortcodes\PWB_All_Brands_Shortcode',
|
155 |
'all_brands_shortcode'
|
156 |
) );
|
157 |
+
add_shortcode( 'pwb-az-listing', array(
|
158 |
+
'\Perfect_Woocommerce_Brands\Shortcodes\PWB_AZ_Listing_Shortcode',
|
159 |
+
'shortcode'
|
160 |
+
) );
|
161 |
add_shortcode( 'pwb-brand', array(
|
162 |
'\Perfect_Woocommerce_Brands\Shortcodes\PWB_Brand_Shortcode',
|
163 |
'brand_shortcode'
|
247 |
}
|
248 |
|
249 |
public function brand_desc_position(){
|
250 |
+
|
251 |
+
if( is_tax('pwb-brand') ){
|
252 |
+
|
253 |
+
$show_desc = get_option('wc_pwb_admin_tab_brand_desc');
|
254 |
+
if( !$show_desc || $show_desc == 'yes' ){
|
255 |
+
add_action( 'woocommerce_archive_description', array( $this, 'archive_page_banner' ), 15);
|
256 |
+
}elseif( $show_desc == 'yes_after_loop' ){
|
257 |
+
add_action( 'woocommerce_after_main_content', array( $this, 'archive_page_banner' ), 9);
|
258 |
+
}
|
259 |
+
|
260 |
}
|
261 |
+
|
262 |
}
|
263 |
|
264 |
/*
|
460 |
|
461 |
));
|
462 |
|
463 |
+
vc_map(array(
|
464 |
+
"name" => __( "PWB AZ Listing", "perfect-woocommerce-brands" ),
|
465 |
+
"description" => __( "AZ Listing for brands", "perfect-woocommerce-brands" ),
|
466 |
+
"base" => "pwb-az-listing",
|
467 |
+
"class" => "",
|
468 |
+
"icon" => PWB_PLUGIN.'/assets/img/icon_pwb.jpg',
|
469 |
+
"category" => "Woocommerce",
|
470 |
+
"params" => array()
|
471 |
+
));
|
472 |
+
|
473 |
vc_map(array(
|
474 |
"name" => __( "PWB brand", "perfect-woocommerce-brands" ),
|
475 |
"description" => __( "Show brand for a specific product", "perfect-woocommerce-brands" ),
|
528 |
$attachment_html = wp_get_attachment_image($attachment_id,$image_size);
|
529 |
|
530 |
if( !empty($attachment_html) && $show_as=='brand_image' || !empty($attachment_html) && !$show_as ){
|
531 |
+
echo '<a href="'.$brand_link.'" title="'.$brand->name.'">'.$attachment_html.'</a>';
|
532 |
}else{
|
533 |
echo '<a href="'.$brand_link.'" title="'.__( 'View brand', 'perfect-woocommerce-brands' ).'">'.$brand->name.'</a>';
|
534 |
}
|
547 |
|
548 |
public function enqueue_scripts(){
|
549 |
|
550 |
+
wp_register_script(
|
551 |
'pwb-lib-slick',
|
552 |
PWB_PLUGIN . '/assets/lib/slick/slick.min.js',
|
553 |
array('jquery'),
|
555 |
true
|
556 |
);
|
557 |
|
558 |
+
wp_register_style(
|
559 |
'pwb-lib-slick',
|
560 |
PWB_PLUGIN . '/assets/lib/slick/slick.css',
|
561 |
array(),
|
566 |
wp_enqueue_style(
|
567 |
'pwb-styles-frontend',
|
568 |
PWB_PLUGIN . '/assets/css/styles-frontend.min.css',
|
569 |
+
array(),
|
570 |
PWB_PLUGIN_VERSION,
|
571 |
'all'
|
572 |
);
|
574 |
wp_enqueue_script(
|
575 |
'pwb-functions-frontend',
|
576 |
PWB_PLUGIN . '/assets/js/functions-frontend.min.js',
|
577 |
+
array('jquery'),
|
578 |
PWB_PLUGIN_VERSION,
|
579 |
true
|
580 |
);
|
714 |
$show_desc = get_option('wc_pwb_admin_tab_brand_desc');
|
715 |
$show_desc_class = ( !$show_desc || $show_desc == 'yes' ) ? 'before-loop' : 'after-loop';
|
716 |
|
717 |
+
$brand_banner = get_term_meta( $queried_object->term_id, 'pwb_brand_banner', true );
|
718 |
+
$brand_banner_link = get_term_meta( $queried_object->term_id, 'pwb_brand_banner_link', true );
|
719 |
+
$show_desc = get_option('wc_pwb_admin_tab_brand_desc');
|
|
|
|
|
|
|
|
|
|
|
|
|
720 |
|
721 |
+
if( $brand_banner!='' || $queried_object->description != '' && $show_desc !== 'no' ){
|
722 |
+
echo '<div class="pwb-brand-banner-cont '.$show_desc_class.'">';
|
723 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
724 |
|
725 |
+
//pwb-brand archive
|
726 |
+
if( $brand_banner!='' ){
|
727 |
+
echo '<div class="pwb-brand-banner pwb-clearfix">';
|
728 |
+
if($brand_banner_link!=''){
|
729 |
+
echo '<a href="'.site_url($brand_banner_link).'">'.wp_get_attachment_image ( $brand_banner, 'full', false ).'</a>';
|
730 |
+
}else{
|
731 |
+
echo wp_get_attachment_image ( $brand_banner, 'full', false );
|
732 |
}
|
733 |
+
echo '</div>';
|
734 |
+
}
|
735 |
|
736 |
+
//show brand description
|
737 |
+
if( $queried_object->description != '' && $show_desc !== 'no' ){
|
738 |
+
echo '<div class="pwb-brand-description">';
|
739 |
+
echo do_shortcode( wpautop( $queried_object->description ) );
|
740 |
echo '</div>';
|
741 |
}
|
742 |
|
743 |
+
if( $brand_banner!='' || $queried_object->description != '' && $show_desc !== 'no' ){
|
744 |
+
echo '</div>';
|
745 |
}
|
746 |
|
747 |
}
|
759 |
wp_set_object_terms( $duplicate->get_id(), $product_brands, 'pwb-brand' );
|
760 |
}
|
761 |
|
762 |
+
public function breadcrumbs( $crumbs ) {
|
763 |
+
if( is_tax('pwb-brand') ){
|
764 |
+
$brands_page_id = get_option('wc_pwb_admin_tab_brands_page_id');
|
765 |
+
if( !empty( $brands_page_id ) && isset( $crumbs[count($crumbs)-2][1] ) ){
|
766 |
+
$crumbs[count($crumbs)-2][1] = get_page_link( $brands_page_id );
|
767 |
+
}
|
768 |
+
}
|
769 |
+
return $crumbs;
|
770 |
+
}
|
771 |
+
|
772 |
}
|
classes/class-pwb-api-support.php
CHANGED
@@ -7,10 +7,7 @@ defined('ABSPATH') or die('No script kiddies please!');
|
|
7 |
|
8 |
class PWB_API_Support{
|
9 |
|
10 |
-
private $namespaces = array(
|
11 |
-
"wc/v1",
|
12 |
-
"wc/v2",
|
13 |
-
);
|
14 |
private $base = 'brands';
|
15 |
|
16 |
function __construct(){
|
7 |
|
8 |
class PWB_API_Support{
|
9 |
|
10 |
+
private $namespaces = array( "wc/v1", "wc/v2", "wc/v3" );
|
|
|
|
|
|
|
11 |
private $base = 'brands';
|
12 |
|
13 |
function __construct(){
|
classes/shortcodes/class-pwb-all-brands.php
CHANGED
@@ -78,18 +78,18 @@ class PWB_All_Brands_Shortcode{
|
|
78 |
|
79 |
<?php if( $title_position != 'none' && $title_position != 'after' ): ?>
|
80 |
<p>
|
81 |
-
<?php echo $brand_name
|
82 |
<small>(<?php echo $brand->count;?>)</small>
|
83 |
</p>
|
84 |
<?php endif; ?>
|
85 |
|
86 |
<div>
|
87 |
-
<a href="<?php echo $brand_link;?>" title="<?php
|
88 |
</div>
|
89 |
|
90 |
<?php if( $title_position != 'none' && $title_position == 'after' ): ?>
|
91 |
<p>
|
92 |
-
<?php echo $brand_name
|
93 |
<small>(<?php echo $brand->count;?>)</small>
|
94 |
</p>
|
95 |
<?php endif; ?>
|
78 |
|
79 |
<?php if( $title_position != 'none' && $title_position != 'after' ): ?>
|
80 |
<p>
|
81 |
+
<a href="<?php echo $brand_link;?>"><?php echo $brand_name;?></a>
|
82 |
<small>(<?php echo $brand->count;?>)</small>
|
83 |
</p>
|
84 |
<?php endif; ?>
|
85 |
|
86 |
<div>
|
87 |
+
<a href="<?php echo $brand_link;?>" title="<?php echo $brand_name;?>"><?php echo $attachment_html;?></a>
|
88 |
</div>
|
89 |
|
90 |
<?php if( $title_position != 'none' && $title_position == 'after' ): ?>
|
91 |
<p>
|
92 |
+
<a href="<?php echo $brand_link;?>"><?php echo $brand_name;?></a>
|
93 |
<small>(<?php echo $brand->count;?>)</small>
|
94 |
</p>
|
95 |
<?php endif; ?>
|
classes/shortcodes/class-pwb-az-listing.php
ADDED
@@ -0,0 +1,125 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
namespace Perfect_Woocommerce_Brands\Shortcodes;
|
3 |
+
use WP_Query;
|
4 |
+
|
5 |
+
defined( 'ABSPATH' ) or die( 'No script kiddies please!' );
|
6 |
+
|
7 |
+
class PWB_AZ_Listing_Shortcode{
|
8 |
+
|
9 |
+
public static function shortcode( $atts ) {
|
10 |
+
|
11 |
+
$atts = shortcode_atts( array(), $atts, 'pwb-az-listing' );
|
12 |
+
|
13 |
+
ob_start();
|
14 |
+
|
15 |
+
$brands = \Perfect_Woocommerce_Brands\Perfect_Woocommerce_Brands::get_brands( true, 'name', 'ASC' );
|
16 |
+
$grouped_brands = array();
|
17 |
+
|
18 |
+
$letter = null;
|
19 |
+
foreach( $brands as $brand ){
|
20 |
+
if( $letter != $brand->name[0] ) $letter = $brand->name[0];
|
21 |
+
$letter = strtolower( self::replace_specials_characters( $letter ) );
|
22 |
+
$grouped_brands[$letter][] = $brand;
|
23 |
+
}
|
24 |
+
|
25 |
+
//navigation
|
26 |
+
if( !empty( $grouped_brands ) ):
|
27 |
+
?>
|
28 |
+
<div class="pwb-az-listing">
|
29 |
+
|
30 |
+
<div class="pwb-az-listing-header">
|
31 |
+
<ul class="pwb-clearfix">
|
32 |
+
<?php
|
33 |
+
foreach( $grouped_brands as $letter => $brand_group ):
|
34 |
+
?>
|
35 |
+
<li><a href="#pwb-az-listing-<?php echo $letter;?>"><?php echo $letter;?></a></li>
|
36 |
+
<?php
|
37 |
+
endforeach;
|
38 |
+
?>
|
39 |
+
</ul>
|
40 |
+
</div>
|
41 |
+
|
42 |
+
<div class="pwb-az-listing-content">
|
43 |
+
<?php
|
44 |
+
|
45 |
+
foreach( $grouped_brands as $letter => $brand_group ):
|
46 |
+
?>
|
47 |
+
<div id="pwb-az-listing-<?php echo $letter;?>" class="pwb-az-listing-row pwb-clearfix">
|
48 |
+
<p class="pwb-az-listing-title"><?php echo $letter;?></p>
|
49 |
+
<div class="pwb-az-listing-row-in">
|
50 |
+
<?php
|
51 |
+
foreach( $brand_group as $brand ):
|
52 |
+
if( !empty( self::has_products( $brand->term_id ) ) ):
|
53 |
+
?>
|
54 |
+
<div class="pwb-az-listing-col">
|
55 |
+
<a href="<?php echo get_term_link($brand->term_id);?>"><?php echo $brand->name;?></a>
|
56 |
+
</div>
|
57 |
+
<?php
|
58 |
+
endif;
|
59 |
+
endforeach;
|
60 |
+
?>
|
61 |
+
</div>
|
62 |
+
</div>
|
63 |
+
<?php
|
64 |
+
endforeach;
|
65 |
+
|
66 |
+
?>
|
67 |
+
</div>
|
68 |
+
|
69 |
+
</div>
|
70 |
+
<?php
|
71 |
+
|
72 |
+
endif;
|
73 |
+
|
74 |
+
return ob_get_clean();
|
75 |
+
|
76 |
+
}
|
77 |
+
|
78 |
+
protected static function replace_specials_characters($s){
|
79 |
+
$s = preg_replace("/á|à|â|ã|ª/","a",$s);
|
80 |
+
$s = preg_replace("/Á|À|Â|Ã/","A",$s);
|
81 |
+
$s = preg_replace("/é|è|ê/","e",$s);
|
82 |
+
$s = preg_replace("/É|È|Ê/","E",$s);
|
83 |
+
$s = preg_replace("/í|ì|î/","i",$s);
|
84 |
+
$s = preg_replace("/Í|Ì|Î/","I",$s);
|
85 |
+
$s = preg_replace("/ó|ò|ô|õ|º/","o",$s);
|
86 |
+
$s = preg_replace("/Ó|Ò|Ô|Õ/","O",$s);
|
87 |
+
$s = preg_replace("/ú|ù|û/","u",$s);
|
88 |
+
$s = preg_replace("/Ú|Ù|Û/","U",$s);
|
89 |
+
|
90 |
+
$s = preg_replace('/[^a-zA-Z0-9_.-]/', '', $s);
|
91 |
+
return $s;
|
92 |
+
}
|
93 |
+
|
94 |
+
private static function has_products( $brand_id ){
|
95 |
+
|
96 |
+
$args = array(
|
97 |
+
'posts_per_page' => -1,
|
98 |
+
'post_type' => 'product',
|
99 |
+
'tax_query' => array(
|
100 |
+
array(
|
101 |
+
'taxonomy' => 'pwb-brand',
|
102 |
+
'field' => 'term_id',
|
103 |
+
'terms' => array( $brand_id )
|
104 |
+
)
|
105 |
+
),
|
106 |
+
'fields' => 'ids'
|
107 |
+
);
|
108 |
+
|
109 |
+
if( get_option('woocommerce_hide_out_of_stock_items') === 'yes' ){
|
110 |
+
$args['meta_query'] = array(
|
111 |
+
array(
|
112 |
+
'key' => '_stock_status',
|
113 |
+
'value' => 'outofstock',
|
114 |
+
'compare' => 'NOT IN'
|
115 |
+
)
|
116 |
+
);
|
117 |
+
}
|
118 |
+
|
119 |
+
$wp_query = new WP_Query($args);
|
120 |
+
wp_reset_postdata();
|
121 |
+
return $wp_query->posts;
|
122 |
+
|
123 |
+
}
|
124 |
+
|
125 |
+
}
|
classes/shortcodes/class-pwb-carousel.php
CHANGED
@@ -19,6 +19,10 @@ class PWB_Carousel_Shortcode{
|
|
19 |
'hide_empty' => false
|
20 |
), $atts, 'pwb-carousel' );
|
21 |
|
|
|
|
|
|
|
|
|
22 |
return \Perfect_Woocommerce_Brands\Perfect_Woocommerce_Brands::render_template(
|
23 |
'carousel',
|
24 |
'shortcodes',
|
@@ -57,7 +61,7 @@ class PWB_Carousel_Shortcode{
|
|
57 |
$attachment_html = $brand->name;
|
58 |
if($attachment_id!='') $attachment_html = wp_get_attachment_image( $attachment_id, self::$atts['image_size'] );
|
59 |
|
60 |
-
$brands[] = array( 'link' => $brand_link, 'attachment_html' => $attachment_html );
|
61 |
|
62 |
$foreach_i++;
|
63 |
}
|
19 |
'hide_empty' => false
|
20 |
), $atts, 'pwb-carousel' );
|
21 |
|
22 |
+
//enqueue deps
|
23 |
+
if( !wp_style_is('pwb-lib-slick') ) wp_enqueue_style('pwb-lib-slick');
|
24 |
+
if( !wp_script_is('pwb-lib-slick') ) wp_enqueue_script('pwb-lib-slick');
|
25 |
+
|
26 |
return \Perfect_Woocommerce_Brands\Perfect_Woocommerce_Brands::render_template(
|
27 |
'carousel',
|
28 |
'shortcodes',
|
61 |
$attachment_html = $brand->name;
|
62 |
if($attachment_id!='') $attachment_html = wp_get_attachment_image( $attachment_id, self::$atts['image_size'] );
|
63 |
|
64 |
+
$brands[] = array( 'link' => $brand_link, 'attachment_html' => $attachment_html, 'name' => $brand->name );
|
65 |
|
66 |
$foreach_i++;
|
67 |
}
|
classes/shortcodes/class-pwb-product-carousel.php
CHANGED
@@ -18,6 +18,10 @@ class PWB_Product_Carousel_Shortcode{
|
|
18 |
'arrows' => "false"
|
19 |
), $atts, 'pwb-product-carousel' );
|
20 |
|
|
|
|
|
|
|
|
|
21 |
return \Perfect_Woocommerce_Brands\Perfect_Woocommerce_Brands::render_template(
|
22 |
'product-carousel',
|
23 |
'shortcodes',
|
18 |
'arrows' => "false"
|
19 |
), $atts, 'pwb-product-carousel' );
|
20 |
|
21 |
+
//enqueue deps
|
22 |
+
if( !wp_style_is('pwb-lib-slick') ) wp_enqueue_style('pwb-lib-slick');
|
23 |
+
if( !wp_script_is('pwb-lib-slick') ) wp_enqueue_script('pwb-lib-slick');
|
24 |
+
|
25 |
return \Perfect_Woocommerce_Brands\Perfect_Woocommerce_Brands::render_template(
|
26 |
'product-carousel',
|
27 |
'shortcodes',
|
classes/widgets/class-pwb-filter-by-brand.php
CHANGED
@@ -19,7 +19,6 @@ class PWB_Filter_By_Brand_Widget extends \WP_Widget {
|
|
19 |
|
20 |
$title = ( isset( $instance[ 'title' ] ) ) ? $instance[ 'title' ] : __('Brands', 'perfect-woocommerce-brands');
|
21 |
$limit = ( isset( $instance[ 'limit' ] ) ) ? $instance[ 'limit' ] : 20;
|
22 |
-
$hide_empty = ( isset( $hide_empty ) && $hide_empty == 'on' ) ? true : false;
|
23 |
$hide_submit_btn = ( isset( $hide_submit_btn ) && $hide_submit_btn == 'on' ) ? true : false;
|
24 |
?>
|
25 |
<p>
|
@@ -32,16 +31,6 @@ class PWB_Filter_By_Brand_Widget extends \WP_Widget {
|
|
32 |
</label>
|
33 |
<input class="widefat" id="<?php echo $this->get_field_id( 'limit' ); ?>" name="<?php echo $this->get_field_name( 'limit' ); ?>" type="text" value="<?php echo esc_attr( $limit ); ?>" />
|
34 |
</p>
|
35 |
-
<p>
|
36 |
-
<input
|
37 |
-
type="checkbox"
|
38 |
-
id="<?php echo esc_attr( $this->get_field_id('hide_empty') ); ?>"
|
39 |
-
name="<?php echo esc_attr( $this->get_field_name('hide_empty') ); ?>"
|
40 |
-
<?php checked( $hide_empty ); ?>>
|
41 |
-
<label for="<?php echo esc_attr( $this->get_field_id('hide_empty') ); ?>">
|
42 |
-
<?php echo __( 'Hide empty', 'perfect-woocommerce-brands' );?>
|
43 |
-
</label>
|
44 |
-
</p>
|
45 |
<p>
|
46 |
<input
|
47 |
type="checkbox"
|
@@ -62,8 +51,7 @@ class PWB_Filter_By_Brand_Widget extends \WP_Widget {
|
|
62 |
$instance = array();
|
63 |
$instance['title'] = ( ! empty( $new_instance['title'] ) ) ? sanitize_text_field( $new_instance['title'] ) : '';
|
64 |
$instance['limit'] = ( $limit != false ) ? $limit : $old_instance['limit'];
|
65 |
-
$instance['
|
66 |
-
$instance['hide_submit_btn'] = $new_instance['hide_submit_btn'];
|
67 |
return $instance;
|
68 |
}
|
69 |
|
@@ -74,16 +62,12 @@ class PWB_Filter_By_Brand_Widget extends \WP_Widget {
|
|
74 |
if( !is_tax('pwb-brand') && !is_product() ){
|
75 |
|
76 |
$hide_submit_btn = ( isset( $hide_submit_btn ) && $hide_submit_btn == 'on' ) ? true : false;
|
77 |
-
$hide_empty = ( isset( $hide_empty ) && $hide_empty == 'on' ) ? true : false;
|
78 |
-
$brands = get_terms( 'pwb-brand', array( 'hide_empty' => $hide_empty ) );
|
79 |
-
$brands_ids = array();
|
80 |
-
foreach( $brands as $brand ) $brands_ids[] = $brand->term_id;
|
81 |
|
82 |
$show_widget = true;
|
83 |
-
$
|
84 |
-
if( is_product_category() ){
|
85 |
-
$
|
86 |
-
if(
|
87 |
}
|
88 |
|
89 |
if( $show_widget ){
|
@@ -94,7 +78,7 @@ class PWB_Filter_By_Brand_Widget extends \WP_Widget {
|
|
94 |
|
95 |
echo $args['before_widget'];
|
96 |
if ( ! empty( $title ) ) echo $args['before_title'] . $title . $args['after_title'];
|
97 |
-
$this->render_widget( $
|
98 |
echo $args['after_widget'];
|
99 |
}
|
100 |
|
@@ -102,39 +86,40 @@ class PWB_Filter_By_Brand_Widget extends \WP_Widget {
|
|
102 |
|
103 |
}
|
104 |
|
105 |
-
public function render_widget( $
|
106 |
-
|
107 |
-
if( is_product_category() ){
|
108 |
|
109 |
-
|
110 |
-
while ( $the_query->have_posts() ) {
|
111 |
-
$the_query->the_post();
|
112 |
|
113 |
-
|
114 |
-
|
|
|
|
|
|
|
115 |
}
|
|
|
116 |
}
|
117 |
-
wp_reset_postdata();
|
118 |
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
|
|
|
|
124 |
|
125 |
}else{
|
126 |
//no product category
|
127 |
-
$cate_url = get_permalink( wc_get_page_id( 'shop' ));
|
128 |
-
$result_brands =
|
129 |
-
if( $limit > 0 ) $result_brands = array_slice( $brands_ids, 0, $limit );
|
130 |
}
|
131 |
|
|
|
|
|
132 |
global $wp;
|
133 |
$current_url = home_url(add_query_arg(array(),$wp->request));
|
134 |
|
135 |
if( !empty( $result_brands ) ){
|
136 |
|
137 |
-
$result_brands = array_unique($result_brands);
|
138 |
$result_brands_ordered = array();
|
139 |
foreach( $result_brands as $brand ){
|
140 |
$brand = get_term($brand);
|
@@ -154,33 +139,45 @@ class PWB_Filter_By_Brand_Widget extends \WP_Widget {
|
|
154 |
|
155 |
}
|
156 |
|
157 |
-
private function current_products_query(
|
158 |
|
159 |
-
$cat = get_queried_object();
|
160 |
-
$cat_id = $cat->term_taxonomy_id;
|
161 |
-
$cat_id_array = get_term_children( $cat_id, 'product_cat' );
|
162 |
-
$cat_id_array[] = $cat_id;
|
163 |
-
|
164 |
-
$result_brands = array();
|
165 |
$args = array(
|
166 |
'posts_per_page' => -1,
|
167 |
'post_type' => 'product',
|
168 |
'tax_query' => array(
|
169 |
-
'relation' => 'AND',
|
170 |
-
array(
|
171 |
-
'taxonomy' => 'product_cat',
|
172 |
-
'field' => 'term_id',
|
173 |
-
'terms' => $cat_id_array
|
174 |
-
),
|
175 |
array(
|
176 |
'taxonomy' => 'pwb-brand',
|
177 |
-
|
178 |
-
'terms' => $brands_ids
|
179 |
)
|
180 |
-
)
|
|
|
181 |
);
|
182 |
|
183 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
184 |
|
185 |
}
|
186 |
|
19 |
|
20 |
$title = ( isset( $instance[ 'title' ] ) ) ? $instance[ 'title' ] : __('Brands', 'perfect-woocommerce-brands');
|
21 |
$limit = ( isset( $instance[ 'limit' ] ) ) ? $instance[ 'limit' ] : 20;
|
|
|
22 |
$hide_submit_btn = ( isset( $hide_submit_btn ) && $hide_submit_btn == 'on' ) ? true : false;
|
23 |
?>
|
24 |
<p>
|
31 |
</label>
|
32 |
<input class="widefat" id="<?php echo $this->get_field_id( 'limit' ); ?>" name="<?php echo $this->get_field_name( 'limit' ); ?>" type="text" value="<?php echo esc_attr( $limit ); ?>" />
|
33 |
</p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
34 |
<p>
|
35 |
<input
|
36 |
type="checkbox"
|
51 |
$instance = array();
|
52 |
$instance['title'] = ( ! empty( $new_instance['title'] ) ) ? sanitize_text_field( $new_instance['title'] ) : '';
|
53 |
$instance['limit'] = ( $limit != false ) ? $limit : $old_instance['limit'];
|
54 |
+
$instance['hide_submit_btn'] = ( isset( $new_instance['hide_submit_btn'] ) ) ? $new_instance['hide_submit_btn'] : '';
|
|
|
55 |
return $instance;
|
56 |
}
|
57 |
|
62 |
if( !is_tax('pwb-brand') && !is_product() ){
|
63 |
|
64 |
$hide_submit_btn = ( isset( $hide_submit_btn ) && $hide_submit_btn == 'on' ) ? true : false;
|
|
|
|
|
|
|
|
|
65 |
|
66 |
$show_widget = true;
|
67 |
+
$current_products = false;
|
68 |
+
if( is_product_category() || is_shop() ){
|
69 |
+
$current_products = $this->current_products_query();
|
70 |
+
if( empty( $current_products ) ) $show_widget = false;
|
71 |
}
|
72 |
|
73 |
if( $show_widget ){
|
78 |
|
79 |
echo $args['before_widget'];
|
80 |
if ( ! empty( $title ) ) echo $args['before_title'] . $title . $args['after_title'];
|
81 |
+
$this->render_widget( $current_products, $limit, $hide_submit_btn );
|
82 |
echo $args['after_widget'];
|
83 |
}
|
84 |
|
86 |
|
87 |
}
|
88 |
|
89 |
+
public function render_widget( $current_products, $limit, $hide_submit_btn ){
|
|
|
|
|
90 |
|
91 |
+
if( is_product_category() || is_shop() ){
|
|
|
|
|
92 |
|
93 |
+
if( !empty( $current_products ) ) {
|
94 |
+
$result_brands = array();
|
95 |
+
foreach( $current_products as $product_id ) {
|
96 |
+
$product_brands = wp_get_post_terms($product_id, 'pwb-brand');
|
97 |
+
foreach($product_brands as $brand) $result_brands[] = $brand->term_id;
|
98 |
}
|
99 |
+
$result_brands = array_unique($result_brands);
|
100 |
}
|
|
|
101 |
|
102 |
+
if( is_shop() ){
|
103 |
+
$cate_url = get_permalink( wc_get_page_id( 'shop' ) );
|
104 |
+
}else{
|
105 |
+
$cate = get_queried_object();
|
106 |
+
$cateID = $cate->term_id;
|
107 |
+
$cate_url = get_term_link($cateID);
|
108 |
+
}
|
109 |
|
110 |
}else{
|
111 |
//no product category
|
112 |
+
$cate_url = get_permalink( wc_get_page_id( 'shop' ) );
|
113 |
+
$result_brands = get_terms( 'pwb-brand', array( 'hide_empty' => true, 'fields' => 'ids' ) );
|
|
|
114 |
}
|
115 |
|
116 |
+
if( $limit > 0 ) $result_brands = array_slice( $result_brands, 0, $limit );
|
117 |
+
|
118 |
global $wp;
|
119 |
$current_url = home_url(add_query_arg(array(),$wp->request));
|
120 |
|
121 |
if( !empty( $result_brands ) ){
|
122 |
|
|
|
123 |
$result_brands_ordered = array();
|
124 |
foreach( $result_brands as $brand ){
|
125 |
$brand = get_term($brand);
|
139 |
|
140 |
}
|
141 |
|
142 |
+
private function current_products_query(){
|
143 |
|
|
|
|
|
|
|
|
|
|
|
|
|
144 |
$args = array(
|
145 |
'posts_per_page' => -1,
|
146 |
'post_type' => 'product',
|
147 |
'tax_query' => array(
|
|
|
|
|
|
|
|
|
|
|
|
|
148 |
array(
|
149 |
'taxonomy' => 'pwb-brand',
|
150 |
+
'operator' => 'EXISTS'
|
|
|
151 |
)
|
152 |
+
),
|
153 |
+
'fields' => 'ids'
|
154 |
);
|
155 |
|
156 |
+
$cat = get_queried_object();
|
157 |
+
if( is_a( $cat, 'WP_Term' ) ){
|
158 |
+
$cat_id = $cat->term_taxonomy_id;
|
159 |
+
$cat_id_array = get_term_children( $cat_id, 'product_cat' );
|
160 |
+
$cat_id_array[] = $cat_id;
|
161 |
+
$args['tax_query'][] = array(
|
162 |
+
'taxonomy' => 'product_cat',
|
163 |
+
'field' => 'term_id',
|
164 |
+
'terms' => $cat_id_array
|
165 |
+
);
|
166 |
+
}
|
167 |
+
|
168 |
+
if( get_option('woocommerce_hide_out_of_stock_items') === 'yes' ){
|
169 |
+
$args['meta_query'] = array(
|
170 |
+
array(
|
171 |
+
'key' => '_stock_status',
|
172 |
+
'value' => 'outofstock',
|
173 |
+
'compare' => 'NOT IN'
|
174 |
+
)
|
175 |
+
);
|
176 |
+
}
|
177 |
+
|
178 |
+
$wp_query = new WP_Query($args);
|
179 |
+
wp_reset_postdata();
|
180 |
+
return $wp_query->posts;
|
181 |
|
182 |
}
|
183 |
|
lang/perfect-woocommerce-brands-es_ES.mo
CHANGED
Binary file
|
lang/perfect-woocommerce-brands-es_ES.po
CHANGED
@@ -7,8 +7,8 @@ msgid ""
|
|
7 |
msgstr ""
|
8 |
"Project-Id-Version: \n"
|
9 |
"Report-Msgid-Bugs-To: \n"
|
10 |
-
"POT-Creation-Date: 2018-
|
11 |
-
"PO-Revision-Date: 2018-
|
12 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
13 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
14 |
"Language: \n"
|
@@ -18,7 +18,7 @@ msgstr ""
|
|
18 |
"Plural-Forms: \n"
|
19 |
"X-Generator: Eazy Po 0.9.5.3\n"
|
20 |
|
21 |
-
#: main.php:
|
22 |
msgid ""
|
23 |
"Perfect WooCommerce Brands needs WooCommerce to run. Please, install and "
|
24 |
"active WooCommerce plugin."
|
@@ -26,7 +26,7 @@ msgstr ""
|
|
26 |
"Perfect WooCommerce Brands necesita WooCommerce para funcionar. Por favor, "
|
27 |
"instala y activa WooCommerce."
|
28 |
|
29 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
30 |
msgid ""
|
31 |
"We know that you´re in love with Perfect WooCommerce Brands, you can help us "
|
32 |
"making it a bit better. Thanks a lot!"
|
@@ -34,7 +34,7 @@ msgstr ""
|
|
34 |
"Sabemos que Perfect WooCommerce Brands te encanta, puedes ayudarnos a "
|
35 |
"hacerlo un poco mejor. ¡Muchas gracias!"
|
36 |
|
37 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
38 |
msgid ""
|
39 |
"<a href=\"https://wordpress.org/support/plugin/perfect-woocommerce-brands/"
|
40 |
"reviews/?rate=5#new-post\" target=\"_blank\">Leave a review</a>"
|
@@ -42,7 +42,7 @@ msgstr ""
|
|
42 |
"<a href=\"https://wordpress.org/support/plugin/perfect-woocommerce-brands/"
|
43 |
"reviews/?rate=5#new-post\" target=\"_blank\">Dejar una review</a>"
|
44 |
|
45 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
46 |
msgid ""
|
47 |
"<a href=\"https://translate.wordpress.org/projects/wp-plugins/perfect-"
|
48 |
"woocommerce-brands\" target=\"_blank\">Translate the plugin</a>"
|
@@ -50,7 +50,7 @@ msgstr ""
|
|
50 |
"<a href=\"https://translate.wordpress.org/projects/wp-plugins/perfect-"
|
51 |
"woocommerce-brands\" target=\"_blank\">Traducir el plugin</a>"
|
52 |
|
53 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
54 |
msgid ""
|
55 |
"<a href=\"https://github.com/titodevera/perfect-woocommerce-brands\" target="
|
56 |
"\"_blank\">View on GitHub</a>"
|
@@ -58,20 +58,20 @@ msgstr ""
|
|
58 |
"<a href=\"https://github.com/titodevera/perfect-woocommerce-brands\" target="
|
59 |
"\"_blank\">Ver en GitHub</a>"
|
60 |
|
61 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
62 |
msgid "Settings"
|
63 |
msgstr "Ajustes"
|
64 |
|
65 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
66 |
msgid "PWB Product carousel"
|
67 |
msgstr "PWB Carrusel de productos"
|
68 |
|
69 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
70 |
msgid "Product carousel by brand or by category"
|
71 |
msgstr "Carrusel de productos por marca o categoría"
|
72 |
|
73 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
74 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
75 |
#: classes/class-pwb-product-tab.php:18 classes/class-pwb-product-tab.php:35
|
76 |
#: classes/admin/class-pwb-exporter-support.php:22
|
77 |
#: classes/admin/class-pwb-importer-support.php:22
|
@@ -79,170 +79,174 @@ msgstr "Carrusel de productos por marca o categoría"
|
|
79 |
msgid "Brand"
|
80 |
msgstr "Marca"
|
81 |
|
82 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
83 |
msgid "Products"
|
84 |
msgstr "Productos"
|
85 |
|
86 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
87 |
msgid "Number of products to load"
|
88 |
msgstr "Número de productos que cargar"
|
89 |
|
90 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
91 |
msgid "Products to show"
|
92 |
msgstr "Productos a mostrar"
|
93 |
|
94 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
95 |
msgid "Number of products to show"
|
96 |
msgstr "Número de productos que mostrar"
|
97 |
|
98 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
99 |
msgid "Products to scroll"
|
100 |
msgstr "Número de productos por scroll"
|
101 |
|
102 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
103 |
msgid "Number of products to scroll"
|
104 |
msgstr "Número de productos por cada scroll"
|
105 |
|
106 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
107 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
108 |
msgid "Autoplay"
|
109 |
msgstr "Modo automático"
|
110 |
|
111 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
112 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
113 |
msgid "Autoplay carousel"
|
114 |
msgstr "Modo automático para el carrusel"
|
115 |
|
116 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
117 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
118 |
msgid "Arrows"
|
119 |
msgstr "Flechas de navegación"
|
120 |
|
121 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
122 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
123 |
msgid "Display prev and next arrows"
|
124 |
msgstr "Mostrar flechas de navegación"
|
125 |
|
126 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
127 |
msgid "PWB Brands carousel"
|
128 |
msgstr "PWB Carrusel de marcas"
|
129 |
|
130 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
131 |
msgid "Brands carousel"
|
132 |
msgstr "Carrusel de marcas"
|
133 |
|
134 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
135 |
msgid "Items"
|
136 |
msgstr "Elementos"
|
137 |
|
138 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
139 |
msgid "Number of items to load (or 'featured')"
|
140 |
msgstr "Número de elementos a cargar (o 'featured')"
|
141 |
|
142 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
143 |
msgid "Items to show"
|
144 |
msgstr "Elementos a mostrar"
|
145 |
|
146 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
147 |
msgid "Number of items to show"
|
148 |
msgstr "Número de elementos a mostrar"
|
149 |
|
150 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
151 |
msgid "Items to scroll"
|
152 |
msgstr "Número de elementos por scroll"
|
153 |
|
154 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
155 |
msgid "Number of items to scroll"
|
156 |
msgstr "Número de elementos por cada scroll"
|
157 |
|
158 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
159 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
160 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
161 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
162 |
msgid "Brand logo size"
|
163 |
msgstr "Tamaño del logo de la marca"
|
164 |
|
165 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
166 |
msgid "PWB All brands"
|
167 |
msgstr "PWB Todas las marcas"
|
168 |
|
169 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
170 |
msgid "Show all brands"
|
171 |
msgstr "Mostrar todas las marcas"
|
172 |
|
173 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
174 |
msgid "Brands per page"
|
175 |
msgstr "Marcas por página"
|
176 |
|
177 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
178 |
msgid "Show x brands per page"
|
179 |
msgstr "Mostrar x marcas por página"
|
180 |
|
181 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
182 |
msgid "Order by"
|
183 |
msgstr "Ordenar por"
|
184 |
|
185 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
186 |
msgid "Order"
|
187 |
msgstr "Orden"
|
188 |
|
189 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
190 |
msgid "Title position"
|
191 |
msgstr "Posición del título"
|
192 |
|
193 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
194 |
msgid "Before image"
|
195 |
msgstr "Antes de la imagen"
|
196 |
|
197 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
198 |
msgid "After image"
|
199 |
msgstr "Después de la imagen"
|
200 |
|
201 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
202 |
msgid "Hide"
|
203 |
msgstr "Ocultar"
|
204 |
|
205 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
206 |
-
#: classes/widgets/class-pwb-dropdown.php:
|
207 |
-
#: classes/widgets/class-pwb-
|
208 |
-
#: classes/widgets/class-pwb-list.php:66
|
209 |
msgid "Hide empty"
|
210 |
msgstr "Ocultar vacías"
|
211 |
|
212 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
213 |
msgid "Hide brands that have not been assigned to any product"
|
214 |
msgstr "Ocultar marcas que no han sido asignadas a ningún producto"
|
215 |
|
216 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
217 |
msgid "PWB brand"
|
218 |
msgstr "PWB Marca"
|
219 |
|
220 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
221 |
msgid "Show brand for a specific product"
|
222 |
msgstr "Ver marcas de un producto específico"
|
223 |
|
224 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
225 |
msgid "Product id"
|
226 |
msgstr "Id del producto"
|
227 |
|
228 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
229 |
msgid "Product id (post id)"
|
230 |
msgstr "Id del producto (id del post)"
|
231 |
|
232 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
233 |
-
#: classes/class-perfect-woocommerce-brands.php:511
|
234 |
-
#: classes/shortcodes/class-pwb-all-brands.php:90
|
235 |
#: classes/shortcodes/class-pwb-brand.php:29
|
236 |
#: classes/shortcodes/class-pwb-brand.php:31
|
237 |
-
#: templates/shortcodes/carousel.php:18
|
238 |
msgid "View brand"
|
239 |
msgstr "Ver marca"
|
240 |
|
241 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
242 |
msgid "¿Start migration?"
|
243 |
msgstr "¿Comenzar la migración?"
|
244 |
|
245 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
246 |
msgid ""
|
247 |
"We are migrating the product brands. ¡Don´t close this window until the "
|
248 |
"process is finished!"
|
@@ -250,11 +254,11 @@ msgstr ""
|
|
250 |
"Estamos migrando las marcas de producto. ¡No cierres esta ventana hasta que "
|
251 |
"el proceso finalice!"
|
252 |
|
253 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
254 |
msgid "¿Start loading dummy data?"
|
255 |
msgstr "¿Comenzar con la importación?"
|
256 |
|
257 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
258 |
msgid ""
|
259 |
"We are importing the dummy data. ¡Don´t close this window until the process "
|
260 |
"is finished!"
|
@@ -262,80 +266,85 @@ msgstr ""
|
|
262 |
"En este momento estamos importando las marcas ficticias. ¡No cierre esta "
|
263 |
"ventana hasta que termine el proceso!"
|
264 |
|
265 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
266 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
267 |
#: classes/admin/class-edit-brands-page.php:128
|
268 |
#: classes/admin/class-pwb-admin-tab.php:21
|
269 |
-
#: classes/widgets/class-pwb-
|
270 |
-
#: classes/widgets/class-pwb-filter-by-brand.php:
|
271 |
-
#:
|
|
|
272 |
msgid "Brands"
|
273 |
msgstr "Marcas"
|
274 |
|
275 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
276 |
msgid "All Brands"
|
277 |
msgstr "Todas las marcas"
|
278 |
|
279 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
280 |
msgid "Edit Brand"
|
281 |
msgstr "Editar marca"
|
282 |
|
283 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
284 |
msgid "View Brand"
|
285 |
msgstr "Ver marca"
|
286 |
|
287 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
288 |
msgid "Update Brand"
|
289 |
msgstr "Actualizar marca"
|
290 |
|
291 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
292 |
msgid "Add New Brand"
|
293 |
msgstr "Añadir nueva marca"
|
294 |
|
295 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
296 |
msgid "New Brand Name"
|
297 |
msgstr "Nuevo nombre de marca"
|
298 |
|
299 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
300 |
msgid "Parent Brand"
|
301 |
msgstr "Marca Padre"
|
302 |
|
303 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
304 |
msgid "Parent Brand:"
|
305 |
msgstr "Marca Padre:"
|
306 |
|
307 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
308 |
msgid "Search Brands"
|
309 |
msgstr "Buscar Marcas"
|
310 |
|
311 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
312 |
msgid "Popular Brands"
|
313 |
msgstr "Marcas Populares"
|
314 |
|
315 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
316 |
msgid "Separate brands with commas"
|
317 |
msgstr "Separar marcas con comas"
|
318 |
|
319 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
320 |
msgid "Add or remove brands"
|
321 |
msgstr "Añadir o eliminar marcas"
|
322 |
|
323 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
324 |
msgid "Choose from the most used brands"
|
325 |
msgstr "Seleccionar de las marcas más utilizadas"
|
326 |
|
327 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
328 |
msgid "No brands found"
|
329 |
msgstr "No se han encontrado marcas"
|
330 |
|
331 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
332 |
msgid "All"
|
333 |
msgstr "Todas"
|
334 |
|
335 |
-
#: classes/class-pwb-api-support.php:
|
336 |
msgid "Product brands"
|
337 |
msgstr "Marcas del producto"
|
338 |
|
|
|
|
|
|
|
|
|
339 |
#: classes/admin/class-brands-custom-fields.php:20
|
340 |
#: classes/admin/class-brands-custom-fields.php:59
|
341 |
msgid "Description"
|
@@ -352,7 +361,7 @@ msgstr ""
|
|
352 |
|
353 |
#: classes/admin/class-brands-custom-fields.php:26
|
354 |
#: classes/admin/class-brands-custom-fields.php:68
|
355 |
-
#: classes/widgets/class-pwb-list.php:
|
356 |
msgid "Brand logo"
|
357 |
msgstr "Logo de la marca"
|
358 |
|
@@ -404,126 +413,135 @@ msgstr "Error!"
|
|
404 |
msgid "Show featured brands first"
|
405 |
msgstr "Mostrar marcas favoritas primero"
|
406 |
|
407 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
408 |
msgid "Brands settings"
|
409 |
msgstr "Ajustes de las marcas"
|
410 |
|
411 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
412 |
msgid "Slug"
|
413 |
msgstr "Slug"
|
414 |
|
415 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
416 |
msgid "Brands taxonomy slug"
|
417 |
msgstr "Slug de la taxonomía marcas"
|
418 |
|
419 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
420 |
msgid "Show brand description"
|
421 |
msgstr "Mostrar descripción de la marca"
|
422 |
|
423 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
424 |
msgid "Show brand description (if is set) on brand archive page"
|
425 |
msgstr "Mostrar descripción de la marca en la página de archivo"
|
426 |
|
427 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
428 |
msgid "Yes, before product loop"
|
429 |
msgstr "Si, antes de los productos"
|
430 |
|
431 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
432 |
msgid "Yes, after product loop"
|
433 |
msgstr "Si, después de los productos"
|
434 |
|
435 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
436 |
msgid "No, hide description"
|
437 |
msgstr "No, ocultar descripción"
|
438 |
|
439 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
440 |
msgid "Single product tab"
|
441 |
msgstr "Tab en la página del producto"
|
442 |
|
443 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
444 |
msgid "Show brand tab in single product page"
|
445 |
msgstr "Mostrar pestaña con información de la marca en la página del producto"
|
446 |
|
447 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
448 |
msgid "Show brands in loop"
|
449 |
msgstr "Mostrar marcas en el loop"
|
450 |
|
451 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
452 |
msgid "Show brand logo (or name) in product loop"
|
453 |
msgstr "Mostrar el logo de la marca (o el nombre) en el loop"
|
454 |
|
455 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
456 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
457 |
msgid "No"
|
458 |
msgstr "No"
|
459 |
|
460 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
461 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
462 |
msgid "Show brand link"
|
463 |
msgstr "Mostrar el link de la marca"
|
464 |
|
465 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
466 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
467 |
msgid "Show brand image (if is set)"
|
468 |
msgstr "Mostrar el logo de la marca (si tiene uno asignado)"
|
469 |
|
470 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
471 |
msgid "Show brands in single product"
|
472 |
msgstr "Mostrar marcas en la página del producto"
|
473 |
|
474 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
475 |
msgid "Show brand logo (or name) in single product"
|
476 |
msgstr "Mostrar el logo de la marca (o el nombre) en la página del producto"
|
477 |
|
478 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
479 |
msgid "Brand logo size for single product view"
|
480 |
msgstr "Tamaño del logo para la vista individual de producto"
|
481 |
|
482 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
483 |
msgid "Brand position"
|
484 |
msgstr "Posición de la marca"
|
485 |
|
486 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
487 |
msgid "For single product"
|
488 |
msgstr "En la página individual de cada producto"
|
489 |
|
490 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
491 |
msgid "Before title"
|
492 |
msgstr "Antes del título"
|
493 |
|
494 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
495 |
msgid "After title"
|
496 |
msgstr "Después del título"
|
497 |
|
498 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
499 |
msgid "After price"
|
500 |
msgstr "Después del precio"
|
501 |
|
502 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
503 |
msgid "After excerpt"
|
504 |
msgstr "Después de la descripción corta"
|
505 |
|
506 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
507 |
msgid "After add to cart"
|
508 |
msgstr "Después del botón de comprar"
|
509 |
|
510 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
511 |
msgid "After meta"
|
512 |
msgstr "Después del meta"
|
513 |
|
514 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
515 |
msgid "After sharing"
|
516 |
msgstr "Después de compartir"
|
517 |
|
518 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
519 |
msgid "Tools"
|
520 |
msgstr "Herramientas"
|
521 |
|
522 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
|
|
523 |
msgid "Import brands"
|
524 |
msgstr "Importar marcas"
|
525 |
|
526 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
527 |
#, php-format
|
528 |
msgid ""
|
529 |
"Import brands from other brand plugin. <a href=\"%s\" target=\"_blank"
|
@@ -532,42 +550,42 @@ msgstr ""
|
|
532 |
"Importar marcas de producto de otro plugin de marcas. <a href=\"%s\" target="
|
533 |
"\"_blank\">Pulsa aquí para ver la documentación</a>"
|
534 |
|
535 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
536 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
537 |
msgid "-"
|
538 |
msgstr "-"
|
539 |
|
540 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
541 |
msgid "YITH WooCommerce Brands Add-On"
|
542 |
msgstr "YITH WooCommerce Brands Add-On"
|
543 |
|
544 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
545 |
msgid "Ultimate WooCommerce Brands"
|
546 |
msgstr "Ultimate WooCommerce Brands"
|
547 |
|
548 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
549 |
msgid "Offical WooCommerce Brands"
|
550 |
msgstr "Offical WooCommerce Brands"
|
551 |
|
552 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
553 |
msgid "Dummy data"
|
554 |
msgstr "Datos ficticios"
|
555 |
|
556 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
557 |
msgid "Import generic brands and assign it to products randomly"
|
558 |
msgstr ""
|
559 |
"Importar marcas genéricas y asignarlas a los productos existentes de forma "
|
560 |
"aleatoria"
|
561 |
|
562 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
563 |
msgid "Start import"
|
564 |
msgstr "Comenzar importación"
|
565 |
|
566 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
567 |
msgid "System status"
|
568 |
msgstr "Estado del sistema"
|
569 |
|
570 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
571 |
msgid "Show system status"
|
572 |
msgstr "Ver estado del sistema"
|
573 |
|
@@ -587,23 +605,23 @@ msgstr ""
|
|
587 |
"El cupón será válido si existe al menos un producto de la marca señalada en "
|
588 |
"el carrito"
|
589 |
|
590 |
-
#: classes/shortcodes/class-pwb-all-brands.php:
|
591 |
msgid "First page"
|
592 |
msgstr "Primera página"
|
593 |
|
594 |
-
#: classes/shortcodes/class-pwb-all-brands.php:
|
595 |
msgid "Previous page"
|
596 |
msgstr "Página anterior"
|
597 |
|
598 |
-
#: classes/shortcodes/class-pwb-all-brands.php:
|
599 |
msgid "Next page"
|
600 |
msgstr "Siguiente página"
|
601 |
|
602 |
-
#: classes/shortcodes/class-pwb-all-brands.php:
|
603 |
msgid "Last page"
|
604 |
msgstr "Última página"
|
605 |
|
606 |
-
#: classes/shortcodes/class-pwb-all-brands.php:
|
607 |
msgid "No results"
|
608 |
msgstr "No se han encontrado resultados"
|
609 |
|
@@ -615,28 +633,36 @@ msgstr "Añade un desplegable con las marcas a tu sitio"
|
|
615 |
msgid "Brands dropdown"
|
616 |
msgstr "Desplegable de marcas"
|
617 |
|
618 |
-
#: classes/widgets/class-pwb-dropdown.php:
|
619 |
msgid "Title"
|
620 |
msgstr "Título"
|
621 |
|
622 |
-
#: classes/widgets/class-pwb-dropdown.php:
|
623 |
-
#: classes/widgets/class-pwb-list.php:
|
624 |
-
msgid "
|
625 |
-
msgstr "
|
626 |
|
627 |
-
#: classes/widgets/class-pwb-filter-by-brand.php:
|
628 |
msgid "Recommended for product categories or shop page"
|
629 |
msgstr "Recomendado para las categorías de producto y la página de la tienda"
|
630 |
|
631 |
-
#: classes/widgets/class-pwb-filter-by-brand.php:
|
632 |
msgid "Filter products by brand"
|
633 |
msgstr "Filtrar productos por marca"
|
634 |
|
635 |
-
#: classes/widgets/class-pwb-filter-by-brand.php:
|
636 |
-
#: classes/widgets/class-pwb-list.php:
|
637 |
msgid "Title:"
|
638 |
msgstr "Título:"
|
639 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
640 |
#: classes/widgets/class-pwb-list.php:10
|
641 |
msgid "Adds a brands list to your site"
|
642 |
msgstr "Añade una lista de marcas a tu sitio"
|
@@ -645,23 +671,38 @@ msgstr "Añade una lista de marcas a tu sitio"
|
|
645 |
msgid "Brands list"
|
646 |
msgstr "Lista de marcas"
|
647 |
|
648 |
-
#: classes/widgets/class-pwb-list.php:
|
649 |
msgid "Display as:"
|
650 |
msgstr "Mostrar como:"
|
651 |
|
652 |
-
#: classes/widgets/class-pwb-list.php:
|
653 |
msgid "Brand name"
|
654 |
msgstr "Nombre de la marca"
|
655 |
|
656 |
-
#: classes/widgets/class-pwb-list.php:
|
657 |
msgid "Columns:"
|
658 |
msgstr "Columnas:"
|
659 |
|
660 |
-
#: classes/widgets/class-pwb-list.php:
|
661 |
-
|
|
|
|
|
|
|
662 |
msgid "Go to"
|
663 |
msgstr "Ir a"
|
664 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
665 |
#: templates/shortcodes/carousel.php:24
|
666 |
#: templates/shortcodes/product-carousel.php:28
|
667 |
msgid "Loading"
|
@@ -671,18 +712,11 @@ msgstr "Cargando"
|
|
671 |
msgid "Nothing found"
|
672 |
msgstr "Aquí no hay nada"
|
673 |
|
674 |
-
#: templates/widgets/filter-by-brand.php:
|
675 |
msgid "Apply filter"
|
676 |
msgstr "Filtrar"
|
677 |
|
678 |
-
|
679 |
-
|
680 |
-
|
681 |
-
|
682 |
-
#~ msgstr "https://wordpress.org/plugins/perfect-woocommerce-brands/"
|
683 |
-
|
684 |
-
#~ msgid "Alberto de Vera Sevilla"
|
685 |
-
#~ msgstr "Alberto de Vera Sevilla"
|
686 |
-
|
687 |
-
#~ msgid "https://profiles.wordpress.org/titodevera/"
|
688 |
-
#~ msgstr "https://profiles.wordpress.org/titodevera/"
|
7 |
msgstr ""
|
8 |
"Project-Id-Version: \n"
|
9 |
"Report-Msgid-Bugs-To: \n"
|
10 |
+
"POT-Creation-Date: 2018-11-29 00:15+0100\n"
|
11 |
+
"PO-Revision-Date: 2018-11-29 00:19+0100\n"
|
12 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
13 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
14 |
"Language: \n"
|
18 |
"Plural-Forms: \n"
|
19 |
"X-Generator: Eazy Po 0.9.5.3\n"
|
20 |
|
21 |
+
#: main.php:106
|
22 |
msgid ""
|
23 |
"Perfect WooCommerce Brands needs WooCommerce to run. Please, install and "
|
24 |
"active WooCommerce plugin."
|
26 |
"Perfect WooCommerce Brands necesita WooCommerce para funcionar. Por favor, "
|
27 |
"instala y activa WooCommerce."
|
28 |
|
29 |
+
#: classes/class-perfect-woocommerce-brands.php:52
|
30 |
msgid ""
|
31 |
"We know that you´re in love with Perfect WooCommerce Brands, you can help us "
|
32 |
"making it a bit better. Thanks a lot!"
|
34 |
"Sabemos que Perfect WooCommerce Brands te encanta, puedes ayudarnos a "
|
35 |
"hacerlo un poco mejor. ¡Muchas gracias!"
|
36 |
|
37 |
+
#: classes/class-perfect-woocommerce-brands.php:54
|
38 |
msgid ""
|
39 |
"<a href=\"https://wordpress.org/support/plugin/perfect-woocommerce-brands/"
|
40 |
"reviews/?rate=5#new-post\" target=\"_blank\">Leave a review</a>"
|
42 |
"<a href=\"https://wordpress.org/support/plugin/perfect-woocommerce-brands/"
|
43 |
"reviews/?rate=5#new-post\" target=\"_blank\">Dejar una review</a>"
|
44 |
|
45 |
+
#: classes/class-perfect-woocommerce-brands.php:55
|
46 |
msgid ""
|
47 |
"<a href=\"https://translate.wordpress.org/projects/wp-plugins/perfect-"
|
48 |
"woocommerce-brands\" target=\"_blank\">Translate the plugin</a>"
|
50 |
"<a href=\"https://translate.wordpress.org/projects/wp-plugins/perfect-"
|
51 |
"woocommerce-brands\" target=\"_blank\">Traducir el plugin</a>"
|
52 |
|
53 |
+
#: classes/class-perfect-woocommerce-brands.php:56
|
54 |
msgid ""
|
55 |
"<a href=\"https://github.com/titodevera/perfect-woocommerce-brands\" target="
|
56 |
"\"_blank\">View on GitHub</a>"
|
58 |
"<a href=\"https://github.com/titodevera/perfect-woocommerce-brands\" target="
|
59 |
"\"_blank\">Ver en GitHub</a>"
|
60 |
|
61 |
+
#: classes/class-perfect-woocommerce-brands.php:79
|
62 |
msgid "Settings"
|
63 |
msgstr "Ajustes"
|
64 |
|
65 |
+
#: classes/class-perfect-woocommerce-brands.php:280
|
66 |
msgid "PWB Product carousel"
|
67 |
msgstr "PWB Carrusel de productos"
|
68 |
|
69 |
+
#: classes/class-perfect-woocommerce-brands.php:281
|
70 |
msgid "Product carousel by brand or by category"
|
71 |
msgstr "Carrusel de productos por marca o categoría"
|
72 |
|
73 |
+
#: classes/class-perfect-woocommerce-brands.php:289
|
74 |
+
#: classes/class-perfect-woocommerce-brands.php:611
|
75 |
#: classes/class-pwb-product-tab.php:18 classes/class-pwb-product-tab.php:35
|
76 |
#: classes/admin/class-pwb-exporter-support.php:22
|
77 |
#: classes/admin/class-pwb-importer-support.php:22
|
79 |
msgid "Brand"
|
80 |
msgstr "Marca"
|
81 |
|
82 |
+
#: classes/class-perfect-woocommerce-brands.php:297
|
83 |
msgid "Products"
|
84 |
msgstr "Productos"
|
85 |
|
86 |
+
#: classes/class-perfect-woocommerce-brands.php:300
|
87 |
msgid "Number of products to load"
|
88 |
msgstr "Número de productos que cargar"
|
89 |
|
90 |
+
#: classes/class-perfect-woocommerce-brands.php:305
|
91 |
msgid "Products to show"
|
92 |
msgstr "Productos a mostrar"
|
93 |
|
94 |
+
#: classes/class-perfect-woocommerce-brands.php:308
|
95 |
msgid "Number of products to show"
|
96 |
msgstr "Número de productos que mostrar"
|
97 |
|
98 |
+
#: classes/class-perfect-woocommerce-brands.php:313
|
99 |
msgid "Products to scroll"
|
100 |
msgstr "Número de productos por scroll"
|
101 |
|
102 |
+
#: classes/class-perfect-woocommerce-brands.php:316
|
103 |
msgid "Number of products to scroll"
|
104 |
msgstr "Número de productos por cada scroll"
|
105 |
|
106 |
+
#: classes/class-perfect-woocommerce-brands.php:321
|
107 |
+
#: classes/class-perfect-woocommerce-brands.php:370
|
108 |
msgid "Autoplay"
|
109 |
msgstr "Modo automático"
|
110 |
|
111 |
+
#: classes/class-perfect-woocommerce-brands.php:323
|
112 |
+
#: classes/class-perfect-woocommerce-brands.php:372
|
113 |
msgid "Autoplay carousel"
|
114 |
msgstr "Modo automático para el carrusel"
|
115 |
|
116 |
+
#: classes/class-perfect-woocommerce-brands.php:328
|
117 |
+
#: classes/class-perfect-woocommerce-brands.php:377
|
118 |
msgid "Arrows"
|
119 |
msgstr "Flechas de navegación"
|
120 |
|
121 |
+
#: classes/class-perfect-woocommerce-brands.php:330
|
122 |
+
#: classes/class-perfect-woocommerce-brands.php:379
|
123 |
msgid "Display prev and next arrows"
|
124 |
msgstr "Mostrar flechas de navegación"
|
125 |
|
126 |
+
#: classes/class-perfect-woocommerce-brands.php:336
|
127 |
msgid "PWB Brands carousel"
|
128 |
msgstr "PWB Carrusel de marcas"
|
129 |
|
130 |
+
#: classes/class-perfect-woocommerce-brands.php:337
|
131 |
msgid "Brands carousel"
|
132 |
msgstr "Carrusel de marcas"
|
133 |
|
134 |
+
#: classes/class-perfect-woocommerce-brands.php:346
|
135 |
msgid "Items"
|
136 |
msgstr "Elementos"
|
137 |
|
138 |
+
#: classes/class-perfect-woocommerce-brands.php:349
|
139 |
msgid "Number of items to load (or 'featured')"
|
140 |
msgstr "Número de elementos a cargar (o 'featured')"
|
141 |
|
142 |
+
#: classes/class-perfect-woocommerce-brands.php:354
|
143 |
msgid "Items to show"
|
144 |
msgstr "Elementos a mostrar"
|
145 |
|
146 |
+
#: classes/class-perfect-woocommerce-brands.php:357
|
147 |
msgid "Number of items to show"
|
148 |
msgstr "Número de elementos a mostrar"
|
149 |
|
150 |
+
#: classes/class-perfect-woocommerce-brands.php:362
|
151 |
msgid "Items to scroll"
|
152 |
msgstr "Número de elementos por scroll"
|
153 |
|
154 |
+
#: classes/class-perfect-woocommerce-brands.php:365
|
155 |
msgid "Number of items to scroll"
|
156 |
msgstr "Número de elementos por cada scroll"
|
157 |
|
158 |
+
#: classes/class-perfect-woocommerce-brands.php:383
|
159 |
+
#: classes/class-perfect-woocommerce-brands.php:411
|
160 |
+
#: classes/class-perfect-woocommerce-brands.php:492
|
161 |
+
#: classes/admin/class-pwb-admin-tab.php:129
|
162 |
msgid "Brand logo size"
|
163 |
msgstr "Tamaño del logo de la marca"
|
164 |
|
165 |
+
#: classes/class-perfect-woocommerce-brands.php:394
|
166 |
msgid "PWB All brands"
|
167 |
msgstr "PWB Todas las marcas"
|
168 |
|
169 |
+
#: classes/class-perfect-woocommerce-brands.php:395
|
170 |
msgid "Show all brands"
|
171 |
msgstr "Mostrar todas las marcas"
|
172 |
|
173 |
+
#: classes/class-perfect-woocommerce-brands.php:404
|
174 |
msgid "Brands per page"
|
175 |
msgstr "Marcas por página"
|
176 |
|
177 |
+
#: classes/class-perfect-woocommerce-brands.php:407
|
178 |
msgid "Show x brands per page"
|
179 |
msgstr "Mostrar x marcas por página"
|
180 |
|
181 |
+
#: classes/class-perfect-woocommerce-brands.php:418
|
182 |
msgid "Order by"
|
183 |
msgstr "Ordenar por"
|
184 |
|
185 |
+
#: classes/class-perfect-woocommerce-brands.php:432
|
186 |
msgid "Order"
|
187 |
msgstr "Orden"
|
188 |
|
189 |
+
#: classes/class-perfect-woocommerce-brands.php:442
|
190 |
msgid "Title position"
|
191 |
msgstr "Posición del título"
|
192 |
|
193 |
+
#: classes/class-perfect-woocommerce-brands.php:446
|
194 |
msgid "Before image"
|
195 |
msgstr "Antes de la imagen"
|
196 |
|
197 |
+
#: classes/class-perfect-woocommerce-brands.php:447
|
198 |
msgid "After image"
|
199 |
msgstr "Después de la imagen"
|
200 |
|
201 |
+
#: classes/class-perfect-woocommerce-brands.php:448
|
202 |
msgid "Hide"
|
203 |
msgstr "Ocultar"
|
204 |
|
205 |
+
#: classes/class-perfect-woocommerce-brands.php:454
|
206 |
+
#: classes/widgets/class-pwb-dropdown.php:43
|
207 |
+
#: classes/widgets/class-pwb-list.php:67
|
|
|
208 |
msgid "Hide empty"
|
209 |
msgstr "Ocultar vacías"
|
210 |
|
211 |
+
#: classes/class-perfect-woocommerce-brands.php:456
|
212 |
msgid "Hide brands that have not been assigned to any product"
|
213 |
msgstr "Ocultar marcas que no han sido asignadas a ningún producto"
|
214 |
|
215 |
+
#: classes/class-perfect-woocommerce-brands.php:464
|
216 |
+
msgid "PWB AZ Listing"
|
217 |
+
msgstr "Lista A-Z"
|
218 |
+
|
219 |
+
#: classes/class-perfect-woocommerce-brands.php:465
|
220 |
+
msgid "AZ Listing for brands"
|
221 |
+
msgstr "Listado A-Z de marcas"
|
222 |
+
|
223 |
+
#: classes/class-perfect-woocommerce-brands.php:474
|
224 |
msgid "PWB brand"
|
225 |
msgstr "PWB Marca"
|
226 |
|
227 |
+
#: classes/class-perfect-woocommerce-brands.php:475
|
228 |
msgid "Show brand for a specific product"
|
229 |
msgstr "Ver marcas de un producto específico"
|
230 |
|
231 |
+
#: classes/class-perfect-woocommerce-brands.php:485
|
232 |
msgid "Product id"
|
233 |
msgstr "Id del producto"
|
234 |
|
235 |
+
#: classes/class-perfect-woocommerce-brands.php:488
|
236 |
msgid "Product id (post id)"
|
237 |
msgstr "Id del producto (id del post)"
|
238 |
|
239 |
+
#: classes/class-perfect-woocommerce-brands.php:533
|
|
|
|
|
240 |
#: classes/shortcodes/class-pwb-brand.php:29
|
241 |
#: classes/shortcodes/class-pwb-brand.php:31
|
|
|
242 |
msgid "View brand"
|
243 |
msgstr "Ver marca"
|
244 |
|
245 |
+
#: classes/class-perfect-woocommerce-brands.php:598
|
246 |
msgid "¿Start migration?"
|
247 |
msgstr "¿Comenzar la migración?"
|
248 |
|
249 |
+
#: classes/class-perfect-woocommerce-brands.php:599
|
250 |
msgid ""
|
251 |
"We are migrating the product brands. ¡Don´t close this window until the "
|
252 |
"process is finished!"
|
254 |
"Estamos migrando las marcas de producto. ¡No cierres esta ventana hasta que "
|
255 |
"el proceso finalice!"
|
256 |
|
257 |
+
#: classes/class-perfect-woocommerce-brands.php:600
|
258 |
msgid "¿Start loading dummy data?"
|
259 |
msgstr "¿Comenzar con la importación?"
|
260 |
|
261 |
+
#: classes/class-perfect-woocommerce-brands.php:601
|
262 |
msgid ""
|
263 |
"We are importing the dummy data. ¡Don´t close this window until the process "
|
264 |
"is finished!"
|
266 |
"En este momento estamos importando las marcas ficticias. ¡No cierre esta "
|
267 |
"ventana hasta que termine el proceso!"
|
268 |
|
269 |
+
#: classes/class-perfect-woocommerce-brands.php:610
|
270 |
+
#: classes/class-perfect-woocommerce-brands.php:612
|
271 |
#: classes/admin/class-edit-brands-page.php:128
|
272 |
#: classes/admin/class-pwb-admin-tab.php:21
|
273 |
+
#: classes/widgets/class-pwb-dropdown.php:19
|
274 |
+
#: classes/widgets/class-pwb-filter-by-brand.php:20
|
275 |
+
#: classes/widgets/class-pwb-filter-by-brand.php:75
|
276 |
+
#: classes/widgets/class-pwb-list.php:19 templates/widgets/dropdown.php:16
|
277 |
msgid "Brands"
|
278 |
msgstr "Marcas"
|
279 |
|
280 |
+
#: classes/class-perfect-woocommerce-brands.php:613
|
281 |
msgid "All Brands"
|
282 |
msgstr "Todas las marcas"
|
283 |
|
284 |
+
#: classes/class-perfect-woocommerce-brands.php:614
|
285 |
msgid "Edit Brand"
|
286 |
msgstr "Editar marca"
|
287 |
|
288 |
+
#: classes/class-perfect-woocommerce-brands.php:615
|
289 |
msgid "View Brand"
|
290 |
msgstr "Ver marca"
|
291 |
|
292 |
+
#: classes/class-perfect-woocommerce-brands.php:616
|
293 |
msgid "Update Brand"
|
294 |
msgstr "Actualizar marca"
|
295 |
|
296 |
+
#: classes/class-perfect-woocommerce-brands.php:617
|
297 |
msgid "Add New Brand"
|
298 |
msgstr "Añadir nueva marca"
|
299 |
|
300 |
+
#: classes/class-perfect-woocommerce-brands.php:618
|
301 |
msgid "New Brand Name"
|
302 |
msgstr "Nuevo nombre de marca"
|
303 |
|
304 |
+
#: classes/class-perfect-woocommerce-brands.php:619
|
305 |
msgid "Parent Brand"
|
306 |
msgstr "Marca Padre"
|
307 |
|
308 |
+
#: classes/class-perfect-woocommerce-brands.php:620
|
309 |
msgid "Parent Brand:"
|
310 |
msgstr "Marca Padre:"
|
311 |
|
312 |
+
#: classes/class-perfect-woocommerce-brands.php:621
|
313 |
msgid "Search Brands"
|
314 |
msgstr "Buscar Marcas"
|
315 |
|
316 |
+
#: classes/class-perfect-woocommerce-brands.php:622
|
317 |
msgid "Popular Brands"
|
318 |
msgstr "Marcas Populares"
|
319 |
|
320 |
+
#: classes/class-perfect-woocommerce-brands.php:623
|
321 |
msgid "Separate brands with commas"
|
322 |
msgstr "Separar marcas con comas"
|
323 |
|
324 |
+
#: classes/class-perfect-woocommerce-brands.php:624
|
325 |
msgid "Add or remove brands"
|
326 |
msgstr "Añadir o eliminar marcas"
|
327 |
|
328 |
+
#: classes/class-perfect-woocommerce-brands.php:625
|
329 |
msgid "Choose from the most used brands"
|
330 |
msgstr "Seleccionar de las marcas más utilizadas"
|
331 |
|
332 |
+
#: classes/class-perfect-woocommerce-brands.php:626
|
333 |
msgid "No brands found"
|
334 |
msgstr "No se han encontrado marcas"
|
335 |
|
336 |
+
#: classes/class-perfect-woocommerce-brands.php:697
|
337 |
msgid "All"
|
338 |
msgstr "Todas"
|
339 |
|
340 |
+
#: classes/class-pwb-api-support.php:87
|
341 |
msgid "Product brands"
|
342 |
msgstr "Marcas del producto"
|
343 |
|
344 |
+
#: classes/class-pwb-term.php:20
|
345 |
+
msgid "Only WP_Term objects are allowed"
|
346 |
+
msgstr "Solo se permiten objetos del tipo WP_Term"
|
347 |
+
|
348 |
#: classes/admin/class-brands-custom-fields.php:20
|
349 |
#: classes/admin/class-brands-custom-fields.php:59
|
350 |
msgid "Description"
|
361 |
|
362 |
#: classes/admin/class-brands-custom-fields.php:26
|
363 |
#: classes/admin/class-brands-custom-fields.php:68
|
364 |
+
#: classes/widgets/class-pwb-list.php:43
|
365 |
msgid "Brand logo"
|
366 |
msgstr "Logo de la marca"
|
367 |
|
413 |
msgid "Show featured brands first"
|
414 |
msgstr "Mostrar marcas favoritas primero"
|
415 |
|
416 |
+
#: classes/admin/class-pwb-admin-tab.php:70
|
417 |
msgid "Brands settings"
|
418 |
msgstr "Ajustes de las marcas"
|
419 |
|
420 |
+
#: classes/admin/class-pwb-admin-tab.php:76
|
421 |
msgid "Slug"
|
422 |
msgstr "Slug"
|
423 |
|
424 |
+
#: classes/admin/class-pwb-admin-tab.php:79
|
425 |
msgid "Brands taxonomy slug"
|
426 |
msgstr "Slug de la taxonomía marcas"
|
427 |
|
428 |
+
#: classes/admin/class-pwb-admin-tab.php:84
|
429 |
msgid "Show brand description"
|
430 |
msgstr "Mostrar descripción de la marca"
|
431 |
|
432 |
+
#: classes/admin/class-pwb-admin-tab.php:88
|
433 |
msgid "Show brand description (if is set) on brand archive page"
|
434 |
msgstr "Mostrar descripción de la marca en la página de archivo"
|
435 |
|
436 |
+
#: classes/admin/class-pwb-admin-tab.php:91
|
437 |
msgid "Yes, before product loop"
|
438 |
msgstr "Si, antes de los productos"
|
439 |
|
440 |
+
#: classes/admin/class-pwb-admin-tab.php:92
|
441 |
msgid "Yes, after product loop"
|
442 |
msgstr "Si, después de los productos"
|
443 |
|
444 |
+
#: classes/admin/class-pwb-admin-tab.php:93
|
445 |
msgid "No, hide description"
|
446 |
msgstr "No, ocultar descripción"
|
447 |
|
448 |
+
#: classes/admin/class-pwb-admin-tab.php:97
|
449 |
msgid "Single product tab"
|
450 |
msgstr "Tab en la página del producto"
|
451 |
|
452 |
+
#: classes/admin/class-pwb-admin-tab.php:100
|
453 |
msgid "Show brand tab in single product page"
|
454 |
msgstr "Mostrar pestaña con información de la marca en la página del producto"
|
455 |
|
456 |
+
#: classes/admin/class-pwb-admin-tab.php:104
|
457 |
msgid "Show brands in loop"
|
458 |
msgstr "Mostrar marcas en el loop"
|
459 |
|
460 |
+
#: classes/admin/class-pwb-admin-tab.php:107
|
461 |
msgid "Show brand logo (or name) in product loop"
|
462 |
msgstr "Mostrar el logo de la marca (o el nombre) en el loop"
|
463 |
|
464 |
+
#: classes/admin/class-pwb-admin-tab.php:110
|
465 |
+
#: classes/admin/class-pwb-admin-tab.php:123
|
466 |
msgid "No"
|
467 |
msgstr "No"
|
468 |
|
469 |
+
#: classes/admin/class-pwb-admin-tab.php:111
|
470 |
+
#: classes/admin/class-pwb-admin-tab.php:124
|
471 |
msgid "Show brand link"
|
472 |
msgstr "Mostrar el link de la marca"
|
473 |
|
474 |
+
#: classes/admin/class-pwb-admin-tab.php:112
|
475 |
+
#: classes/admin/class-pwb-admin-tab.php:125
|
476 |
msgid "Show brand image (if is set)"
|
477 |
msgstr "Mostrar el logo de la marca (si tiene uno asignado)"
|
478 |
|
479 |
+
#: classes/admin/class-pwb-admin-tab.php:116
|
480 |
msgid "Show brands in single product"
|
481 |
msgstr "Mostrar marcas en la página del producto"
|
482 |
|
483 |
+
#: classes/admin/class-pwb-admin-tab.php:119
|
484 |
msgid "Show brand logo (or name) in single product"
|
485 |
msgstr "Mostrar el logo de la marca (o el nombre) en la página del producto"
|
486 |
|
487 |
+
#: classes/admin/class-pwb-admin-tab.php:132
|
488 |
msgid "Brand logo size for single product view"
|
489 |
msgstr "Tamaño del logo para la vista individual de producto"
|
490 |
|
491 |
+
#: classes/admin/class-pwb-admin-tab.php:137
|
492 |
msgid "Brand position"
|
493 |
msgstr "Posición de la marca"
|
494 |
|
495 |
+
#: classes/admin/class-pwb-admin-tab.php:140
|
496 |
msgid "For single product"
|
497 |
msgstr "En la página individual de cada producto"
|
498 |
|
499 |
+
#: classes/admin/class-pwb-admin-tab.php:143
|
500 |
msgid "Before title"
|
501 |
msgstr "Antes del título"
|
502 |
|
503 |
+
#: classes/admin/class-pwb-admin-tab.php:144
|
504 |
msgid "After title"
|
505 |
msgstr "Después del título"
|
506 |
|
507 |
+
#: classes/admin/class-pwb-admin-tab.php:145
|
508 |
msgid "After price"
|
509 |
msgstr "Después del precio"
|
510 |
|
511 |
+
#: classes/admin/class-pwb-admin-tab.php:146
|
512 |
msgid "After excerpt"
|
513 |
msgstr "Después de la descripción corta"
|
514 |
|
515 |
+
#: classes/admin/class-pwb-admin-tab.php:147
|
516 |
msgid "After add to cart"
|
517 |
msgstr "Después del botón de comprar"
|
518 |
|
519 |
+
#: classes/admin/class-pwb-admin-tab.php:148
|
520 |
msgid "After meta"
|
521 |
msgstr "Después del meta"
|
522 |
|
523 |
+
#: classes/admin/class-pwb-admin-tab.php:149
|
524 |
msgid "After sharing"
|
525 |
msgstr "Después de compartir"
|
526 |
|
527 |
+
#: classes/admin/class-pwb-admin-tab.php:153
|
528 |
+
msgid "Brands page id"
|
529 |
+
msgstr "ID de la página de marcas"
|
530 |
+
|
531 |
+
#: classes/admin/class-pwb-admin-tab.php:156
|
532 |
+
msgid "For linking breadcrumbs"
|
533 |
+
msgstr "Para el enlace de las migas de pan"
|
534 |
+
|
535 |
+
#: classes/admin/class-pwb-admin-tab.php:173
|
536 |
msgid "Tools"
|
537 |
msgstr "Herramientas"
|
538 |
|
539 |
+
#: classes/admin/class-pwb-admin-tab.php:179
|
540 |
+
#: templates/admin/brands-exporter.php:16
|
541 |
msgid "Import brands"
|
542 |
msgstr "Importar marcas"
|
543 |
|
544 |
+
#: classes/admin/class-pwb-admin-tab.php:183
|
545 |
#, php-format
|
546 |
msgid ""
|
547 |
"Import brands from other brand plugin. <a href=\"%s\" target=\"_blank"
|
550 |
"Importar marcas de producto de otro plugin de marcas. <a href=\"%s\" target="
|
551 |
"\"_blank\">Pulsa aquí para ver la documentación</a>"
|
552 |
|
553 |
+
#: classes/admin/class-pwb-admin-tab.php:188
|
554 |
+
#: classes/admin/class-pwb-admin-tab.php:201
|
555 |
msgid "-"
|
556 |
msgstr "-"
|
557 |
|
558 |
+
#: classes/admin/class-pwb-admin-tab.php:189
|
559 |
msgid "YITH WooCommerce Brands Add-On"
|
560 |
msgstr "YITH WooCommerce Brands Add-On"
|
561 |
|
562 |
+
#: classes/admin/class-pwb-admin-tab.php:190
|
563 |
msgid "Ultimate WooCommerce Brands"
|
564 |
msgstr "Ultimate WooCommerce Brands"
|
565 |
|
566 |
+
#: classes/admin/class-pwb-admin-tab.php:191
|
567 |
msgid "Offical WooCommerce Brands"
|
568 |
msgstr "Offical WooCommerce Brands"
|
569 |
|
570 |
+
#: classes/admin/class-pwb-admin-tab.php:195
|
571 |
msgid "Dummy data"
|
572 |
msgstr "Datos ficticios"
|
573 |
|
574 |
+
#: classes/admin/class-pwb-admin-tab.php:198
|
575 |
msgid "Import generic brands and assign it to products randomly"
|
576 |
msgstr ""
|
577 |
"Importar marcas genéricas y asignarlas a los productos existentes de forma "
|
578 |
"aleatoria"
|
579 |
|
580 |
+
#: classes/admin/class-pwb-admin-tab.php:202
|
581 |
msgid "Start import"
|
582 |
msgstr "Comenzar importación"
|
583 |
|
584 |
+
#: classes/admin/class-pwb-admin-tab.php:206
|
585 |
msgid "System status"
|
586 |
msgstr "Estado del sistema"
|
587 |
|
588 |
+
#: classes/admin/class-pwb-admin-tab.php:208
|
589 |
msgid "Show system status"
|
590 |
msgstr "Ver estado del sistema"
|
591 |
|
605 |
"El cupón será válido si existe al menos un producto de la marca señalada en "
|
606 |
"el carrito"
|
607 |
|
608 |
+
#: classes/shortcodes/class-pwb-all-brands.php:108
|
609 |
msgid "First page"
|
610 |
msgstr "Primera página"
|
611 |
|
612 |
+
#: classes/shortcodes/class-pwb-all-brands.php:111
|
613 |
msgid "Previous page"
|
614 |
msgstr "Página anterior"
|
615 |
|
616 |
+
#: classes/shortcodes/class-pwb-all-brands.php:115
|
617 |
msgid "Next page"
|
618 |
msgstr "Siguiente página"
|
619 |
|
620 |
+
#: classes/shortcodes/class-pwb-all-brands.php:118
|
621 |
msgid "Last page"
|
622 |
msgstr "Última página"
|
623 |
|
624 |
+
#: classes/shortcodes/class-pwb-all-brands.php:123
|
625 |
msgid "No results"
|
626 |
msgstr "No se han encontrado resultados"
|
627 |
|
633 |
msgid "Brands dropdown"
|
634 |
msgstr "Desplegable de marcas"
|
635 |
|
636 |
+
#: classes/widgets/class-pwb-dropdown.php:26
|
637 |
msgid "Title"
|
638 |
msgstr "Título"
|
639 |
|
640 |
+
#: classes/widgets/class-pwb-dropdown.php:54
|
641 |
+
#: classes/widgets/class-pwb-list.php:77
|
642 |
+
msgid "Only favorite brands"
|
643 |
+
msgstr "Solo marcas favoritas"
|
644 |
|
645 |
+
#: classes/widgets/class-pwb-filter-by-brand.php:11
|
646 |
msgid "Recommended for product categories or shop page"
|
647 |
msgstr "Recomendado para las categorías de producto y la página de la tienda"
|
648 |
|
649 |
+
#: classes/widgets/class-pwb-filter-by-brand.php:12
|
650 |
msgid "Filter products by brand"
|
651 |
msgstr "Filtrar productos por marca"
|
652 |
|
653 |
+
#: classes/widgets/class-pwb-filter-by-brand.php:25
|
654 |
+
#: classes/widgets/class-pwb-list.php:28
|
655 |
msgid "Title:"
|
656 |
msgstr "Título:"
|
657 |
|
658 |
+
#: classes/widgets/class-pwb-filter-by-brand.php:30
|
659 |
+
msgid "Max number of brands"
|
660 |
+
msgstr "Número máximo de marcas"
|
661 |
+
|
662 |
+
#: classes/widgets/class-pwb-filter-by-brand.php:41
|
663 |
+
msgid "Hide filter button"
|
664 |
+
msgstr "No mostrar el botón Filtrar"
|
665 |
+
|
666 |
#: classes/widgets/class-pwb-list.php:10
|
667 |
msgid "Adds a brands list to your site"
|
668 |
msgstr "Añade una lista de marcas a tu sitio"
|
671 |
msgid "Brands list"
|
672 |
msgstr "Lista de marcas"
|
673 |
|
674 |
+
#: classes/widgets/class-pwb-list.php:37
|
675 |
msgid "Display as:"
|
676 |
msgstr "Mostrar como:"
|
677 |
|
678 |
+
#: classes/widgets/class-pwb-list.php:42
|
679 |
msgid "Brand name"
|
680 |
msgstr "Nombre de la marca"
|
681 |
|
682 |
+
#: classes/widgets/class-pwb-list.php:47
|
683 |
msgid "Columns:"
|
684 |
msgstr "Columnas:"
|
685 |
|
686 |
+
#: classes/widgets/class-pwb-list.php:87
|
687 |
+
msgid "Randomize"
|
688 |
+
msgstr "Aleatorio"
|
689 |
+
|
690 |
+
#: classes/widgets/class-pwb-list.php:119
|
691 |
msgid "Go to"
|
692 |
msgstr "Ir a"
|
693 |
|
694 |
+
#: templates/admin/brands-exporter.php:15
|
695 |
+
msgid "Export brands"
|
696 |
+
msgstr "Exportar marcas"
|
697 |
+
|
698 |
+
#: templates/admin/brands-exporter.php:18
|
699 |
+
msgid ""
|
700 |
+
"This tool allows you to export and import the brands between different sites "
|
701 |
+
"using PWB."
|
702 |
+
msgstr ""
|
703 |
+
"Esta herramienta permite exportar e importar marcas entre dos sitios "
|
704 |
+
"diferentes que utilizan PWB"
|
705 |
+
|
706 |
#: templates/shortcodes/carousel.php:24
|
707 |
#: templates/shortcodes/product-carousel.php:28
|
708 |
msgid "Loading"
|
712 |
msgid "Nothing found"
|
713 |
msgstr "Aquí no hay nada"
|
714 |
|
715 |
+
#: templates/widgets/filter-by-brand.php:25
|
716 |
msgid "Apply filter"
|
717 |
msgstr "Filtrar"
|
718 |
|
719 |
+
#: classes/widgets/class-pwb-dropdown.php:66
|
720 |
+
#: classes/widgets/class-pwb-list.php:115
|
721 |
+
msgid "There is not available brands"
|
722 |
+
msgstr "No se encuentran marcas disponibles"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
lang/perfect-woocommerce-brands.pot
CHANGED
@@ -2,66 +2,65 @@
|
|
2 |
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
3 |
# This file is distributed under the same license as the PACKAGE package.
|
4 |
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
|
|
5 |
#, fuzzy
|
6 |
msgid ""
|
7 |
msgstr ""
|
8 |
-
"Project-Id-Version: \n"
|
9 |
-
"Report-Msgid-Bugs-To:
|
10 |
-
"POT-Creation-Date:
|
11 |
-
"PO-Revision-Date:
|
12 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
13 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
14 |
"Language: \n"
|
15 |
"MIME-Version: 1.0\n"
|
16 |
"Content-Type: text/plain; charset=UTF-8\n"
|
17 |
"Content-Transfer-Encoding: 8bit\n"
|
18 |
-
"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
|
19 |
-
"X-Generator: Eazy Po 0.9.5.3\n"
|
20 |
|
21 |
-
#: main.php:
|
22 |
msgid ""
|
23 |
"Perfect WooCommerce Brands needs WooCommerce to run. Please, install and "
|
24 |
"active WooCommerce plugin."
|
25 |
msgstr ""
|
26 |
|
27 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
28 |
msgid ""
|
29 |
"We know that you´re in love with Perfect WooCommerce Brands, you can help us "
|
30 |
"making it a bit better. Thanks a lot!"
|
31 |
msgstr ""
|
32 |
|
33 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
34 |
msgid ""
|
35 |
"<a href=\"https://wordpress.org/support/plugin/perfect-woocommerce-brands/"
|
36 |
"reviews/?rate=5#new-post\" target=\"_blank\">Leave a review</a>"
|
37 |
msgstr ""
|
38 |
|
39 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
40 |
msgid ""
|
41 |
"<a href=\"https://translate.wordpress.org/projects/wp-plugins/perfect-"
|
42 |
"woocommerce-brands\" target=\"_blank\">Translate the plugin</a>"
|
43 |
msgstr ""
|
44 |
|
45 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
46 |
msgid ""
|
47 |
"<a href=\"https://github.com/titodevera/perfect-woocommerce-brands\" target="
|
48 |
"\"_blank\">View on GitHub</a>"
|
49 |
msgstr ""
|
50 |
|
51 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
52 |
msgid "Settings"
|
53 |
msgstr ""
|
54 |
|
55 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
56 |
msgid "PWB Product carousel"
|
57 |
msgstr ""
|
58 |
|
59 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
60 |
msgid "Product carousel by brand or by category"
|
61 |
msgstr ""
|
62 |
|
63 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
64 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
65 |
#: classes/class-pwb-product-tab.php:18 classes/class-pwb-product-tab.php:35
|
66 |
#: classes/admin/class-pwb-exporter-support.php:22
|
67 |
#: classes/admin/class-pwb-importer-support.php:22
|
@@ -69,259 +68,268 @@ msgstr ""
|
|
69 |
msgid "Brand"
|
70 |
msgstr ""
|
71 |
|
72 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
73 |
msgid "Products"
|
74 |
msgstr ""
|
75 |
|
76 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
77 |
msgid "Number of products to load"
|
78 |
msgstr ""
|
79 |
|
80 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
81 |
msgid "Products to show"
|
82 |
msgstr ""
|
83 |
|
84 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
85 |
msgid "Number of products to show"
|
86 |
msgstr ""
|
87 |
|
88 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
89 |
msgid "Products to scroll"
|
90 |
msgstr ""
|
91 |
|
92 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
93 |
msgid "Number of products to scroll"
|
94 |
msgstr ""
|
95 |
|
96 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
97 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
98 |
msgid "Autoplay"
|
99 |
msgstr ""
|
100 |
|
101 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
102 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
103 |
msgid "Autoplay carousel"
|
104 |
msgstr ""
|
105 |
|
106 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
107 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
108 |
msgid "Arrows"
|
109 |
msgstr ""
|
110 |
|
111 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
112 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
113 |
msgid "Display prev and next arrows"
|
114 |
msgstr ""
|
115 |
|
116 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
117 |
msgid "PWB Brands carousel"
|
118 |
msgstr ""
|
119 |
|
120 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
121 |
msgid "Brands carousel"
|
122 |
msgstr ""
|
123 |
|
124 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
125 |
msgid "Items"
|
126 |
msgstr ""
|
127 |
|
128 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
129 |
msgid "Number of items to load (or 'featured')"
|
130 |
msgstr ""
|
131 |
|
132 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
133 |
msgid "Items to show"
|
134 |
msgstr ""
|
135 |
|
136 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
137 |
msgid "Number of items to show"
|
138 |
msgstr ""
|
139 |
|
140 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
141 |
msgid "Items to scroll"
|
142 |
msgstr ""
|
143 |
|
144 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
145 |
msgid "Number of items to scroll"
|
146 |
msgstr ""
|
147 |
|
148 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
149 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
150 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
151 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
152 |
msgid "Brand logo size"
|
153 |
msgstr ""
|
154 |
|
155 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
156 |
msgid "PWB All brands"
|
157 |
msgstr ""
|
158 |
|
159 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
160 |
msgid "Show all brands"
|
161 |
msgstr ""
|
162 |
|
163 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
164 |
msgid "Brands per page"
|
165 |
msgstr ""
|
166 |
|
167 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
168 |
msgid "Show x brands per page"
|
169 |
msgstr ""
|
170 |
|
171 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
172 |
msgid "Order by"
|
173 |
msgstr ""
|
174 |
|
175 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
176 |
msgid "Order"
|
177 |
msgstr ""
|
178 |
|
179 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
180 |
msgid "Title position"
|
181 |
msgstr ""
|
182 |
|
183 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
184 |
msgid "Before image"
|
185 |
msgstr ""
|
186 |
|
187 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
188 |
msgid "After image"
|
189 |
msgstr ""
|
190 |
|
191 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
192 |
msgid "Hide"
|
193 |
msgstr ""
|
194 |
|
195 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
196 |
-
#: classes/widgets/class-pwb-dropdown.php:
|
197 |
-
#: classes/widgets/class-pwb-
|
198 |
-
#: classes/widgets/class-pwb-list.php:66
|
199 |
msgid "Hide empty"
|
200 |
msgstr ""
|
201 |
|
202 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
203 |
msgid "Hide brands that have not been assigned to any product"
|
204 |
msgstr ""
|
205 |
|
206 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
207 |
msgid "PWB brand"
|
208 |
msgstr ""
|
209 |
|
210 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
211 |
msgid "Show brand for a specific product"
|
212 |
msgstr ""
|
213 |
|
214 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
215 |
msgid "Product id"
|
216 |
msgstr ""
|
217 |
|
218 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
219 |
msgid "Product id (post id)"
|
220 |
msgstr ""
|
221 |
|
222 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
223 |
-
#: classes/class-perfect-woocommerce-brands.php:511
|
224 |
-
#: classes/shortcodes/class-pwb-all-brands.php:90
|
225 |
#: classes/shortcodes/class-pwb-brand.php:29
|
226 |
#: classes/shortcodes/class-pwb-brand.php:31
|
227 |
-
#: templates/shortcodes/carousel.php:18
|
228 |
msgid "View brand"
|
229 |
msgstr ""
|
230 |
|
231 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
232 |
msgid "¿Start migration?"
|
233 |
msgstr ""
|
234 |
|
235 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
236 |
msgid ""
|
237 |
"We are migrating the product brands. ¡Don´t close this window until the "
|
238 |
"process is finished!"
|
239 |
msgstr ""
|
240 |
|
241 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
242 |
msgid "¿Start loading dummy data?"
|
243 |
msgstr ""
|
244 |
|
245 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
246 |
msgid ""
|
247 |
"We are importing the dummy data. ¡Don´t close this window until the process "
|
248 |
"is finished!"
|
249 |
msgstr ""
|
250 |
|
251 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
252 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
253 |
#: classes/admin/class-edit-brands-page.php:128
|
254 |
#: classes/admin/class-pwb-admin-tab.php:21
|
255 |
-
#: classes/widgets/class-pwb-
|
256 |
-
#: classes/widgets/class-pwb-filter-by-brand.php:
|
257 |
-
#:
|
|
|
258 |
msgid "Brands"
|
259 |
msgstr ""
|
260 |
|
261 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
262 |
msgid "All Brands"
|
263 |
msgstr ""
|
264 |
|
265 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
266 |
msgid "Edit Brand"
|
267 |
msgstr ""
|
268 |
|
269 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
270 |
msgid "View Brand"
|
271 |
msgstr ""
|
272 |
|
273 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
274 |
msgid "Update Brand"
|
275 |
msgstr ""
|
276 |
|
277 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
278 |
msgid "Add New Brand"
|
279 |
msgstr ""
|
280 |
|
281 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
282 |
msgid "New Brand Name"
|
283 |
msgstr ""
|
284 |
|
285 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
286 |
msgid "Parent Brand"
|
287 |
msgstr ""
|
288 |
|
289 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
290 |
msgid "Parent Brand:"
|
291 |
msgstr ""
|
292 |
|
293 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
294 |
msgid "Search Brands"
|
295 |
msgstr ""
|
296 |
|
297 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
298 |
msgid "Popular Brands"
|
299 |
msgstr ""
|
300 |
|
301 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
302 |
msgid "Separate brands with commas"
|
303 |
msgstr ""
|
304 |
|
305 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
306 |
msgid "Add or remove brands"
|
307 |
msgstr ""
|
308 |
|
309 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
310 |
msgid "Choose from the most used brands"
|
311 |
msgstr ""
|
312 |
|
313 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
314 |
msgid "No brands found"
|
315 |
msgstr ""
|
316 |
|
317 |
-
#: classes/class-perfect-woocommerce-brands.php:
|
318 |
msgid "All"
|
319 |
msgstr ""
|
320 |
|
321 |
-
#: classes/class-pwb-api-support.php:
|
322 |
msgid "Product brands"
|
323 |
msgstr ""
|
324 |
|
|
|
|
|
|
|
|
|
325 |
#: classes/admin/class-brands-custom-fields.php:20
|
326 |
#: classes/admin/class-brands-custom-fields.php:59
|
327 |
msgid "Description"
|
@@ -336,7 +344,7 @@ msgstr ""
|
|
336 |
|
337 |
#: classes/admin/class-brands-custom-fields.php:26
|
338 |
#: classes/admin/class-brands-custom-fields.php:68
|
339 |
-
#: classes/widgets/class-pwb-list.php:
|
340 |
msgid "Brand logo"
|
341 |
msgstr ""
|
342 |
|
@@ -386,166 +394,175 @@ msgstr ""
|
|
386 |
msgid "Show featured brands first"
|
387 |
msgstr ""
|
388 |
|
389 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
390 |
msgid "Brands settings"
|
391 |
msgstr ""
|
392 |
|
393 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
394 |
msgid "Slug"
|
395 |
msgstr ""
|
396 |
|
397 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
398 |
msgid "Brands taxonomy slug"
|
399 |
msgstr ""
|
400 |
|
401 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
402 |
msgid "Show brand description"
|
403 |
msgstr ""
|
404 |
|
405 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
406 |
msgid "Show brand description (if is set) on brand archive page"
|
407 |
msgstr ""
|
408 |
|
409 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
410 |
msgid "Yes, before product loop"
|
411 |
msgstr ""
|
412 |
|
413 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
414 |
msgid "Yes, after product loop"
|
415 |
msgstr ""
|
416 |
|
417 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
418 |
msgid "No, hide description"
|
419 |
msgstr ""
|
420 |
|
421 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
422 |
msgid "Single product tab"
|
423 |
msgstr ""
|
424 |
|
425 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
426 |
msgid "Show brand tab in single product page"
|
427 |
msgstr ""
|
428 |
|
429 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
430 |
msgid "Show brands in loop"
|
431 |
msgstr ""
|
432 |
|
433 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
434 |
msgid "Show brand logo (or name) in product loop"
|
435 |
msgstr ""
|
436 |
|
437 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
438 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
439 |
msgid "No"
|
440 |
msgstr ""
|
441 |
|
442 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
443 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
444 |
msgid "Show brand link"
|
445 |
msgstr ""
|
446 |
|
447 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
448 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
449 |
msgid "Show brand image (if is set)"
|
450 |
msgstr ""
|
451 |
|
452 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
453 |
msgid "Show brands in single product"
|
454 |
msgstr ""
|
455 |
|
456 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
457 |
msgid "Show brand logo (or name) in single product"
|
458 |
msgstr ""
|
459 |
|
460 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
461 |
msgid "Brand logo size for single product view"
|
462 |
msgstr ""
|
463 |
|
464 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
465 |
msgid "Brand position"
|
466 |
msgstr ""
|
467 |
|
468 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
469 |
msgid "For single product"
|
470 |
msgstr ""
|
471 |
|
472 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
473 |
msgid "Before title"
|
474 |
msgstr ""
|
475 |
|
476 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
477 |
msgid "After title"
|
478 |
msgstr ""
|
479 |
|
480 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
481 |
msgid "After price"
|
482 |
msgstr ""
|
483 |
|
484 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
485 |
msgid "After excerpt"
|
486 |
msgstr ""
|
487 |
|
488 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
489 |
msgid "After add to cart"
|
490 |
msgstr ""
|
491 |
|
492 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
493 |
msgid "After meta"
|
494 |
msgstr ""
|
495 |
|
496 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
497 |
msgid "After sharing"
|
498 |
msgstr ""
|
499 |
|
500 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
501 |
msgid "Tools"
|
502 |
msgstr ""
|
503 |
|
504 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
|
|
505 |
msgid "Import brands"
|
506 |
msgstr ""
|
507 |
|
508 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
509 |
#, php-format
|
510 |
msgid ""
|
511 |
"Import brands from other brand plugin. <a href=\"%s\" target=\"_blank"
|
512 |
"\">Click here for more details</a>"
|
513 |
msgstr ""
|
514 |
|
515 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
516 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
517 |
msgid "-"
|
518 |
msgstr ""
|
519 |
|
520 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
521 |
msgid "YITH WooCommerce Brands Add-On"
|
522 |
msgstr ""
|
523 |
|
524 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
525 |
msgid "Ultimate WooCommerce Brands"
|
526 |
msgstr ""
|
527 |
|
528 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
529 |
msgid "Offical WooCommerce Brands"
|
530 |
msgstr ""
|
531 |
|
532 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
533 |
msgid "Dummy data"
|
534 |
msgstr ""
|
535 |
|
536 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
537 |
msgid "Import generic brands and assign it to products randomly"
|
538 |
msgstr ""
|
539 |
|
540 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
541 |
msgid "Start import"
|
542 |
msgstr ""
|
543 |
|
544 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
545 |
msgid "System status"
|
546 |
msgstr ""
|
547 |
|
548 |
-
#: classes/admin/class-pwb-admin-tab.php:
|
549 |
msgid "Show system status"
|
550 |
msgstr ""
|
551 |
|
@@ -563,23 +580,23 @@ msgid ""
|
|
563 |
"cart"
|
564 |
msgstr ""
|
565 |
|
566 |
-
#: classes/shortcodes/class-pwb-all-brands.php:
|
567 |
msgid "First page"
|
568 |
msgstr ""
|
569 |
|
570 |
-
#: classes/shortcodes/class-pwb-all-brands.php:
|
571 |
msgid "Previous page"
|
572 |
msgstr ""
|
573 |
|
574 |
-
#: classes/shortcodes/class-pwb-all-brands.php:
|
575 |
msgid "Next page"
|
576 |
msgstr ""
|
577 |
|
578 |
-
#: classes/shortcodes/class-pwb-all-brands.php:
|
579 |
msgid "Last page"
|
580 |
msgstr ""
|
581 |
|
582 |
-
#: classes/shortcodes/class-pwb-all-brands.php:
|
583 |
msgid "No results"
|
584 |
msgstr ""
|
585 |
|
@@ -591,28 +608,36 @@ msgstr ""
|
|
591 |
msgid "Brands dropdown"
|
592 |
msgstr ""
|
593 |
|
594 |
-
#: classes/widgets/class-pwb-dropdown.php:
|
595 |
msgid "Title"
|
596 |
msgstr ""
|
597 |
|
598 |
-
#: classes/widgets/class-pwb-dropdown.php:
|
599 |
-
#: classes/widgets/class-pwb-list.php:
|
600 |
-
msgid "
|
601 |
msgstr ""
|
602 |
|
603 |
-
#: classes/widgets/class-pwb-filter-by-brand.php:
|
604 |
msgid "Recommended for product categories or shop page"
|
605 |
msgstr ""
|
606 |
|
607 |
-
#: classes/widgets/class-pwb-filter-by-brand.php:
|
608 |
msgid "Filter products by brand"
|
609 |
msgstr ""
|
610 |
|
611 |
-
#: classes/widgets/class-pwb-filter-by-brand.php:
|
612 |
-
#: classes/widgets/class-pwb-list.php:
|
613 |
msgid "Title:"
|
614 |
msgstr ""
|
615 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
616 |
#: classes/widgets/class-pwb-list.php:10
|
617 |
msgid "Adds a brands list to your site"
|
618 |
msgstr ""
|
@@ -621,23 +646,36 @@ msgstr ""
|
|
621 |
msgid "Brands list"
|
622 |
msgstr ""
|
623 |
|
624 |
-
#: classes/widgets/class-pwb-list.php:
|
625 |
msgid "Display as:"
|
626 |
msgstr ""
|
627 |
|
628 |
-
#: classes/widgets/class-pwb-list.php:
|
629 |
msgid "Brand name"
|
630 |
msgstr ""
|
631 |
|
632 |
-
#: classes/widgets/class-pwb-list.php:
|
633 |
msgid "Columns:"
|
634 |
msgstr ""
|
635 |
|
636 |
-
#: classes/widgets/class-pwb-list.php:
|
637 |
-
|
|
|
|
|
|
|
638 |
msgid "Go to"
|
639 |
msgstr ""
|
640 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
641 |
#: templates/shortcodes/carousel.php:24
|
642 |
#: templates/shortcodes/product-carousel.php:28
|
643 |
msgid "Loading"
|
@@ -647,6 +685,6 @@ msgstr ""
|
|
647 |
msgid "Nothing found"
|
648 |
msgstr ""
|
649 |
|
650 |
-
#: templates/widgets/filter-by-brand.php:
|
651 |
msgid "Apply filter"
|
652 |
-
msgstr ""
|
2 |
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
3 |
# This file is distributed under the same license as the PACKAGE package.
|
4 |
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
5 |
+
#
|
6 |
#, fuzzy
|
7 |
msgid ""
|
8 |
msgstr ""
|
9 |
+
"Project-Id-Version: PACKAGE VERSION\n"
|
10 |
+
"Report-Msgid-Bugs-To: \n"
|
11 |
+
"POT-Creation-Date: 2018-11-29 00:11+0100\n"
|
12 |
+
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
13 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
14 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
15 |
"Language: \n"
|
16 |
"MIME-Version: 1.0\n"
|
17 |
"Content-Type: text/plain; charset=UTF-8\n"
|
18 |
"Content-Transfer-Encoding: 8bit\n"
|
|
|
|
|
19 |
|
20 |
+
#: main.php:106
|
21 |
msgid ""
|
22 |
"Perfect WooCommerce Brands needs WooCommerce to run. Please, install and "
|
23 |
"active WooCommerce plugin."
|
24 |
msgstr ""
|
25 |
|
26 |
+
#: classes/class-perfect-woocommerce-brands.php:52
|
27 |
msgid ""
|
28 |
"We know that you´re in love with Perfect WooCommerce Brands, you can help us "
|
29 |
"making it a bit better. Thanks a lot!"
|
30 |
msgstr ""
|
31 |
|
32 |
+
#: classes/class-perfect-woocommerce-brands.php:54
|
33 |
msgid ""
|
34 |
"<a href=\"https://wordpress.org/support/plugin/perfect-woocommerce-brands/"
|
35 |
"reviews/?rate=5#new-post\" target=\"_blank\">Leave a review</a>"
|
36 |
msgstr ""
|
37 |
|
38 |
+
#: classes/class-perfect-woocommerce-brands.php:55
|
39 |
msgid ""
|
40 |
"<a href=\"https://translate.wordpress.org/projects/wp-plugins/perfect-"
|
41 |
"woocommerce-brands\" target=\"_blank\">Translate the plugin</a>"
|
42 |
msgstr ""
|
43 |
|
44 |
+
#: classes/class-perfect-woocommerce-brands.php:56
|
45 |
msgid ""
|
46 |
"<a href=\"https://github.com/titodevera/perfect-woocommerce-brands\" target="
|
47 |
"\"_blank\">View on GitHub</a>"
|
48 |
msgstr ""
|
49 |
|
50 |
+
#: classes/class-perfect-woocommerce-brands.php:79
|
51 |
msgid "Settings"
|
52 |
msgstr ""
|
53 |
|
54 |
+
#: classes/class-perfect-woocommerce-brands.php:280
|
55 |
msgid "PWB Product carousel"
|
56 |
msgstr ""
|
57 |
|
58 |
+
#: classes/class-perfect-woocommerce-brands.php:281
|
59 |
msgid "Product carousel by brand or by category"
|
60 |
msgstr ""
|
61 |
|
62 |
+
#: classes/class-perfect-woocommerce-brands.php:289
|
63 |
+
#: classes/class-perfect-woocommerce-brands.php:611
|
64 |
#: classes/class-pwb-product-tab.php:18 classes/class-pwb-product-tab.php:35
|
65 |
#: classes/admin/class-pwb-exporter-support.php:22
|
66 |
#: classes/admin/class-pwb-importer-support.php:22
|
68 |
msgid "Brand"
|
69 |
msgstr ""
|
70 |
|
71 |
+
#: classes/class-perfect-woocommerce-brands.php:297
|
72 |
msgid "Products"
|
73 |
msgstr ""
|
74 |
|
75 |
+
#: classes/class-perfect-woocommerce-brands.php:300
|
76 |
msgid "Number of products to load"
|
77 |
msgstr ""
|
78 |
|
79 |
+
#: classes/class-perfect-woocommerce-brands.php:305
|
80 |
msgid "Products to show"
|
81 |
msgstr ""
|
82 |
|
83 |
+
#: classes/class-perfect-woocommerce-brands.php:308
|
84 |
msgid "Number of products to show"
|
85 |
msgstr ""
|
86 |
|
87 |
+
#: classes/class-perfect-woocommerce-brands.php:313
|
88 |
msgid "Products to scroll"
|
89 |
msgstr ""
|
90 |
|
91 |
+
#: classes/class-perfect-woocommerce-brands.php:316
|
92 |
msgid "Number of products to scroll"
|
93 |
msgstr ""
|
94 |
|
95 |
+
#: classes/class-perfect-woocommerce-brands.php:321
|
96 |
+
#: classes/class-perfect-woocommerce-brands.php:370
|
97 |
msgid "Autoplay"
|
98 |
msgstr ""
|
99 |
|
100 |
+
#: classes/class-perfect-woocommerce-brands.php:323
|
101 |
+
#: classes/class-perfect-woocommerce-brands.php:372
|
102 |
msgid "Autoplay carousel"
|
103 |
msgstr ""
|
104 |
|
105 |
+
#: classes/class-perfect-woocommerce-brands.php:328
|
106 |
+
#: classes/class-perfect-woocommerce-brands.php:377
|
107 |
msgid "Arrows"
|
108 |
msgstr ""
|
109 |
|
110 |
+
#: classes/class-perfect-woocommerce-brands.php:330
|
111 |
+
#: classes/class-perfect-woocommerce-brands.php:379
|
112 |
msgid "Display prev and next arrows"
|
113 |
msgstr ""
|
114 |
|
115 |
+
#: classes/class-perfect-woocommerce-brands.php:336
|
116 |
msgid "PWB Brands carousel"
|
117 |
msgstr ""
|
118 |
|
119 |
+
#: classes/class-perfect-woocommerce-brands.php:337
|
120 |
msgid "Brands carousel"
|
121 |
msgstr ""
|
122 |
|
123 |
+
#: classes/class-perfect-woocommerce-brands.php:346
|
124 |
msgid "Items"
|
125 |
msgstr ""
|
126 |
|
127 |
+
#: classes/class-perfect-woocommerce-brands.php:349
|
128 |
msgid "Number of items to load (or 'featured')"
|
129 |
msgstr ""
|
130 |
|
131 |
+
#: classes/class-perfect-woocommerce-brands.php:354
|
132 |
msgid "Items to show"
|
133 |
msgstr ""
|
134 |
|
135 |
+
#: classes/class-perfect-woocommerce-brands.php:357
|
136 |
msgid "Number of items to show"
|
137 |
msgstr ""
|
138 |
|
139 |
+
#: classes/class-perfect-woocommerce-brands.php:362
|
140 |
msgid "Items to scroll"
|
141 |
msgstr ""
|
142 |
|
143 |
+
#: classes/class-perfect-woocommerce-brands.php:365
|
144 |
msgid "Number of items to scroll"
|
145 |
msgstr ""
|
146 |
|
147 |
+
#: classes/class-perfect-woocommerce-brands.php:383
|
148 |
+
#: classes/class-perfect-woocommerce-brands.php:411
|
149 |
+
#: classes/class-perfect-woocommerce-brands.php:492
|
150 |
+
#: classes/admin/class-pwb-admin-tab.php:129
|
151 |
msgid "Brand logo size"
|
152 |
msgstr ""
|
153 |
|
154 |
+
#: classes/class-perfect-woocommerce-brands.php:394
|
155 |
msgid "PWB All brands"
|
156 |
msgstr ""
|
157 |
|
158 |
+
#: classes/class-perfect-woocommerce-brands.php:395
|
159 |
msgid "Show all brands"
|
160 |
msgstr ""
|
161 |
|
162 |
+
#: classes/class-perfect-woocommerce-brands.php:404
|
163 |
msgid "Brands per page"
|
164 |
msgstr ""
|
165 |
|
166 |
+
#: classes/class-perfect-woocommerce-brands.php:407
|
167 |
msgid "Show x brands per page"
|
168 |
msgstr ""
|
169 |
|
170 |
+
#: classes/class-perfect-woocommerce-brands.php:418
|
171 |
msgid "Order by"
|
172 |
msgstr ""
|
173 |
|
174 |
+
#: classes/class-perfect-woocommerce-brands.php:432
|
175 |
msgid "Order"
|
176 |
msgstr ""
|
177 |
|
178 |
+
#: classes/class-perfect-woocommerce-brands.php:442
|
179 |
msgid "Title position"
|
180 |
msgstr ""
|
181 |
|
182 |
+
#: classes/class-perfect-woocommerce-brands.php:446
|
183 |
msgid "Before image"
|
184 |
msgstr ""
|
185 |
|
186 |
+
#: classes/class-perfect-woocommerce-brands.php:447
|
187 |
msgid "After image"
|
188 |
msgstr ""
|
189 |
|
190 |
+
#: classes/class-perfect-woocommerce-brands.php:448
|
191 |
msgid "Hide"
|
192 |
msgstr ""
|
193 |
|
194 |
+
#: classes/class-perfect-woocommerce-brands.php:454
|
195 |
+
#: classes/widgets/class-pwb-dropdown.php:43
|
196 |
+
#: classes/widgets/class-pwb-list.php:67
|
|
|
197 |
msgid "Hide empty"
|
198 |
msgstr ""
|
199 |
|
200 |
+
#: classes/class-perfect-woocommerce-brands.php:456
|
201 |
msgid "Hide brands that have not been assigned to any product"
|
202 |
msgstr ""
|
203 |
|
204 |
+
#: classes/class-perfect-woocommerce-brands.php:464
|
205 |
+
msgid "PWB AZ Listing"
|
206 |
+
msgstr ""
|
207 |
+
|
208 |
+
#: classes/class-perfect-woocommerce-brands.php:465
|
209 |
+
msgid "AZ Listing for brands"
|
210 |
+
msgstr ""
|
211 |
+
|
212 |
+
#: classes/class-perfect-woocommerce-brands.php:474
|
213 |
msgid "PWB brand"
|
214 |
msgstr ""
|
215 |
|
216 |
+
#: classes/class-perfect-woocommerce-brands.php:475
|
217 |
msgid "Show brand for a specific product"
|
218 |
msgstr ""
|
219 |
|
220 |
+
#: classes/class-perfect-woocommerce-brands.php:485
|
221 |
msgid "Product id"
|
222 |
msgstr ""
|
223 |
|
224 |
+
#: classes/class-perfect-woocommerce-brands.php:488
|
225 |
msgid "Product id (post id)"
|
226 |
msgstr ""
|
227 |
|
228 |
+
#: classes/class-perfect-woocommerce-brands.php:533
|
|
|
|
|
229 |
#: classes/shortcodes/class-pwb-brand.php:29
|
230 |
#: classes/shortcodes/class-pwb-brand.php:31
|
|
|
231 |
msgid "View brand"
|
232 |
msgstr ""
|
233 |
|
234 |
+
#: classes/class-perfect-woocommerce-brands.php:598
|
235 |
msgid "¿Start migration?"
|
236 |
msgstr ""
|
237 |
|
238 |
+
#: classes/class-perfect-woocommerce-brands.php:599
|
239 |
msgid ""
|
240 |
"We are migrating the product brands. ¡Don´t close this window until the "
|
241 |
"process is finished!"
|
242 |
msgstr ""
|
243 |
|
244 |
+
#: classes/class-perfect-woocommerce-brands.php:600
|
245 |
msgid "¿Start loading dummy data?"
|
246 |
msgstr ""
|
247 |
|
248 |
+
#: classes/class-perfect-woocommerce-brands.php:601
|
249 |
msgid ""
|
250 |
"We are importing the dummy data. ¡Don´t close this window until the process "
|
251 |
"is finished!"
|
252 |
msgstr ""
|
253 |
|
254 |
+
#: classes/class-perfect-woocommerce-brands.php:610
|
255 |
+
#: classes/class-perfect-woocommerce-brands.php:612
|
256 |
#: classes/admin/class-edit-brands-page.php:128
|
257 |
#: classes/admin/class-pwb-admin-tab.php:21
|
258 |
+
#: classes/widgets/class-pwb-dropdown.php:19
|
259 |
+
#: classes/widgets/class-pwb-filter-by-brand.php:20
|
260 |
+
#: classes/widgets/class-pwb-filter-by-brand.php:75
|
261 |
+
#: classes/widgets/class-pwb-list.php:19 templates/widgets/dropdown.php:16
|
262 |
msgid "Brands"
|
263 |
msgstr ""
|
264 |
|
265 |
+
#: classes/class-perfect-woocommerce-brands.php:613
|
266 |
msgid "All Brands"
|
267 |
msgstr ""
|
268 |
|
269 |
+
#: classes/class-perfect-woocommerce-brands.php:614
|
270 |
msgid "Edit Brand"
|
271 |
msgstr ""
|
272 |
|
273 |
+
#: classes/class-perfect-woocommerce-brands.php:615
|
274 |
msgid "View Brand"
|
275 |
msgstr ""
|
276 |
|
277 |
+
#: classes/class-perfect-woocommerce-brands.php:616
|
278 |
msgid "Update Brand"
|
279 |
msgstr ""
|
280 |
|
281 |
+
#: classes/class-perfect-woocommerce-brands.php:617
|
282 |
msgid "Add New Brand"
|
283 |
msgstr ""
|
284 |
|
285 |
+
#: classes/class-perfect-woocommerce-brands.php:618
|
286 |
msgid "New Brand Name"
|
287 |
msgstr ""
|
288 |
|
289 |
+
#: classes/class-perfect-woocommerce-brands.php:619
|
290 |
msgid "Parent Brand"
|
291 |
msgstr ""
|
292 |
|
293 |
+
#: classes/class-perfect-woocommerce-brands.php:620
|
294 |
msgid "Parent Brand:"
|
295 |
msgstr ""
|
296 |
|
297 |
+
#: classes/class-perfect-woocommerce-brands.php:621
|
298 |
msgid "Search Brands"
|
299 |
msgstr ""
|
300 |
|
301 |
+
#: classes/class-perfect-woocommerce-brands.php:622
|
302 |
msgid "Popular Brands"
|
303 |
msgstr ""
|
304 |
|
305 |
+
#: classes/class-perfect-woocommerce-brands.php:623
|
306 |
msgid "Separate brands with commas"
|
307 |
msgstr ""
|
308 |
|
309 |
+
#: classes/class-perfect-woocommerce-brands.php:624
|
310 |
msgid "Add or remove brands"
|
311 |
msgstr ""
|
312 |
|
313 |
+
#: classes/class-perfect-woocommerce-brands.php:625
|
314 |
msgid "Choose from the most used brands"
|
315 |
msgstr ""
|
316 |
|
317 |
+
#: classes/class-perfect-woocommerce-brands.php:626
|
318 |
msgid "No brands found"
|
319 |
msgstr ""
|
320 |
|
321 |
+
#: classes/class-perfect-woocommerce-brands.php:697
|
322 |
msgid "All"
|
323 |
msgstr ""
|
324 |
|
325 |
+
#: classes/class-pwb-api-support.php:87
|
326 |
msgid "Product brands"
|
327 |
msgstr ""
|
328 |
|
329 |
+
#: classes/class-pwb-term.php:20
|
330 |
+
msgid "Only WP_Term objects are allowed"
|
331 |
+
msgstr ""
|
332 |
+
|
333 |
#: classes/admin/class-brands-custom-fields.php:20
|
334 |
#: classes/admin/class-brands-custom-fields.php:59
|
335 |
msgid "Description"
|
344 |
|
345 |
#: classes/admin/class-brands-custom-fields.php:26
|
346 |
#: classes/admin/class-brands-custom-fields.php:68
|
347 |
+
#: classes/widgets/class-pwb-list.php:43
|
348 |
msgid "Brand logo"
|
349 |
msgstr ""
|
350 |
|
394 |
msgid "Show featured brands first"
|
395 |
msgstr ""
|
396 |
|
397 |
+
#: classes/admin/class-pwb-admin-tab.php:70
|
398 |
msgid "Brands settings"
|
399 |
msgstr ""
|
400 |
|
401 |
+
#: classes/admin/class-pwb-admin-tab.php:76
|
402 |
msgid "Slug"
|
403 |
msgstr ""
|
404 |
|
405 |
+
#: classes/admin/class-pwb-admin-tab.php:79
|
406 |
msgid "Brands taxonomy slug"
|
407 |
msgstr ""
|
408 |
|
409 |
+
#: classes/admin/class-pwb-admin-tab.php:84
|
410 |
msgid "Show brand description"
|
411 |
msgstr ""
|
412 |
|
413 |
+
#: classes/admin/class-pwb-admin-tab.php:88
|
414 |
msgid "Show brand description (if is set) on brand archive page"
|
415 |
msgstr ""
|
416 |
|
417 |
+
#: classes/admin/class-pwb-admin-tab.php:91
|
418 |
msgid "Yes, before product loop"
|
419 |
msgstr ""
|
420 |
|
421 |
+
#: classes/admin/class-pwb-admin-tab.php:92
|
422 |
msgid "Yes, after product loop"
|
423 |
msgstr ""
|
424 |
|
425 |
+
#: classes/admin/class-pwb-admin-tab.php:93
|
426 |
msgid "No, hide description"
|
427 |
msgstr ""
|
428 |
|
429 |
+
#: classes/admin/class-pwb-admin-tab.php:97
|
430 |
msgid "Single product tab"
|
431 |
msgstr ""
|
432 |
|
433 |
+
#: classes/admin/class-pwb-admin-tab.php:100
|
434 |
msgid "Show brand tab in single product page"
|
435 |
msgstr ""
|
436 |
|
437 |
+
#: classes/admin/class-pwb-admin-tab.php:104
|
438 |
msgid "Show brands in loop"
|
439 |
msgstr ""
|
440 |
|
441 |
+
#: classes/admin/class-pwb-admin-tab.php:107
|
442 |
msgid "Show brand logo (or name) in product loop"
|
443 |
msgstr ""
|
444 |
|
445 |
+
#: classes/admin/class-pwb-admin-tab.php:110
|
446 |
+
#: classes/admin/class-pwb-admin-tab.php:123
|
447 |
msgid "No"
|
448 |
msgstr ""
|
449 |
|
450 |
+
#: classes/admin/class-pwb-admin-tab.php:111
|
451 |
+
#: classes/admin/class-pwb-admin-tab.php:124
|
452 |
msgid "Show brand link"
|
453 |
msgstr ""
|
454 |
|
455 |
+
#: classes/admin/class-pwb-admin-tab.php:112
|
456 |
+
#: classes/admin/class-pwb-admin-tab.php:125
|
457 |
msgid "Show brand image (if is set)"
|
458 |
msgstr ""
|
459 |
|
460 |
+
#: classes/admin/class-pwb-admin-tab.php:116
|
461 |
msgid "Show brands in single product"
|
462 |
msgstr ""
|
463 |
|
464 |
+
#: classes/admin/class-pwb-admin-tab.php:119
|
465 |
msgid "Show brand logo (or name) in single product"
|
466 |
msgstr ""
|
467 |
|
468 |
+
#: classes/admin/class-pwb-admin-tab.php:132
|
469 |
msgid "Brand logo size for single product view"
|
470 |
msgstr ""
|
471 |
|
472 |
+
#: classes/admin/class-pwb-admin-tab.php:137
|
473 |
msgid "Brand position"
|
474 |
msgstr ""
|
475 |
|
476 |
+
#: classes/admin/class-pwb-admin-tab.php:140
|
477 |
msgid "For single product"
|
478 |
msgstr ""
|
479 |
|
480 |
+
#: classes/admin/class-pwb-admin-tab.php:143
|
481 |
msgid "Before title"
|
482 |
msgstr ""
|
483 |
|
484 |
+
#: classes/admin/class-pwb-admin-tab.php:144
|
485 |
msgid "After title"
|
486 |
msgstr ""
|
487 |
|
488 |
+
#: classes/admin/class-pwb-admin-tab.php:145
|
489 |
msgid "After price"
|
490 |
msgstr ""
|
491 |
|
492 |
+
#: classes/admin/class-pwb-admin-tab.php:146
|
493 |
msgid "After excerpt"
|
494 |
msgstr ""
|
495 |
|
496 |
+
#: classes/admin/class-pwb-admin-tab.php:147
|
497 |
msgid "After add to cart"
|
498 |
msgstr ""
|
499 |
|
500 |
+
#: classes/admin/class-pwb-admin-tab.php:148
|
501 |
msgid "After meta"
|
502 |
msgstr ""
|
503 |
|
504 |
+
#: classes/admin/class-pwb-admin-tab.php:149
|
505 |
msgid "After sharing"
|
506 |
msgstr ""
|
507 |
|
508 |
+
#: classes/admin/class-pwb-admin-tab.php:153
|
509 |
+
msgid "Brands page id"
|
510 |
+
msgstr ""
|
511 |
+
|
512 |
+
#: classes/admin/class-pwb-admin-tab.php:156
|
513 |
+
msgid "For linking breadcrumbs"
|
514 |
+
msgstr ""
|
515 |
+
|
516 |
+
#: classes/admin/class-pwb-admin-tab.php:173
|
517 |
msgid "Tools"
|
518 |
msgstr ""
|
519 |
|
520 |
+
#: classes/admin/class-pwb-admin-tab.php:179
|
521 |
+
#: templates/admin/brands-exporter.php:16
|
522 |
msgid "Import brands"
|
523 |
msgstr ""
|
524 |
|
525 |
+
#: classes/admin/class-pwb-admin-tab.php:183
|
526 |
#, php-format
|
527 |
msgid ""
|
528 |
"Import brands from other brand plugin. <a href=\"%s\" target=\"_blank"
|
529 |
"\">Click here for more details</a>"
|
530 |
msgstr ""
|
531 |
|
532 |
+
#: classes/admin/class-pwb-admin-tab.php:188
|
533 |
+
#: classes/admin/class-pwb-admin-tab.php:201
|
534 |
msgid "-"
|
535 |
msgstr ""
|
536 |
|
537 |
+
#: classes/admin/class-pwb-admin-tab.php:189
|
538 |
msgid "YITH WooCommerce Brands Add-On"
|
539 |
msgstr ""
|
540 |
|
541 |
+
#: classes/admin/class-pwb-admin-tab.php:190
|
542 |
msgid "Ultimate WooCommerce Brands"
|
543 |
msgstr ""
|
544 |
|
545 |
+
#: classes/admin/class-pwb-admin-tab.php:191
|
546 |
msgid "Offical WooCommerce Brands"
|
547 |
msgstr ""
|
548 |
|
549 |
+
#: classes/admin/class-pwb-admin-tab.php:195
|
550 |
msgid "Dummy data"
|
551 |
msgstr ""
|
552 |
|
553 |
+
#: classes/admin/class-pwb-admin-tab.php:198
|
554 |
msgid "Import generic brands and assign it to products randomly"
|
555 |
msgstr ""
|
556 |
|
557 |
+
#: classes/admin/class-pwb-admin-tab.php:202
|
558 |
msgid "Start import"
|
559 |
msgstr ""
|
560 |
|
561 |
+
#: classes/admin/class-pwb-admin-tab.php:206
|
562 |
msgid "System status"
|
563 |
msgstr ""
|
564 |
|
565 |
+
#: classes/admin/class-pwb-admin-tab.php:208
|
566 |
msgid "Show system status"
|
567 |
msgstr ""
|
568 |
|
580 |
"cart"
|
581 |
msgstr ""
|
582 |
|
583 |
+
#: classes/shortcodes/class-pwb-all-brands.php:108
|
584 |
msgid "First page"
|
585 |
msgstr ""
|
586 |
|
587 |
+
#: classes/shortcodes/class-pwb-all-brands.php:111
|
588 |
msgid "Previous page"
|
589 |
msgstr ""
|
590 |
|
591 |
+
#: classes/shortcodes/class-pwb-all-brands.php:115
|
592 |
msgid "Next page"
|
593 |
msgstr ""
|
594 |
|
595 |
+
#: classes/shortcodes/class-pwb-all-brands.php:118
|
596 |
msgid "Last page"
|
597 |
msgstr ""
|
598 |
|
599 |
+
#: classes/shortcodes/class-pwb-all-brands.php:123
|
600 |
msgid "No results"
|
601 |
msgstr ""
|
602 |
|
608 |
msgid "Brands dropdown"
|
609 |
msgstr ""
|
610 |
|
611 |
+
#: classes/widgets/class-pwb-dropdown.php:26
|
612 |
msgid "Title"
|
613 |
msgstr ""
|
614 |
|
615 |
+
#: classes/widgets/class-pwb-dropdown.php:54
|
616 |
+
#: classes/widgets/class-pwb-list.php:77
|
617 |
+
msgid "Only favorite brands"
|
618 |
msgstr ""
|
619 |
|
620 |
+
#: classes/widgets/class-pwb-filter-by-brand.php:11
|
621 |
msgid "Recommended for product categories or shop page"
|
622 |
msgstr ""
|
623 |
|
624 |
+
#: classes/widgets/class-pwb-filter-by-brand.php:12
|
625 |
msgid "Filter products by brand"
|
626 |
msgstr ""
|
627 |
|
628 |
+
#: classes/widgets/class-pwb-filter-by-brand.php:25
|
629 |
+
#: classes/widgets/class-pwb-list.php:28
|
630 |
msgid "Title:"
|
631 |
msgstr ""
|
632 |
|
633 |
+
#: classes/widgets/class-pwb-filter-by-brand.php:30
|
634 |
+
msgid "Max number of brands"
|
635 |
+
msgstr ""
|
636 |
+
|
637 |
+
#: classes/widgets/class-pwb-filter-by-brand.php:41
|
638 |
+
msgid "Hide filter button"
|
639 |
+
msgstr ""
|
640 |
+
|
641 |
#: classes/widgets/class-pwb-list.php:10
|
642 |
msgid "Adds a brands list to your site"
|
643 |
msgstr ""
|
646 |
msgid "Brands list"
|
647 |
msgstr ""
|
648 |
|
649 |
+
#: classes/widgets/class-pwb-list.php:37
|
650 |
msgid "Display as:"
|
651 |
msgstr ""
|
652 |
|
653 |
+
#: classes/widgets/class-pwb-list.php:42
|
654 |
msgid "Brand name"
|
655 |
msgstr ""
|
656 |
|
657 |
+
#: classes/widgets/class-pwb-list.php:47
|
658 |
msgid "Columns:"
|
659 |
msgstr ""
|
660 |
|
661 |
+
#: classes/widgets/class-pwb-list.php:87
|
662 |
+
msgid "Randomize"
|
663 |
+
msgstr ""
|
664 |
+
|
665 |
+
#: classes/widgets/class-pwb-list.php:119
|
666 |
msgid "Go to"
|
667 |
msgstr ""
|
668 |
|
669 |
+
#: templates/admin/brands-exporter.php:15
|
670 |
+
msgid "Export brands"
|
671 |
+
msgstr ""
|
672 |
+
|
673 |
+
#: templates/admin/brands-exporter.php:18
|
674 |
+
msgid ""
|
675 |
+
"This tool allows you to export and import the brands between different sites "
|
676 |
+
"using PWB."
|
677 |
+
msgstr ""
|
678 |
+
|
679 |
#: templates/shortcodes/carousel.php:24
|
680 |
#: templates/shortcodes/product-carousel.php:28
|
681 |
msgid "Loading"
|
685 |
msgid "Nothing found"
|
686 |
msgstr ""
|
687 |
|
688 |
+
#: templates/widgets/filter-by-brand.php:25
|
689 |
msgid "Apply filter"
|
690 |
+
msgstr ""
|
main.php
CHANGED
@@ -3,13 +3,13 @@
|
|
3 |
* Plugin Name: Perfect WooCommerce Brands
|
4 |
* Plugin URI: https://wordpress.org/plugins/perfect-woocommerce-brands/
|
5 |
* Description: Perfect WooCommerce Brands allows you to show product brands in your WooCommerce based store.
|
6 |
-
* Version: 1.
|
7 |
* Author: Alberto de Vera Sevilla
|
8 |
* Author URI: https://profiles.wordpress.org/titodevera/
|
9 |
* Text Domain: perfect-woocommerce-brands
|
10 |
* Domain Path: /lang
|
11 |
* License: GPL3
|
12 |
-
* Perfect WooCommerce Brands version 1.
|
13 |
* Perfect WooCommerce Brands is free software: you can redistribute it and/or modify
|
14 |
* it under the terms of the GNU General Public License as published by
|
15 |
* the Free Software Foundation, either version 3 of the License, or
|
@@ -22,8 +22,8 @@
|
|
22 |
* You should have received a copy of the GNU General Public License
|
23 |
* along with Perfect WooCommerce Brands. If not, see <http://www.gnu.org/licenses/>.
|
24 |
*
|
25 |
-
* WC requires at least: 2.
|
26 |
-
* WC tested up to: 3.
|
27 |
*/
|
28 |
|
29 |
namespace Perfect_Woocommerce_Brands;
|
@@ -34,7 +34,7 @@ defined( 'ABSPATH' ) or die( 'No script kiddies please!' );
|
|
34 |
define( 'PWB_PLUGIN', plugins_url( '', __FILE__ ) );
|
35 |
define( 'PWB_PLUGIN_PATH', plugin_basename( dirname( __FILE__ ) ) );
|
36 |
define( 'PWB_PLUGIN_BASENAME', plugin_basename( __FILE__ ) );
|
37 |
-
define( 'PWB_PLUGIN_VERSION', '1.
|
38 |
define( 'PWB_WP_VERSION', get_bloginfo( 'version' ) );
|
39 |
define( 'PWB_WC_VERSION', get_option( 'woocommerce_version' ) );
|
40 |
|
@@ -62,15 +62,13 @@ if( is_plugin_active( 'woocommerce/woocommerce.php' ) ){
|
|
62 |
require 'classes/shortcodes/class-pwb-product-carousel.php';
|
63 |
require 'classes/shortcodes/class-pwb-carousel.php';
|
64 |
require 'classes/shortcodes/class-pwb-all-brands.php';
|
|
|
65 |
require 'classes/shortcodes/class-pwb-brand.php';
|
66 |
require 'classes/class-perfect-woocommerce-brands.php';
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
require 'classes/admin/class-pwb-coupon.php';
|
72 |
-
new Admin\PWB_Coupon();
|
73 |
-
}
|
74 |
|
75 |
if( is_admin() ){
|
76 |
|
@@ -85,6 +83,8 @@ if( is_plugin_active( 'woocommerce/woocommerce.php' ) ){
|
|
85 |
new Admin\Edit_Brands_Page();
|
86 |
require 'classes/admin/class-brands-custom-fields.php';
|
87 |
new Admin\Brands_Custom_Fields();
|
|
|
|
|
88 |
|
89 |
if( defined('PWB_WC_VERSION') && version_compare( PWB_WC_VERSION, '3.1.0', '>=' ) ){
|
90 |
require 'classes/admin/class-pwb-importer-support.php';
|
3 |
* Plugin Name: Perfect WooCommerce Brands
|
4 |
* Plugin URI: https://wordpress.org/plugins/perfect-woocommerce-brands/
|
5 |
* Description: Perfect WooCommerce Brands allows you to show product brands in your WooCommerce based store.
|
6 |
+
* Version: 1.7.0
|
7 |
* Author: Alberto de Vera Sevilla
|
8 |
* Author URI: https://profiles.wordpress.org/titodevera/
|
9 |
* Text Domain: perfect-woocommerce-brands
|
10 |
* Domain Path: /lang
|
11 |
* License: GPL3
|
12 |
+
* Perfect WooCommerce Brands version 1.7.0, Copyright (C) 2018 Alberto de Vera Sevilla
|
13 |
* Perfect WooCommerce Brands is free software: you can redistribute it and/or modify
|
14 |
* it under the terms of the GNU General Public License as published by
|
15 |
* the Free Software Foundation, either version 3 of the License, or
|
22 |
* You should have received a copy of the GNU General Public License
|
23 |
* along with Perfect WooCommerce Brands. If not, see <http://www.gnu.org/licenses/>.
|
24 |
*
|
25 |
+
* WC requires at least: 2.6
|
26 |
+
* WC tested up to: 3.5
|
27 |
*/
|
28 |
|
29 |
namespace Perfect_Woocommerce_Brands;
|
34 |
define( 'PWB_PLUGIN', plugins_url( '', __FILE__ ) );
|
35 |
define( 'PWB_PLUGIN_PATH', plugin_basename( dirname( __FILE__ ) ) );
|
36 |
define( 'PWB_PLUGIN_BASENAME', plugin_basename( __FILE__ ) );
|
37 |
+
define( 'PWB_PLUGIN_VERSION', '1.7.0' );
|
38 |
define( 'PWB_WP_VERSION', get_bloginfo( 'version' ) );
|
39 |
define( 'PWB_WC_VERSION', get_option( 'woocommerce_version' ) );
|
40 |
|
62 |
require 'classes/shortcodes/class-pwb-product-carousel.php';
|
63 |
require 'classes/shortcodes/class-pwb-carousel.php';
|
64 |
require 'classes/shortcodes/class-pwb-all-brands.php';
|
65 |
+
require 'classes/shortcodes/class-pwb-az-listing.php';
|
66 |
require 'classes/shortcodes/class-pwb-brand.php';
|
67 |
require 'classes/class-perfect-woocommerce-brands.php';
|
68 |
+
require 'classes/class-pwb-api-support.php';
|
69 |
+
new PWB_API_Support();
|
70 |
+
require 'classes/admin/class-pwb-coupon.php';
|
71 |
+
new Admin\PWB_Coupon();
|
|
|
|
|
|
|
72 |
|
73 |
if( is_admin() ){
|
74 |
|
83 |
new Admin\Edit_Brands_Page();
|
84 |
require 'classes/admin/class-brands-custom-fields.php';
|
85 |
new Admin\Brands_Custom_Fields();
|
86 |
+
require 'classes/admin/class-brands-exporter.php';
|
87 |
+
new Admin\Brands_Exporter();
|
88 |
|
89 |
if( defined('PWB_WC_VERSION') && version_compare( PWB_WC_VERSION, '3.1.0', '>=' ) ){
|
90 |
require 'classes/admin/class-pwb-importer-support.php';
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: mailto:hola@albertodevera.es
|
|
4 |
Tags: woocommerce, brands, brand taxonomy, product brands, woocommerce manufacturer, woocommerce supplier, e-commerce
|
5 |
Requires at least: 4.4
|
6 |
Tested up to: 4.9
|
7 |
-
Stable tag: 1.
|
8 |
License: GPL3
|
9 |
License URI: http://www.gnu.org/licenses/gpl-3.0.en.html
|
10 |
|
@@ -16,9 +16,9 @@ Is essential to work with product brands for increase sales and generate reliabi
|
|
16 |
With this extension you can add product brands to your WooCommerce site.
|
17 |
|
18 |
= Requirements =
|
19 |
-
> * PHP 5.4 or higher (
|
20 |
> * WordPress 4.4 or higher
|
21 |
-
> * WooCommerce 2.
|
22 |
> * Visual Composer (recommended)
|
23 |
|
24 |
= Features =
|
@@ -33,6 +33,7 @@ With this extension you can add product brands to your WooCommerce site.
|
|
33 |
> * Shortcode: Display brands carousel
|
34 |
> * Shortcode: Display product carousel by brand
|
35 |
> * Shortcode: Display brands for a specific product
|
|
|
36 |
> * Widget: Display brands as dropdown
|
37 |
> * Widget: Display brands as list (brand names or brand logos)
|
38 |
> * Widget: Filter products by brand
|
@@ -44,6 +45,7 @@ With this extension you can add product brands to your WooCommerce site.
|
|
44 |
> * WooCommerce built-in product importer/exporter support (WooCommerce 3.1.0+)
|
45 |
> * Brand tab for single product page
|
46 |
> * Favorite brands
|
|
|
47 |
> * And much more!
|
48 |
|
49 |
|
@@ -78,6 +80,18 @@ Go to `WooCommerce/Settings/` and click on `Brands` tab
|
|
78 |
|
79 |
|
80 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
81 |
= 1.6.5 =
|
82 |
* Include icon and banner brand image in api response (thanks @qbig)
|
83 |
* Feature: New option for show only favorite brands in the dropdown widget and the list widget
|
4 |
Tags: woocommerce, brands, brand taxonomy, product brands, woocommerce manufacturer, woocommerce supplier, e-commerce
|
5 |
Requires at least: 4.4
|
6 |
Tested up to: 4.9
|
7 |
+
Stable tag: 1.7.0
|
8 |
License: GPL3
|
9 |
License URI: http://www.gnu.org/licenses/gpl-3.0.en.html
|
10 |
|
16 |
With this extension you can add product brands to your WooCommerce site.
|
17 |
|
18 |
= Requirements =
|
19 |
+
> * PHP 5.4 or higher (PHP7 recommended)
|
20 |
> * WordPress 4.4 or higher
|
21 |
+
> * WooCommerce 2.6.0 or higher
|
22 |
> * Visual Composer (recommended)
|
23 |
|
24 |
= Features =
|
33 |
> * Shortcode: Display brands carousel
|
34 |
> * Shortcode: Display product carousel by brand
|
35 |
> * Shortcode: Display brands for a specific product
|
36 |
+
> * Shortcode: A-Z Listing
|
37 |
> * Widget: Display brands as dropdown
|
38 |
> * Widget: Display brands as list (brand names or brand logos)
|
39 |
> * Widget: Filter products by brand
|
45 |
> * WooCommerce built-in product importer/exporter support (WooCommerce 3.1.0+)
|
46 |
> * Brand tab for single product page
|
47 |
> * Favorite brands
|
48 |
+
> * Brands json import/export
|
49 |
> * And much more!
|
50 |
|
51 |
|
80 |
|
81 |
|
82 |
== Changelog ==
|
83 |
+
= 1.7.0 =
|
84 |
+
* Feature: A-Z Listing shortcode
|
85 |
+
* Feature: New brands exporter/importer introduced
|
86 |
+
* Fix: Missing some brands to filter
|
87 |
+
* Fix: Coupon doesn’t work for product variations (thanks @gekomees)
|
88 |
+
* Fix: The brand description is not shown if there are no products
|
89 |
+
* Enhancement: wpautop() for brand descriptions
|
90 |
+
* Enhancement: Other filter by brand widget enhancements
|
91 |
+
* Enhancement: Brands page link in breadcrumbs
|
92 |
+
* Enhancement: Enqueue the carousel lib conditionally
|
93 |
+
* Dev: New filter hook 'pwb_description_allowed_tags'
|
94 |
+
* Update: WC 3.5 compatibility
|
95 |
= 1.6.5 =
|
96 |
* Include icon and banner brand image in api response (thanks @qbig)
|
97 |
* Feature: New option for show only favorite brands in the dropdown widget and the list widget
|
templates/admin/brands-exporter.php
ADDED
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* The template for displaying the edit-tags.php exporter/importer
|
4 |
+
* @version 1.0.0
|
5 |
+
*/
|
6 |
+
|
7 |
+
namespace Perfect_Woocommerce_Brands\Templates;
|
8 |
+
|
9 |
+
defined( 'ABSPATH' ) or die( 'No script kiddies please!' );
|
10 |
+
|
11 |
+
extract( $data );
|
12 |
+
?>
|
13 |
+
|
14 |
+
<div class="pwb-brands-exporter pwb-clearfix">
|
15 |
+
<button class="button pwb-brands-export"><?php _e('Export brands', 'perfect-woocommerce-brands');?></button>
|
16 |
+
<button class="button pwb-brands-import"><?php _e('Import brands', 'perfect-woocommerce-brands');?></button>
|
17 |
+
<input type="file" class="pwb-brands-import-file" accept="application/json">
|
18 |
+
<p><?php _e( 'This tool allows you to export and import the brands between different sites using PWB.', 'perfect-woocommerce-brands' );?></p>
|
19 |
+
</div>
|
templates/shortcodes/carousel.php
CHANGED
@@ -15,7 +15,7 @@
|
|
15 |
|
16 |
<?php foreach( $brands as $brand ): ?>
|
17 |
<div class="pwb-slick-slide">
|
18 |
-
<a href="<?php echo $brand['link'];?>" title="<?php
|
19 |
<?php echo $brand['attachment_html'];?>
|
20 |
</a>
|
21 |
</div>
|
15 |
|
16 |
<?php foreach( $brands as $brand ): ?>
|
17 |
<div class="pwb-slick-slide">
|
18 |
+
<a href="<?php echo $brand['link'];?>" title="<?php echo $brand['name']; ?>">
|
19 |
<?php echo $brand['attachment_html'];?>
|
20 |
</a>
|
21 |
</div>
|
uninstall.php
CHANGED
@@ -12,6 +12,9 @@
|
|
12 |
delete_option('wc_pwb_admin_tab_section_end');
|
13 |
delete_option('wc_pwb_notice_plugin_review');
|
14 |
|
|
|
|
|
|
|
15 |
//update permalinks and clean cache
|
16 |
flush_rewrite_rules();
|
17 |
wp_cache_flush();
|
12 |
delete_option('wc_pwb_admin_tab_section_end');
|
13 |
delete_option('wc_pwb_notice_plugin_review');
|
14 |
|
15 |
+
//elimina el archivo de marcas exportadas si existe
|
16 |
+
unlink( WP_CONTENT_DIR . '/uploads/pwb-export.json' );
|
17 |
+
|
18 |
//update permalinks and clean cache
|
19 |
flush_rewrite_rules();
|
20 |
wp_cache_flush();
|