fix: correct area-hidden typo to aria-hidden across templates#2782
Open
thisismyurl wants to merge 1 commit into
Open
fix: correct area-hidden typo to aria-hidden across templates#2782thisismyurl wants to merge 1 commit into
thisismyurl wants to merge 1 commit into
Conversation
'area-hidden' is not a valid HTML attribute. The intended attribute is
'aria-hidden', which tells assistive technologies to ignore decorative
elements. The typo was silently accepted by browsers but had no effect,
so decorative icon spans were not hidden from screen readers as intended.
This is a one-character fix (area → aria) applied to all 167 occurrences
across 30+ PHP template and view files and supporting JS files. Every
instance follows the same pattern:
area-hidden="true" → aria-hidden="true"
No logic changes — purely a spelling correction on an ARIA attribute name.
There was a problem hiding this comment.
Pull request overview
Note
Copilot was unable to run its full agentic suite in this review.
This PR fixes invalid HTML accessibility attributes by replacing area-hidden with the correct aria-hidden across multiple UI templates and JS-rendered markup.
Changes:
- Replaced mistyped
area-hiddenattributes witharia-hiddenin PHP view/template files. - Updated
wp_ksesallowlists to permitaria-hiddenwhere markup is built as strings. - Updated various JS string templates that render spinners/icons to use
aria-hidden.
Reviewed changes
Copilot reviewed 85 out of 85 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| views/quiz/header-context/frontend-dashboard-students-attempts.php | Fix aria-hidden for “Back” icon markup |
| views/quiz/header-context/frontend-dashboard-my-attempts.php | Fix aria-hidden for “Back” icon markup |
| views/quiz/header-context/course-single-previous-attempts.php | Fix aria-hidden for “Back” icon markup |
| views/quiz/header-context/backend-dashboard-students-attempts.php | Fix aria-hidden for “Back” icon markup |
| views/qna/qna-table.php | Fix aria-hidden on QnA icons/buttons |
| views/qna/qna-single.php | Fix aria-hidden on QnA header/actions/divider |
| views/pages/withdraw_requests.php | Fix aria-hidden on modal close icons |
| views/pages/tools/settings-log.php | Fix aria-hidden on dropdown/menu icons |
| views/pages/tools/manage-tokens.php | Fix aria-hidden on modal close icons |
| views/pages/students.php | Fix aria-hidden on external-link icon |
| views/pages/instructors.php | Fix aria-hidden on modal close icons |
| views/pages/ecommerce/coupon-list.php | Fix aria-hidden on dropdown/menu and delete icons |
| views/pages/course-list.php | Fix aria-hidden on course list action icons |
| views/pages/announcements.php | Fix aria-hidden on announcement icon |
| views/options/tools.php | Fix aria-hidden on nav icon |
| views/options/template/common/reset-button-template.php | Fix aria-hidden on reset icon |
| views/options/template/common/modal-confirm.php | Fix aria-hidden on modal close icon |
| views/options/template/color_picker.php | Fix aria-hidden on “Show More” icon |
| views/options/settings.php | Fix aria-hidden on search/nav icons |
| views/options/field-types/toggle_switch_button_thumb.php | Fix aria-hidden on trash icon |
| views/modal/review.php | Fix aria-hidden on modal close icon |
| views/modal/login.php | Fix aria-hidden on modal close icon |
| views/fragments/thumbnail-uploader.php | Fix aria-hidden on upload icon |
| views/fragments/quiz-list-single.php | Fix aria-hidden on edit/delete icons |
| views/fragments/attachments.php | Fix aria-hidden on remove icon |
| views/fragments/announcement-list.php | Fix aria-hidden on modal/action icons and divider |
| views/elements/navbar.php | Fix aria-hidden on separator |
| views/elements/list-navbar.php | Fix aria-hidden on separator |
| views/elements/list-filters.php | Fix aria-hidden on search icon |
| views/elements/filters.php | Fix aria-hidden on reset/search icons |
| views/elements/common-confirm-popup.php | Fix aria-hidden on modal close icon |
| views/elements/bulk-confirm-popup.php | Fix aria-hidden on modal close icon |
| views/course-share.php | Fix aria-hidden on modal close icon |
| templates/single/video/youtube.php | Fix aria-hidden on loading spinner |
| templates/single/video/vimeo.php | Fix aria-hidden on loading spinner |
| templates/single/video/shortcode.php | Fix aria-hidden on loading spinner |
| templates/single/video/html5.php | Fix aria-hidden on loading spinner |
| templates/single/video/external_url.php | Fix aria-hidden on loading spinner |
| templates/single/video/embedded.php | Fix aria-hidden on loading spinner |
| templates/single/quiz/parts/question.php | Fix aria-hidden on previous button icon |
| templates/single/password-protected.php | Fix aria-hidden on close icon |
| templates/single/lesson/lesson_sidebar.php | Fix aria-hidden on sidebar/icons and update wp_kses allowlist |
| templates/single/lesson/complete_form.php | Fix aria-hidden on “Mark as Complete” icon |
| templates/single/course/reviews.php | Fix aria-hidden on rating/progress/divider elements |
| templates/single/course/material-includes.php | Fix aria-hidden on bullet icon |
| templates/single/course/course-topics.php | Fix aria-hidden on status icon |
| templates/single/course/course-target-audience.php | Fix aria-hidden on bullet icon |
| templates/single/course/course-requirements.php | Fix aria-hidden in echoed requirements markup |
| templates/single/course/course-entry-box.php | Fix aria-hidden on progress/alert icons |
| templates/single/course/course-content.php | Fix aria-hidden on “Show More” icon |
| templates/single/course/course-benefits.php | Fix aria-hidden on bullet icon |
| templates/single/common/header.php | Fix aria-hidden on header icons |
| templates/single/common/footer.php | Fix aria-hidden on prev/next icons |
| templates/single-content-loader.php | Fix aria-hidden on progress value element |
| templates/shortcode/instructor-filter.php | Fix aria-hidden on filter UI icons/layout spacer |
| templates/modal/confirm.php | Fix aria-hidden on modal close icon |
| templates/modal/alert.php | Fix aria-hidden on modal close icon |
| templates/metabox-wrapper.php | Fix aria-hidden on metabox toggle icon |
| templates/loop/meta.php | Fix aria-hidden on meta icons |
| templates/loop/enrolled-course-progress.php | Fix aria-hidden on progress value element |
| templates/loop/course-price.php | Fix aria-hidden on progress circle markup |
| templates/loop/course-price-woocommerce.php | Fix aria-hidden on progress circle markup |
| templates/loop/course-price-tutor.php | Fix aria-hidden on progress circle markup |
| templates/global/attachments.php | Fix aria-hidden on download icon |
| templates/ecommerce/checkout-details.php | Fix aria-hidden on coupon/tag/remove icons |
| templates/dashboard/withdraw.php | Fix aria-hidden on withdraw icons and divider |
| templates/dashboard/settings/profile.php | Fix aria-hidden on camera icon |
| templates/dashboard/reviews/given-reviews.php | Fix aria-hidden on edit/delete/close icons |
| templates/dashboard/purchase_history.php | Fix aria-hidden on receipt/export icon |
| templates/dashboard/my-courses.php | Fix aria-hidden on meta/action/dropdown icons and modal close |
| templates/dashboard/dashboard.php | Fix aria-hidden on progress/icon elements |
| templates/dashboard/assignments/submitted.php | Fix aria-hidden on “Back” icon |
| templates/dashboard/assignments/review.php | Fix aria-hidden on “Back” icon |
| templates/dashboard/announcements.php | Fix aria-hidden on announcement icon |
| templates/course-filter/filters.php | Fix aria-hidden on close/search icons |
| templates/course-embed.php | Fix aria-hidden on meta icons |
| restapi/RestAuth.php | Fix aria-hidden on action menu icons in REST auth UI |
| includes/tutor-general-functions.php | Fix aria-hidden on close icons for alerts/snackbar |
| assets/react/v2/pagination.js | Fix aria-hidden in injected spinner markup |
| assets/react/lib/tutor.js | Fix aria-hidden in injected modal markup |
| assets/react/front/pages/instructor-list-filter.js | Fix aria-hidden in injected spinner markup |
| assets/react/front/course/_spotlight-quiz.js | Fix aria-hidden on injected hint icon |
| assets/react/front/course/_archive.js | Fix aria-hidden in injected spinner/backdrop markup |
| assets/react/front/_select_dd_search.js | Fix aria-hidden on search icon markup |
| assets/react/admin-dashboard/segments/import-export.js | Fix aria-hidden on dropdown/menu icons |
Comments suppressed due to low confidence (1)
views/pages/students.php:1
aria-hiddenshould use a valid token value of"true"or"false"(lowercase). Using"True"is invalid per ARIA and may be ignored by assistive technologies; change it toaria-hidden="true".
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
area-hiddenis not a valid HTML attribute. The intended attribute isaria-hidden, which instructs assistive technologies to skip decorative elements. The typo was silently accepted by browsers but had zero effect — all decorative icon<span>and<i>elements marked witharea-hidden="true"were still announced to screen readers.This is a one-character fix:
area→aria, applied consistently across 167 occurrences in 85+ PHP template/view files and supporting JS files.Every instance follows the same pattern:
No logic changes. No markup restructuring. Purely a spelling correction on an ARIA attribute name.
Why this matters
Screen readers announce every element that isn't explicitly hidden via
aria-hidden="true". Decorative icons liketutor-icon-user-line,tutor-icon-times, andtutor-icon-bullhornappear throughout the course listing, dashboard, and announcement views. Without a workingaria-hidden, every icon gets read aloud as an unlabeled interactive or decorative element, degrading the experience for learners using assistive technology.Testing
Development and testing assisted by AI. All code reviewed and verified manually.