How to output the vendor URL without 'vendors?q='

Topic summary

  • The Liquid filter url_for_vendor generates vendor links as a query string: /collections/vendors?q=Vendor+Name, which includes URL-encoded characters (e.g., %27 for apostrophe, %20 for space). The request is to output a clean, slug-style path like /collections/onyx-and-green/ instead.

  • A participant states that Shopify only supports vendor filtering via the query parameter on collection pages. Changing this to a path-based URL is not supported.

  • The presence of %27 and %20 is normal URL encoding behavior and not an error. The helper returns encoded output by design.

  • The original poster attempted a JavaScript redirect to a custom path, but reports it didn’t work (no technical details provided on the implementation or errors).

  • Outcome: No built-in or confirmed workaround was provided. The limitation appears to be platform-level, so the request for a clean vendor slug URL remains unsupported/unsolved in this thread.

Summarized with AI on January 18. AI used: gpt-5.

Hi community,

The collection filter {{ “Polina’s Potent Potions” | url_for_vendor }} will output :

/collections/vendors?q=Polina%27s%20Potent%20Potions.

But how can I get the vendors url without any additional %27s%20 or vendors?q= in the URL,

I have this ‘collections/vendors?q=Onyx%20%26%20Green’ in the address bar on clicking vendor name.But I need it as collections/onyx-and-green/.

Any help?

Shopify only supports searching by query parameter in your collection page. No way to change you want I think

I tried this URL to redirect using javascript redirect.But why that is also not working.