Skip to content
easeweb
Search topics

Help links that move from page to page

Every shop page ends its header with a Help link, but the checkout's slimmed-down header drops it and puts Help in the footer, below the payment form.

WCAG 2.2
SC 3.2.6A· new in 2.2
Required by
Not required by Section 508 or EN 301 549
Broken <footer class="checkout-footer"><a href="/help">Help</a>
The accessibility problem illustrated: Cognitive:Where did Help go?
01

The problem

People who learned where Help is on one page can't find it on the page where they need it most.

02

Try it

Find Help on the product page, then choose Go to checkout and find it again.

The panel under the window says where Help sits on each page you have opened, and whether the two agree. Choose Juniper to go back.

Broken Can you fix this?

Linen shirt

Relaxed fit, in natural linen.

Where Help sits

  • Product page: at the end of the header, before the main content
  • Checkout: not opened yet

A recreated demo. The broken version is intentionally inaccessible.

03

The fix

Put help at the same point in every page's order, the checkout included.

  1. 1Keep each repeated help mechanism at the same point in every page's order.
  2. 2Build slimmed-down pages, such as checkout, from the header or footer that holds help everywhere else.
  3. 3Keep where help is drawn and where it is read in step.
Before Help moved to the footer at checkout

html

<!-- Every shop page --><header class="site-header">  <a href="/" class="logo">Juniper</a>  <nav aria-label="Main">    <a href="/shop">Shop</a>    <a href="/sale">Sale</a>  </nav>  <a href="/account">Account</a>  <a href="/basket">Basket</a>  <a href="/help">Help</a></header><main>…</main><footer class="site-footer">  <a href="/privacy">Privacy</a>  <a href="/terms">Terms</a></footer>

html

<!-- Checkout --><header class="checkout-header">  <a href="/" class="logo">Juniper</a>  <p>Secure checkout</p></header><main>…</main><footer class="checkout-footer">  <a href="/help">Help</a>  <a href="/privacy">Privacy</a>  <a href="/terms">Terms</a></footer>
After

The same Help link in the checkout's header

html

<!-- Every shop page --><header class="site-header">  <a href="/" class="logo">Juniper</a>  <nav aria-label="Main">    <a href="/shop">Shop</a>    <a href="/sale">Sale</a>  </nav>  <a href="/account">Account</a>  <a href="/basket">Basket</a>  <a href="/help">Help</a></header><main>…</main><footer class="site-footer">  <a href="/privacy">Privacy</a>  <a href="/terms">Terms</a></footer>

html

<!-- Checkout --><header class="checkout-header">  <a href="/" class="logo">Juniper</a>  <p>Secure checkout</p>  <a href="/help">Help</a></header><main>…</main><footer class="checkout-footer">  <a href="/privacy">Privacy</a>  <a href="/terms">Terms</a></footer>

Fixing this with an AI coding assistant? Get this guide as Markdown

04

Verify the fix

5 checks, no mouse.

Test with: Screen reader, Keyboard, Zoom

0 of 5 checked

Record the OS, browser and assistive-technology versions, the build, the date, and the actual result of each step. Repeat after any layout, template or widget change.

Limits

This is a starting pattern, not a guarantee for every site. The criterion asks for consistency, not for good help: a Help link in the same place still fails people if it leads to a page that answers nothing, and what the accessibility page among them should answer is in accessibility statements that are missing or say nothing. It covers one set of pages, so a separate help portal with its own layout can put help in its own place, as long as it does so consistently. Test the whole journey, step by step, with the people and tools your users rely on.

This is a recreated teaching example, not a finding about a named client. The code is a starting pattern: test it in your own product. No completed assistive-technology test is claimed here.

Keep this fixed as your code changes.

Turn guides like this into rules your coding agents and CI follow, then have the result retested with a keyboard and screen readers.

How retests work