grosssmutttr
1ccec7d156
class-wc-widget-layered-nav.php - Crawling Budget
...
Additional optimization to save up crawling budget.
Added $link = str_replace('%2C', ',', $link); on line 513
https://mydomain.com/produkt-kategorie/my-category/?filter_filter-color=orange,black
If you add another filter it encodes the existing commas:
https://mydomain.com/produkt-kategorie/my-category/?filter_filter-color=orange%2Cblack&filter_manufacturer=adidas&filter_cut=men.children
So sometimes you have "," as seperator and sometimes you have encoded "%2C".
After implementing this pull-request the seperator stays ",":
https://mydomain.com/produkt-kategorie/my-category/?filter_filter-farbe=orange,black&filter_manufacturer=adidas&filter_cut=men.children
This pull request belongs to the optimization https://github.com/woocommerce/woocommerce/pull/17134 to save up crawling budget,
2017-10-11 14:47:00 +02:00
grosssmutttr
d9f0bd5e92
Keep link structure - prevent duplicate content
...
Added asort($current_filter) so the urls always look the same and there are not millions of urls possibilities when adding multiple filters.
Current url example:
https://myurl.com/produkt-kategorie/mycategory/?filter_filter-color=yellow,brown,blue,red
https://myurl.com/produkt-kategorie/mycategory/?filter_filter-color=yellow,blue,red,brown
https://myurl.com/produkt-kategorie/mycategory/?filter_filter-color=blue,yellow,red,brown
...
With asort you only have this url:
https://myurl.com/produkt-kategorie/mycategory/?filter_filter-color=blue,brown,red,yellow
So it is independent on the sequence a user adds a filter
2017-10-11 08:33:46 +02:00
claudiulodro
f1dac6f3ac
Use esc_js instead of addslashes
2017-10-09 11:37:09 -07:00
claudiulodro
97d7ae7df8
Missing semicolon
2017-10-09 11:16:24 -07:00
claudiulodro
2ccd44afa7
Translate "no matches" message
2017-10-09 11:10:32 -07:00
Claudiu Lodromanean
2b49125b46
Enable clearing for attribute filter widget ( #17093 )
...
* Enable clearing for attribute filter widget
* Multiselect variant doesnt need clear button
* Make code less ugly
2017-10-09 11:21:21 +01:00
grosssmutttr
52beb782c6
Update class-wc-widget-layered-nav.php - Avoid duplicate content
...
Added rel="nofollow" to the filters to avoid duplicate content.
2017-10-05 19:55:10 +02:00
Mike Jolley
ff5228e944
Standardise widget titles and descriptions
...
Follow the same pattern as core WP widgets, including title case.
Avoids terms like ‘layered nav’ which has no real meaning to new users.
2017-08-25 12:07:17 +01:00
Jaydeep Rami
3522857d23
Fix typo in WooCommerce plugin ( #16135 )
...
* Fixed typo
* Fixed more typo
* Fixed more typo
* Fix tyop
* Fix more typo
* Fix more typo
* Fix typo
* Fix typo
* Fix typo
* Fix typo datatime object
* Fix short name of compat
* Fix typo: update short name
* Fix typo "deactive" to "deactivate" and short BW - Compat
* Fix typo "Backwards compat"
* Fix typo 'parameters'
* Fix more typo 'pararmeters'
* Fix typo 'compund'
* FIx typo order
* Fix typo
* Fix typo 'incorrecly'
* Fix typo 'genarate'
* Fix typo 'reletive'
* Fix typo 'Handly'
* Fix typo 'rotatated'
* Fix typo
* Fix typo 'additonal'
* Fix typos
2017-07-17 11:10:52 +01:00
claudiulodro
4c4526424a
Remove race condition
2017-07-11 13:21:42 -07:00
Mike Jolley
70420db6fd
Spacing
2017-07-11 11:31:02 +01:00
Mike Jolley
a527a9566b
Add select2 to layered nav
2017-07-10 14:36:47 +01:00
Mike Jolley
0a3856c5cb
Merge branch 'master' into feature-13189
2017-07-10 13:24:42 +01:00
Mike Jolley
67d13874ab
Add transient caching to get_filtered_term_product_counts to reduce large queries
2017-06-16 13:35:31 +01:00
Rasmus Bengtsson
185934fad9
Fix phpdoc to include params and correct types
2017-05-15 13:50:52 +02:00
Caleb Burks
c4805e41e1
Use Select2 for layered nav
...
WIP
2017-02-24 02:18:38 -06:00
Diego Zanella
de02645544
Improved filter `woocommerce_layered_nav_link`
...
* Added term and taxonomy as additional parameters.
2017-01-09 19:27:01 +00:00
Mike Jolley
e0e0c9e832
Replace rating filters with taxonomy
2016-12-09 15:43:25 +00:00
Mike Jolley
47fbae4d26
Product Visibility Taxonomies ( #12527 )
...
* Convert visibility and featured to taxonomy
* Comment
* Add missing tax_queries
* Only check SKU after read.
* Added visibility term for outofstock products to speed those queries up al
* wc_bool_to_string
2016-12-08 10:56:45 +00:00
opportus
4c8e694dce
Layered Nav menu dropdown empty count fix
2016-11-22 19:48:39 +01:00
opportus
42bb48abf1
layered nav OR hide attributes applying to 0 product
2016-11-17 23:33:24 +01:00
Claudio Sanches
657c312cae
Fix strings case ( #12069 )
...
* Fixed case for all _e, esc_attr_e and esc_html_e strings
* Fixed case for all _n_noop strings
* Fixed case for all _x strings
* Fixed case for all __, esc_html__ and esc_attr__ strings
* Fixed a few more strings
* Fixed strings in unit tests
* Fix PayPal Standard case.
* Save Order text
2016-10-12 11:16:30 +01:00
Mike Jolley
50544233f5
Wrap layered nav term in filter
...
Closes #11922
2016-10-11 18:23:25 +01:00
Justin Shreve
0d8e993cc3
Coding style fix. Add $taxonomy to the filter args.
2016-10-05 11:37:53 -07:00
Justin Shreve
c7d191f84b
Wrap the "Any % (taxonomy)" string in a filter so admins/dev can customize the text correctly for languages with genders.
2016-10-05 10:45:09 -07:00
Aristeides Stathopoulos
9668247b95
WordPress.PHP.YodaConditions.NotYoda
2016-09-09 03:14:28 +03:00
Aristeides Stathopoulos
c823236098
Fix failing tests.
2016-09-02 00:33:36 +03:00
Aristeides Stathopoulos
b063bcfe4c
last item in a multiline-array should end in a comma
2016-08-27 04:46:45 +03:00
Mike Jolley
84e883657c
Merge pull request #11412 from jlad26/master
...
Fix layered nav links on product attribute archives
2016-07-19 15:20:47 +02:00
Mike Jolley
d79f21a501
Better search handling
2016-07-19 14:09:56 +01:00
Leon Francis Shelhamer
a9e7c67230
fix search results layered nav counts issue
2016-07-13 21:44:00 -04:00
jlad26
ce0485a97c
Fix layered nav links on product attribute archives
...
If the option 'Enable archives' is selected for a product attribute, then the layered nav widget can also be used to filter that archive.
However the widget then doesn't work correctly in 'List' and 'OR' mode for that archive (although it works fine on the main shop page).
Example:
The attribute "product-type" is created and archives are enabled. It has values like "Courses", "One-to-one-tuition", "Equipment rental" and so on. Another product attribute "teaching-level" is created which uses values of "Beginner", "Intermediate" and "Advanced".
When the archive http://www.domain.com/pa_product-type/courses/ is visited the correct products are displayed. A layered nav widget is added in 'List' and 'OR' mode for the attribute 'teaching-level'. Clicking on any of "Beginner", "Intermediate" and "Advanced" will work fine the first time as the links are correctly generated in the form http://www.domain.com/pa_product-type/courses/?filter_teaching-level=advanced&query_type_teaching-level=or . (Advanced used for the example). However once one has been clicked, the links generated are now incorrect - they are in the form http://www.domain.com/?taxonomy=pa_teaching-level&term=advanced&filter_teaching-level=advanced%2Cbeginner&query_type_teaching-level=or .
Using get_queried_object instead of get_query_var fixes the problem.
2016-07-12 11:46:16 +01:00
Mike Jolley
cb13f11c14
Allow entire count query to be filtered
...
Closes #11145
2016-06-16 12:36:18 +01:00
Mike Jolley
c8f55cfb8d
Layered nav counts when term_id does not match term_taxonomy_id (before splitting).
...
@claudiosmweb this was a massive pita to fix
2016-06-15 19:20:50 +01:00
Mike Jolley
5ff18ebb12
Layered nav dropdowns - When getting counts, use 'or' to exclude self. We don't need 'and' because dropdown fields can only choose 1 option anyway.
...
#11123
2016-06-15 00:09:32 +01:00
Mike Jolley
1ff00adcf6
Spacing
2016-06-14 11:02:23 +01:00
Serg
60a4da9660
Fix Layered navigation permalinks issue on category page
2016-06-14 12:35:52 +03:00
Claudio Sanches
21ffc13ab3
Added $count and $term in woocommerce_layered_nav_count filter
2016-06-08 12:55:20 -03:00
Mike Jolley
aa9e6542e3
woocommerce_layered_nav_count filter
...
Closes #11070
2016-06-08 16:29:27 +01:00
Mike Jolley
1dcf6c6058
Fix numeric sort in layered nav
...
Fixes #11069
2016-06-08 14:39:24 +01:00
Mike Jolley
d4d6f3181c
Best practice tweaks
2016-06-06 17:24:31 +01:00
Mike Jolley
020b8c92c6
Fix URLs with quot; characters
...
Fixes #10795
2016-04-27 15:24:10 +01:00
Mike Jolley
39fc5a98ae
Fix base URL
2016-02-10 11:16:49 +00:00
Mike Jolley
0197b78b38
Combine all count queries per widget
2016-02-10 11:07:42 +00:00
Mike Jolley
0dba78acc0
Remove use of global
2016-02-10 10:19:32 +00:00
Mike Jolley
6bdd12d960
Rating counts
2016-02-10 10:02:50 +00:00
Mike Jolley
5f98720206
Combine count
2016-02-10 00:07:07 +00:00
Mike Jolley
c9cae8b214
No need to include children
2016-02-09 23:11:50 +00:00
Mike Jolley
d23c316326
Refactor queries to use WP_QUERY only
2016-02-09 21:14:55 +00:00
Mike Jolley
75cbb74520
Rating widget standards
2016-02-09 15:18:27 +00:00
Mike Jolley
e20565c498
Fix merge conflicts
2016-02-09 14:46:06 +00:00
Mike Jolley
cae1fe6b85
Refactors/improvements to layered nav to support slugs
...
#7806
2016-02-09 14:41:17 +00:00
Matthew Duhig
6ef4fcb144
Update class-wc-widget-layered-nav.php
...
Updates to layered nav to considerably improve speed on sites with large product databases (10k+). This method has seen speed improvements as notable as taking a 30 second plus load time of a /shop page with layered nav, down to 4 seconds.
2016-01-21 17:06:57 +00:00
Serg
ef867131e0
Change layered nav filters by ID to SLUG field
2016-01-19 10:15:42 +03:00
Fredrik Forsmo
bc9019458c
Improve docblock comments WC_Widget classes
...
* Added better comment to `widget`, `form` and `update` methods.
2016-01-06 19:58:38 +01:00
Mike Jolley
6892d73ea9
Store product ids for terms in term meta rather than transient
...
Data is kept in sync by looking at when terms are set for an object and
then clearing the meta for old and new terms.
2015-11-14 16:25:09 +00:00
Ibrahim Ibn Dawood
28fbdaa4c4
added min_rating query arg to layered nav
2015-11-13 15:17:02 +05:30
Claudio Sanches
ee30b5b308
Fixed php docs standards
2015-11-03 11:31:20 -02:00
Mike Jolley
5c948f374c
Fix preg_replace in layered nav dropdown
2015-08-20 17:32:27 +01:00
Claudio Sanches
9e41552342
Removed all "@return void"
2015-07-16 16:55:48 -03:00
Claudio Sanches
f333bb68b2
Improved js for widget layered nav #8332
2015-06-09 13:06:50 -03:00
Claudio Sanches
16ddd24887
[2.3] Fixed & and , for layered nav dropdowns, closes #8332
2015-06-09 12:49:57 -03:00
Claudio Sanches
55efdc5077
Escaped js/url in widget layered nav when use the dropdown option, closes #8320
2015-06-08 13:10:23 -03:00
James Koster
cafe0927f5
count styles in widgets. closes #7677
...
make category / layered nav list styles and markup consistent with core
post category widget.
2015-03-09 16:06:48 +00:00
Mike Jolley
d9455994c8
Use 30 days instead of year for transients to avoid bugs in memcache plugins.
...
Closes #7520
2015-02-24 12:02:56 +00:00
Mike Jolley
1f3adbd0c2
esc_html for the term name
2014-11-25 10:38:54 +00:00
Mike Jolley
dd53f8e730
Move widget registration to own function/file - avoid register_widget in class files
2014-11-20 20:56:24 +00:00
Mike Jolley
d3dc8be3ec
Undo commit which autoloaded widgets
...
Since they are loaded every time with core, it doesn’t make sense to
autoload them.
2014-11-19 18:08:38 +00:00
claudiosmweb
24e17e36d3
Preventing errors when adding a widget using the WP Customize
...
Fixed coding standards and used methods from WC_Widget for start and end the widget
2014-11-14 23:12:59 -02:00
James Koster
452cb56cd9
layered nav count markup matches product/post categories. #5606
2014-11-13 08:30:10 +00:00
Mike Jolley
06f82686eb
[2.2] and test, use term_taxonomy_id for transient names
2014-09-24 14:22:02 +01:00
shivapoudel
fedb4dae7c
Absolute path and Indentation fix for includes/widgets/*.php :)
2014-09-21 01:22:45 +05:45
Florian Ludwig
f2f56ebb4a
Removed lines, were already deleted in upstream
2014-08-12 19:04:11 +02:00
Florian Ludwig
b8c2912138
More general approach for widget dropdown_layered_nav
2014-08-12 18:56:37 +02:00
Alexandru Furculita
130521a7ab
Update class-wc-widget-layered-nav.php
2014-08-01 13:44:15 +03:00
Coen Jacobs
3617316357
Updated expiry times for transients
2014-03-12 12:58:41 +01:00
Coen Jacobs
03163c54b0
set_transient calls should have expiration to prevent autoloading
2014-03-07 09:29:01 +01:00
Mike Jolley
6ff4ae1a7d
Merge pull request #4903 from splashingpixels/master
...
Ran through jshint and fixed coding standards
2014-02-25 15:51:50 +00:00
Mike Jolley
dcf4a50ca0
Layered nag - remember orderby #4889
2014-02-24 15:45:43 +00:00
splashingpixels
7d96eb70ee
layer nav using list OR was not displaying any terms fixes #4911
2014-02-22 13:42:13 -08:00
Coen Jacobs
5291f2eec6
Code changes as suggested in #4238
2013-11-28 14:12:08 +01:00
Gregory K
cac9d12bf9
PhpDocs
2013-11-28 07:54:19 -05:00
Coen Jacobs
47ae00be28
Page functions woocommerce to wc refactor
2013-11-25 15:07:22 +01:00
Scott Basgaard
922fa990a5
esc_attr() all the things.
2013-11-20 20:11:59 +01:00
Scott Basgaard
97fe6adaeb
It's possible there are no attributes. Let's check first to avoid undefined notices.
2013-11-13 21:15:30 -05:00
Mike Jolley
081bef7f6b
Layered nav OR logic
2013-09-27 09:55:04 +01:00
Mike Jolley
355dd16962
Removed @coenjacobs helpers and cleaned up main clas
2013-09-12 14:41:02 +01:00
Mike Jolley
16ed6e4faf
Make sort orders affect other get_terms calls Closes #3439 .
2013-08-19 14:31:52 +01:00
Mike Jolley
3a4b83cffe
Fix encoding in layered nav. Fixes #3600
...
@coenjacobs for .14
2013-08-19 13:12:49 +01:00
Coen Jacobs
a55556332c
Extra escaping on layered nav href to prevent injection
2013-06-26 11:44:35 +02:00
Mike Jolley
fc104fc84b
Post types need to exist first
2013-06-20 12:05:11 +01:00
Mike Jolley
1ff10d6ccf
Enable for all taxonomies
2013-06-20 12:05:11 +01:00
Mike Jolley
c75ea04c1c
classes -> includes
2013-06-11 14:25:30 +01:00