Kalo te përmbajtja
SEO Analyzer

Aksesueshmëri

Atributi lang i dokumentit

Deklarimi i gjuhës te <html>; pa të, lexuesit e ekranit e lexojnë shqipen me shqiptim të huaj.

Çfarë është

<html lang="sq"> deklaron gjuhën kryesore të dokumentit. Është një atribut i vetëm me një vlerë të shkurtër, dhe është një nga ndërhyrjet më të lira në gjithë aksesueshmërinë.

Vlera është një etiketë gjuhe sipas BCP 47: sq për shqipen, sq-AL ose sq-XK kur rajoni ka rëndësi, en për anglishten. Për pjesë teksti në gjuhë tjetër brenda faqes, i njëjti atribut vendoset te elementi përkatës.

Pse ka rëndësi

Lexuesit e ekranit zgjedhin motorin e shqiptimit nga ky atribut. Pa të, ata përdorin gjuhën e parazgjedhur të sistemit — shpesh anglishten — dhe teksti shqip lexohet me rregullat e shqiptimit anglez. Rezultati është i pakuptueshëm, jo thjesht i pakëndshëm: një fjalë si "përmbajtje" e lexuar me fonetikë angleze nuk njihet dot nga dëgjuesi.

Për përdoruesit që varen nga lexuesi i ekranit, kjo e bën faqen të papërdorshme edhe kur gjithçka tjetër është e rregullt.

Shfletuesit e përdorin të njëjtin atribut për ndarjen e fjalëve në fund të rreshtit, për thonjëzat tipografike dhe për të ofruar përkthimin automatik. Një faqe shqip pa lang shpesh nuk propozohet fare për përkthim.

Motorët e kërkimit e përdorin si një nga sinjalet për gjuhën e faqes, veçanërisht kur sajti ka versione në disa gjuhë.

Si rregullohet

<html lang="sq">
…
<p>Termi teknik quhet <span lang="en">crawl budget</span>.</p>

Hapat:

  • Vendose te `<html>`, jo te `<body>`.
  • Përdor kodin e saktë: sq për shqipen. Jo al, që është kod shteti, jo gjuhe.
  • Shto rajonin vetëm kur ka rëndësi: sq-XK për Kosovën.
  • Shëno pjesët në gjuhë tjetër me lang te elementi që i përmban.
  • Sigurohu që vlera përputhet me tekstin. Një lang="en" mbi një faqe shqip është më keq se mungesa.
  • Për sajte shumëgjuhësh, shablloni duhet ta ndërtojë vlerën nga gjuha aktuale, jo ta ketë të fiksuar.

Si e mat ky mjet

Tri klasa e kontrollojnë veçmas. TechnicalAnalyzer::checkLangAttribute() (services/TechnicalAnalyzer.php:85) lexon //html/@lang dhe jep kaluar (:92) ose paralajmërim (:94). AccessibilityAnalyzer::checkLangAttribute() (services/AccessibilityAnalyzer.php:155) bën të njëjtën gjë dhe prodhon konstatimin e dytë (:163). InternationalSeoAnalyzer::checkLanguageConsistency() (services/InternationalSeoAnalyzer.php:135) e lexon po ashtu dhe, nëse mungon, zbret 10 pikë me konstatim të tretë (:53).

Pra mungesa e një atributi të vetëm shfaqet tri herë në raport.

Çfarë NUK e mat

Të tria kontrollet shohin vetëm nëse atributi ekziston dhe nuk është bosh. Vlefshmëria e vlerës nuk kontrollohet: lang="shqip", lang="al" ose lang="zz" kalojnë të gjitha si të rregullta, ndonëse asnjëra nuk është etiketë e vlefshme BCP 47.

Nuk kontrollohet as nëse vlera i përgjigjet tekstit — një faqe krejt shqip me lang="en" raportohet si e rregullt, dhe kjo është pikërisht situata më e dëmshme.

Atributet lang brenda faqes, mbi pjesë teksti në gjuhë tjetër, nuk kërkohen fare. Vetëm mospërputhja midis //html/@lang dhe etiketës së vjetruar http-equiv="content-language" kontrollohet, te services/InternationalSeoAnalyzer.php:146.

Kodi që e kryen matjen

  • services/TechnicalAnalyzer.php:85TechnicalAnalyzer::checkLangAttribute
  • services/AccessibilityAnalyzer.php:155AccessibilityAnalyzer::checkLangAttribute
  • services/InternationalSeoAnalyzer.php:135InternationalSeoAnalyzer::checkLanguageConsistency

Standardi