Skip to content
PTS-tillsyn17 pågående tillsynsärenden mot svensk e-handel
Granska
Stack-specifik scan

WCAG-fixar för WordPress

Granska detekterar er WordPress-version, identifierar WCAG-fel i tema och tillägg, och genererar PHP-fixar med rätt syntax — inte generiska rekommendationer.

43%
av webben
60k+
svenska aktiva sajter
7
vanligaste WCAG-fel
01 · Felmönster

De 7 vanligaste WCAG-felen i WordPress

Mönster vi ser i 80%+ av automatiska scans mot svenska WordPress-sajter.

CriticalWCAG 1.1.1

Saknad alt-text på media-uploads

WordPress lägger inte automatiskt till alt-text vid uppladdning. Produktbilder och blog-illustrationer saknar ofta beskrivning helt.

CriticalWCAG 1.4.3

Otillräcklig kontrast i theme-färgschema

Många populära teman levererar Customizer-defaults under 4.5:1, särskilt på sekundär brödtext och länkar i sidebar.

HighWCAG 3.3.2

Contact Form 7 / Gravity Forms utan label

Form-plugins renderar implicita placeholders som ersätter labels, vilket bryter mot WCAG 3.3.2 och förvirrar skärmläsare.

HighWCAG 4.1.2

Ikonknappar utan tillgängligt namn

Sociala-ikoner och meny-toggles i headern saknar typiskt aria-label — endast SVG-grafik, inget för assistive tech att läsa.

HighWCAG 2.1.2

Modal-popups utan focus-trap

Popup-plugins (OptinMonster, Popup Maker, MailChimp for WP) renderar modaler som inte fångar tangentbordsfokus.

MediumWCAG 2.1.1

Dropdown-navigation otillgänglig med tangentbord

Hover-baserade undermenyer (Astra, GeneratePress, Divi) saknar tab/escape-stöd och stängs när användaren tabbar in.

LowWCAG 3.1.1

Saknad lang-attribut eller felaktigt språk i <html>

Multilingual-plugins (Polylang, WPML) sätter inte alltid rätt lang-värde per sida, vilket påverkar skärmläsarens uttal.

02 · Stack-detektering

Så identifierar Granska att ni kör WordPress

Fyra parallella signaler. När WordPress-versionen är känd anpassas fixarna till rätt API-yta (Gutenberg vs Classic, plugin-detektering, REST-version).

Meta-generator
<meta name="generator" content="WordPress 6.x">
Asset-paths
/wp-content/themes/... · /wp-includes/js/...
REST API
/wp-json/wp/v2/ · X-Powered-By headers
Standard endpoints
/wp-login.php · /xmlrpc.php · wp-admin/admin-ajax.php
03 · PHP-fixar

Tre kodfixar för vanliga WordPress-issues

Snippets från Granska:s AI-genererade output — direkt att lägga i ert child-themes functions.php eller en mu-plugin.

CriticalWCAG 1.1.1 — Alt-text

Fallback alt-text på media-uploads

functions.php
WordPress 5.0+
// Granska: fallback alt-text från attachment-titel
add_filter(
  'wp_get_attachment_image_attributes',
  function ($attr, $attachment) {
    if (empty($attr['alt']) && $attachment instanceof WP_Post) {
      $attr['alt'] = get_the_title($attachment->ID);
    }
    return $attr;
  },
  10,
  2
);
HighWCAG 2.4.1 — Skip-link

Injicera skip-link i wp_body_open

functions.php
WordPress 5.2+
// Granska: skip-link för tangentbordsanvändare
add_action('wp_body_open', function () {
  echo '<a href="#main" class="skip-link screen-reader-text">'
     . esc_html__('Hoppa till inneh\u00e5ll', 'theme-textdomain')
     . '</a>';
});

// CSS i theme/style.css:
// .skip-link { position: absolute; left: -9999px; }
// .skip-link:focus { left: 1rem; top: 1rem; z-index: 9999; }
MediumWCAG 4.1.2 — Aria-current

Markera aktiv meny-item för skärmläsare

functions.php
Alla WP-versioner
// Granska: lägg på aria-current="page" på aktiv meny-länk
add_filter(
  'nav_menu_link_attributes',
  function ($atts, $item) {
    if (in_array('current-menu-item', (array) $item->classes, true)) {
      $atts['aria-current'] = 'page';
    }
    return $atts;
  },
  10,
  2
);
04 · Plugin-specifika fixar

Vanliga problem per plugin

ElementorSaknade heading-hierarkierTheme Builder + Custom CSS
DiviOtillgängliga toggles och tabsDivi Theme Options + JS-hook
Contact Form 7Implicita labelswpcf7_form_elements filter
Gravity FormsFelaktig aria-requiredgform_field_input filter
WPBakery / WP BuilderTab-fokus saknas i slidersvc_tta_section hook
05 · Tema-specifika fixar

Vad vi ser i populära WordPress-teman

AstraDropdown utan tab-stödAstra Pro Header Builder
GeneratePressCustomizer-färger under 4.5:1Custom CSS-override
Hello (Elementor)Bare-minimum tema, allt arvs från ElementorFix på Elementor-nivå
Twenty Twenty-FiveGenerellt bra; vissa block.json-issuestheme.json patches
Custom child-themeVarierar — beroende på basthematfunctions.php filters

Skanna er WordPress-sajt på 60 sekunder

Klistra in er URL. Granska detekterar WordPress, identifierar issues, och genererar PHP-fixar för er functions.php — utan signup.

Automatiserad scanning hittar 30–40 % av alla WCAG-fel. Full compliance kräver även manuell granskning.