Multiple URLs point to the same page

Topic summary

A developer is building a Shopify app with extension blocks that load different content from their servers (like help pages). They want to avoid forcing stores to create separate pages for each block.

Proposed Solution:

  • Create one page with a single block
  • Have multiple URLs (e.g., /pages/help-app/index, /pages/help-app/how-would-i-xxx, /pages/help-app/how-to-create-xxx) all point to that same configured page
  • The app would read the URL to determine which content to load

Response from Liam:

  • Not natively supported: Shopify doesn’t allow multiple URLs to point to the same page
  • Alternative approach: Use URL parameters instead (e.g., /pages/help-app?topic=how-would-i-xxx)
    • The block can read the ‘topic’ parameter and load appropriate content dynamically
    • This allows different content on the same page based on parameters
  • Another option: Use a reverse proxy service (like Cloudflare) to rewrite incoming URLs, though this adds external infrastructure

The discussion remains open with a workaround suggested but no final implementation decision.

Summarized with AI on November 12. AI used: claude-sonnet-4-5-20250929.

I’m creating an app that uses app extension blocks. The app has several blocks that a store can apply to page, where each block loads specific data from our servers (like help pages, etc). Rather than forcing each store to create a separate page for each block that they want to use, is it possible to have them create one page, assign one block to that page, but have multiple urls point to that single page.

For example, have these urls all point to the single url → /pages/help-app/index, /pages/help-app/how-would-i-xxx, /pages/help-app/how-to-create-xxx, etc. but all of those urls point to the single page configured with my app’s extenstion → /pages/help-app. i could then read the url to determine which subpage they are trying to load and pull in that information from our server.

Hi Sancuscommerce,

In Shopify, each URL corresponds to a unique page. You cannot have multiple URLs point to the same page. However, there are a couple of ways you can use dynamic content on the page based on URL parameters.

For example, you could have a URL like /pages/help-app?topic=how-would-i-xxx. Your block could then read this ‘topic’ parameter from the URL and load the appropriate content. This way, you can have different content on the same page depending on the URL parameters.

Another way would be using URL rewriting. You would need to use a reverse proxy server or a service like Cloudflare to rewrite incoming URLs to point them to the same page.

1 Like