73% accessibility-checker

Code Review | Equalize Digital Accessibility Checker - Audit Your Website for WCAG, ADA, and Section 508 Accessibility Errors

WordPress plugin Equalize Digital Accessibility Checker - Audit Your Website for WCAG, ADA, and Section 508 Accessibility Errors scored73%from 54 tests.

About plugin

  • Plugin page: accessibility-che...
  • Plugin version: 1.6.10
  • PHP version: 7.4.16
  • WordPress compatibility: 5.0.0-6.4.1
  • WordPress version: 6.3.1
  • First release: Dec 7, 2020
  • Latest release: Dec 1, 2023
  • Number of updates: 94
  • Update frequency: every 11.8 days
  • Top authors: stevejonesdev (97.87%)equalizedigital (3.19%)

Code review

54 tests

User reviews

33 reviews

Install metrics

3,000+ active /92,682 total downloads

Benchmarks

Plugin footprint 65% from 16 tests

Installer Passed 1 test

🔺 Critical test (weight: 50) | Verifying that this plugin installs correctly without errors
Installer ran successfully

Server metrics [RAM: ▲1.71MB] [CPU: ▲6.76ms] Passed 4 tests

This is a short check of server-side resources used by Equalize Digital Accessibility Checker - Audit Your Website for WCAG, ADA, and Section 508 Accessibility Errors
Normal server usage
PageMemory (MB)CPU Time (ms)
Home /5.87 ▲2.41135.49 ▲96.68
Dashboard /wp-admin5.07 ▲1.7261.97 ▲1.77
Posts /wp-admin/edit.php5.10 ▲1.7461.99 ▲13.36
Add New Post /wp-admin/post-new.php7.60 ▲1.7196.91 ▼3.40
Media Library /wp-admin/upload.php4.90 ▲1.6751.03 ▲15.31
Accessibility Checker /wp-admin/admin.php?page=accessibility_checker4.9250.02
Settings /wp-admin/admin.php?page=accessibility_checker_settings4.8848.17

Server storage [IO: ▲4.18MB] [DB: ▲0.03MB] Passed 3 tests

Analyzing filesystem and database footprints of this plugin
This plugin was installed successfully
Filesystem: 284 new files
Database: 1 new table, 12 new options
New tables
wp_accessibility_checker
New WordPress options
edac_local_loopback
db_upgraded
edac_simplified_summary_position
widget_theysaidso_widget
edac_db_version
edac_activation_date
edac_review_notice
widget_recent-comments
can_compress_scripts
theysaidso_admin_options
...

Browser metrics Passed 4 tests

An overview of browser requirements for Equalize Digital Accessibility Checker - Audit Your Website for WCAG, ADA, and Section 508 Accessibility Errors
Normal browser usage
PageNodesMemory (MB)Script (ms)Layout (ms)
Home /3,184 ▲43714.89 ▲0.8733.48 ▲31.9740.89 ▲4.47
Dashboard /wp-admin2,501 ▲3265.70 ▲0.01104.25 ▼14.8545.47 ▲7.83
Posts /wp-admin/edit.php2,134 ▲312.00 ▼0.0140.65 ▲0.8334.76 ▼0.16
Add New Post /wp-admin/post-new.php11,511 ▲9,98524.23 ▲0.951,038.26 ▲345.0482.74 ▲27.07
Media Library /wp-admin/upload.php1,428 ▲344.20 ▲0.0199.32 ▼1.3241.38 ▼1.72
Accessibility Checker /wp-admin/admin.php?page=accessibility_checker1,3601.9240.9653.63
Settings /wp-admin/admin.php?page=accessibility_checker_settings1,0991.8630.1135.39

Uninstaller [IO: ▲0.00MB] [DB: ▲0.03MB] 50% from 4 tests

🔸 Tests weight: 35 | Checking the uninstaller removed all traces of the plugin
Please fix the following items
  • Zombie tables detected upon uninstall: 1 table
    • wp_accessibility_checker
  • This plugin did not uninstall successfully, leaving 11 options in the database
    • edac_post_types
    • edac_review_notice
    • widget_theysaidso_widget
    • theysaidso_admin_options
    • can_compress_scripts
    • edac_local_loopback
    • widget_recent-posts
    • db_upgraded
    • edac_db_version
    • widget_recent-comments
    • ...

Smoke tests 75% from 4 tests

Server-side errors Passed 1 test

🔹 Test weight: 20 | A smoke test targeting server-side errors
Everything seems fine, however this is by no means an exhaustive test

SRP 50% from 2 tests

