Plugin Author
anmari
(@anmari)
Hi Maarteno,
I want to check that you are using fieldname/value filters because you absolutely have to.
They are only meant for situations where people have squashed TWO or more different fields into one ‘column’ and then still want to filter on a SINGLE field that is part of the ‘column’. Most people do NOT have this situation.
Unfortunately the use came about historically. Plugin started off being a pure admin list with csv and only expecting ONE field per column. Then a few folks wanted to create psuedo fields in a column by combining existing fields. THEN they still wanted to filter on the single field, part of the ‘column’. Technically it is a less than an ideal solution wrt to the way that the cache is stored – inefficient. The cache storage mechanism will be redone one day removing the need for so called ‘field’ filtering at all. (Very hard to indicate by language the difference.)
For most folks, the plain ‘column value’ filter should be all they ever need.
In addition S2 member has a less than ideal user field implementation. They do not use use meta as intended. It makes it hard to extract data and even harder to filter, compared to implementations that use the user meta as wp intended.
See http://wpusersplugin.com/3086/user-lists-and-filtering-with-s2member-fields/
Note: Field (as in partial column) filtering was not intended to be used in the shortcode.
I will look through your notes in the other posts, and see if your suggestions make sense to implement given my comments above.
Hi, didn’t really need the fieldnamefilter/fieldvaluefilter if it wasn’t for the fact that you (seemingly?) can’t use hyphens in shortcode attribute names and the column-name I want to access unfortunately has a hyphen in it.
I agree on the problem with the user-field implementation in S2Member, I might indeed use a different field for this particular functionality to circumvent this problem and speed up the caching. I tried it using Advanced Custom Fields, but my implementation was again a bit too complex as I pre-filled that field from a taxonomy. Getting to the actual values is more complex in that case and requires a custom piece of code querying the database.
Thanks for the feedback!