Search Listing Shortcode Parameters Aren’t Working — Why, and How to Read Them

Directories & Niche Publishing

You dropped a listing shortcode on the page, added a parameter to filter it — a category, a sort order, a count — and the shortcode just… ignores you. It shows everything, or the default, like you never typed the parameter at all.

This one's maddening because the shortcode clearly works. It's rendering listings. It's just not listening to the instructions you gave it. You're giving the right order in what you're pretty sure is the right language, and the kitchen's bringing out whatever it wants.

There are really only a few reasons a shortcode shrugs off its parameters, and the first one catches more people than all the rest combined:

  • Curly quotes. This is the big one, and it's evil because it's invisible. The WordPress editor — especially the classic editor and a lot of page builders — “helpfully” turns your straight quotes (") into curly typographer's quotes (" "). A shortcode parameter needs straight quotes. With curly ones, the shortcode can't parse the attribute, so it silently throws it away and falls back to the default. The text looks identical to you. The parser sees garbage. If your parameters are being ignored, check this first — retype the quotes in a plain text context, or use the code/HTML block instead of the visual editor.
  • The wrong parameter name or value type. Plugins are picky. A parameter might want a category slug when you gave it the display name, or an ID when you gave it a slug. “Camps” and “summer-camps” and “42” can all refer to the same category, and the shortcode only accepts one of them. Pull up the current documentation and match the exact name and the exact value type it expects.
  • The plugin changed the parameter names in an update. The shortcode you copied from a three-year-old forum post may use names the current version no longer recognizes. Check the docs for your version, not the first answer you found.
  • A cache or a builder is serving old output. You fixed the shortcode but you're looking at a cached copy, or a page-builder widget is wrapping the shortcode and overriding it. Clear the cache and test the raw shortcode on a plain page to rule this out.

So the fast diagnostic path: put the shortcode on a clean page using the code/HTML block (no visual editor mangling your quotes), with straight quotes, using the exact parameter names and value types from the current docs, and clear your cache before you judge the result. If it works there and not on your real page, the problem is the editor or the builder, not the shortcode.

Nine times out of ten, it's the quotes. I wish I were joking. An entire afternoon of “why won't this filter work” has been lost to a quotation mark that looked perfectly normal.

If you've checked the quotes, matched the docs, and cleared the cache and the parameters still don't take, then there's a genuine conflict worth digging into — but run the quotes check first. It's the cheapest fix in this whole series and it's the answer embarrassingly often.