🔹 Tests weight: 20 | The single-responsibility principle: PHP files have to remain inert when accessed directly, throwing no errors and performing no actions
The following issues need your attention
  • 125× PHP files trigger errors when accessed directly with GET requests (only 10 are shown):
    • > PHP Fatal error
      Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/accessibility-checker/vendor/composer/installers/src/Composer/Installers/StarbugInstaller.php:4
    • > PHP Fatal error
      Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/accessibility-checker/vendor/composer/installers/src/Composer/Installers/RadPHPInstaller.php:4
    • > PHP Fatal error
      Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/accessibility-checker/vendor/composer/installers/src/Composer/Installers/PrestashopInstaller.php:4
    • > PHP Fatal error
      Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/accessibility-checker/vendor/composer/installers/src/Composer/Installers/Redaxo5Installer.php:4
    • > PHP Fatal error
      Uncaught Error: Class 'PHPUnit_Framework_TestCase' not found in wp-content/plugins/accessibility-checker/vendor/davechild/textstatistics/tests/TextStatisticsKiplingIfTest.php:3
    • > PHP Fatal error
      Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/accessibility-checker/vendor/composer/installers/src/Composer/Installers/SyliusInstaller.php:4
    • > PHP Fatal error
      Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/accessibility-checker/vendor/composer/installers/src/Composer/Installers/ImageCMSInstaller.php:4
    • > PHP Fatal error
      Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/accessibility-checker/vendor/composer/installers/src/Composer/Installers/CockpitInstaller.php:4
    • > PHP Fatal error
      Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/accessibility-checker/vendor/composer/installers/src/Composer/Installers/CroogoInstaller.php:4
    • > PHP Fatal error
      Uncaught Error: Call to undefined function add_action() in wp-content/plugins/accessibility-checker/includes/classes/class-edac-frontend-highlight.php:20

User-side errors Passed 1 test

🔹 Test weight: 20 | This is just a short smoke test looking for browser issues
No browser issues were found

Optimizations

Plugin configuration 93% from 29 tests

readme.txt 94% from 16 tests

Perhaps the most important file in your plugin readme.txt gets parsed in order to generate the public listing of your plugin
Attributes that need to be fixed:
  • Tags: Too many tags (11 tag instead of maximum 10); only the first 5 tags are used in your directory listing
The official readme.txt might help

accessibility-checker/accessibility-checker.php 92% from 13 tests

The entry point to "Equalize Digital Accessibility Checker - Audit Your Website for WCAG, ADA, and Section 508 Accessibility Errors" version 1.6.10 is a PHP file that has certain tags in its header comment area
Please take the time to fix the following:
  • Domain Path: The domain path points to an invalid folder, "/languages" does not exist

Code Analysis Passed 3 tests

File types Passed 1 test

🔸 Test weight: 35 | Executable files are considered dangerous and should not be included with any WordPress plugin
Success! There were no dangerous files found in this plugin31,162 lines of code in 238 files:
LanguageFilesBlank linesComment linesLines of code
PHP2103,1994,84629,897
JSON500520
Markdown5910474
YAML5363140
XML41077
SVG51050
CSS2002
JavaScript2012

PHP code Passed 2 tests

This plugin's cyclomatic complexity and code structure detailed below
There were no cyclomatic complexity issued detected
Cyclomatic complexity
Average complexity per logical line of code0.14
Average class complexity8.88
▷ Minimum class complexity1.00
▷ Maximum class complexity271.00
Average method complexity3.23
▷ Minimum method complexity1.00
▷ Maximum method complexity63.00
Code structure
Namespaces5
Interfaces0
Traits0
Classes144
▷ Abstract classes10.69%
▷ Concrete classes14399.31%
▷ Final classes117.69%
Methods510
▷ Static methods5510.78%
▷ Public methods37974.31%
▷ Protected methods11722.94%
▷ Private methods142.75%
Functions203
▷ Named functions16882.76%
▷ Anonymous functions3517.24%
Constants138
▷ Global constants3626.09%
▷ Class constants10273.91%
▷ Public constants102100.00%

Plugin size 50% from 2 tests

Image compression 50% from 2 tests

Using a strong compression for your PNG files is a great way to speed-up your plugin
23 PNG files occupy 0.97MB with 0.46MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant
FileSize - originalSize - compressedSavings
assets/images/ignore icon navy.png13.50KB8.52KB▼ 36.93%
assets/images/readability icon white.png14.62KB9.18KB▼ 37.20%
build/img/welcome-screenshot-standard.png288.92KB68.67KB▼ 76.23%
assets/images/contrast icon blue.png13.09KB8.54KB▼ 34.78%
build/img/edac-emblem.png9.24KB4.52KB▼ 51.10%