Menu Field Notesshoppure.com · an independent study
01 / Entry · captured 22 Oct 2026

Eleven of seventeen store links on the homepage go nowhere.

The global header offers Flower, Pre-rolls, Vapes, Edibles, Concentrates, Topicals, Deals and Brands before a shopper has chosen a store. Each of those links is built with an empty store slug — /stores//products/flower — and returns a 404 page. The same header sits on the Locations and Loyalty pages.

Evidence · public observation

Every /stores/ link on four pages, and what it returns.

Links were read from the saved HTML of each page and requested again with a plain browser user agent on 22 Oct 2026 (statuses re-checked without following redirects). “301/308” means the link redirects to a store page, which is fine. “404” is the site’s own “Page Not Found” template.

Before a store is chosenFIG. 02 · homepage
Same 17 links on /locations/ and /loyalty/
After a store is chosenFIG. 03 · /mi/warren/
All resolve — but see FIG. 05
Tool · diagnostic

Path tracer

Pick where the shopper lands and what they click. The result is the real link the page carries and the real status it returned on 22 Oct 2026 — not a simulation.

ResultFIG. 04
Choose a landing page and a click, then trace.
Link and status from the captureFix rule shown below the result
Evidence · public observation

Once a store is chosen, two of six category buttons land on “All”.

Dutchie’s category routes on shoppure.com are /products/vaporizers and /products/concentrates. The header’s Vapes button links to /products/vapes; the footer carries both concentrates and a misspelt concetrates. Dutchie answers an unknown category with the full product list: the heading reads “All”, the page title becomes “Cannabis Dispensary in Warren, MI | Open Daily”, and the list includes every product in the store, drinks and accessories as well as concentrates.

These return HTTP 200, so no monitoring catches them. Only a person clicking “Vapes” and seeing drinks does.

Header button → routeFIG. 05
ButtonLinks toShopper sees
Flower/products/flowerFlower ✓
Pre-rolls/products/pre-rollsPre-Rolls ✓
Vapes/products/vapes“All” — every product
Edibles/products/ediblesEdibles ✓
Concentrates (footer, 2nd)/products/concetrates“All” — every product
Topicals/products/topicalsTopicals ✓
Observed in Chrome on /mi/warren/, 22 Oct 2026
Evidence · public observation

Each store has two addresses.

WordPress serves a location page at /mi/warren/ (indexable, canonical to itself, about 3,300 characters of text, not in the sitemap). Dutchie serves the store menu at /stores/pure-warren-rec/ (canonical to itself, not in the sitemap). The Locations page links to the second. Neither address is in any of the site’s sitemaps, which list 12 pages and 22 blog posts and no store pages at all (checked 22 Oct and again 23 Oct 2026).

/mi/warren/WordPress

Title: Warren - Pure Cannabis
Canonical: itself · robots: index, follow
In any sitemap: no
Links to: the Dutchie menu, category routes, specials

/stores/pure-warren-rec/Dutchie

Title: Cannabis Dispensary in Warren, MI | Open Daily (after script)
Canonical: itself · robots: index, follow
In any sitemap: no
Store name in data: “Pure - Warren REC”; New Buffalo’s is “ Pure New Buffalo” with a leading space

Proposal · proposed, not applied

The smallest fix that holds.

  1. Make the header store-aware. If a store cookie exists, build category links with its slug. If not, send category clicks to /locations/ with the chosen category remembered, so the next click lands on the right shelf. This is a Breakdance header template change plus one small script; the Dutchie embed is untouched.
  2. Correct two slugs. vapes → vaporizers, concetrates → concentrates, and remove the duplicate footer link. Five minutes once the template is open.
  3. Pick one address per store. Keep /mi/<city>/ as the page Google indexes, link it to the Dutchie menu, and add the five /stores/… roots to the sitemap only if Pure wants them indexed (see page 03 before deciding).

Alternatives considered. Default every pre-choice click to Monroe (the behaviour /stores// already has): fast, but sends Warren shoppers to a store more than 40 miles away. Geolocate: Dutchie already geolocates inside the menu, but the WordPress header does not see it. Store-aware links are the only option that respects a shopper’s own choice.

Needs internal accessrequires access
  • Breakdance header and footer templates (WordPress admin).
  • How the store cookie is set today — the Dutchie embed or WordPress? Visible only in the admin.
  • Search Console: how many of these 404s Google has already recorded.
  • Whether Pure prefers the location page or the menu page as the search landing page.
Measurement · proposed

How to know it worked.

Re-run the link check (the same script that built FIG. 02 ships in the pack as tools/entry_links.py). The pass condition is simple: zero 404s among header and footer links on the homepage, Locations and Loyalty pages, and every category button’s page heading equal to its label.

Pass conditionsQA

Checkboxes are local to your browser; nothing is sent anywhere.