Standard för listningar av inlägg i WordPress är att endast ”Läs-mer”-länkar samt eventuellt rubriker och inläggsbilder är länkade till respektive inlägg. Det är i grunden inte ologiskt eftersom en användare i förväg ska kunna förstå, vad som händer, när hen navigerar på en sida. Att på mobilen scrolla runt på en webbplats och intet ont anande plötsligt hamna någon helt annanstans eftersom jag av misstag råkade klicka på en väl gömd länk är allt annat än vettigt. Men – och det är ett ganska stort MEN: en besökare av en nyhetsinriktad sida (helt oavsett om det är en tidning eller en blogg) förväntar sig nästan det motsatta. När du klickar på ”kortet” som tillhör en artikel i t.ex. DN så förväntar du dig att du kommer skickas till den artikeln. Helt oavsett om du klickar på rubriken, bilden eller pufftexten som visas på startsidan.
Den mest vanliga lösningen tycks vara att länka varenda element till målsidan. Det är dock inget som kan rekommenderas ur en tillgänglighetsaspekt: synskadade som använder skärmläsare är vid det här läget nog ganska så trötta att på fem rader höra samma länk uppläst femtioelva gånger.
Därför är den enklaste och mest effektiva lösningen att gå lite utanför den inbyggda logiken i WordPress och lösa det hela ganska så enkelt med jQuery ovanpå sidan.
async function linkItemListing() {
const blockPostTitles = document.querySelectorAll('.wp-block-post-title');
for (let postTitle of blockPostTitles) {
const a = postTitle.querySelector('a');
if (a) {
const url = a.href;
const blockPost = postTitle.closest('.wp-block-post');
if (blockPost) {
blockPost.addEventListener('click', () => {
window.location.href = url;
});
}
}
}
}
linkItemListing();
Code language: JavaScript (javascript)
Lämna ett svar