Skip to content

Add support for SQLite database #763

Open
@ipajen

Description

Environment

  • WordPress: 6.6.3-alpha-59007
  • PHP: 8.3.11
  • Server: LiteSpeed
  • Database: WP_SQLite_Translator (Server: 5.5 / Client: 3.45.2)
  • Browser: Edge 129.0.0.0 (Windows 10/11)
  • Theme: Twenty Twenty-Four 1.2
  • MU-Plugins:
    • Health Check Troubleshooting Mode 1.9.2
  • Plugins:
    • Accessibility Checker 1.15.3
    • Health Check & Troubleshooting 1.7.1
    • SQLite Database Integration 2.1.15
    • WordPress Beta Tester 3.5.6
    • WPVulnerability 3.4.1

Even if SQLite is not currently officially supported by WordPress its possible to test it by SQLite plugin by Wordpress and hopefully it will be integrated in WordPress Core in future.

On the current Accessibility Checker 1.15.3 its not possible to use the plugin with SQLite.

Would be nice if Accessibility Checker could support SQLite

Thanks!

`[27-Sep-2024 07:43:41 UTC] WordPress database error

 

MySQL query:

SELECT COUNT( DISTINCT rule, object ) FROM wp_accessibility_checker WHERE siteid=1 and ignre=0 and ignre_global=0 and type IN ('post','page') and ruletype IN ('warning') LIMIT 100000

Queries made or created this session were:

  1. Executing: BEGIN | (no parameters)
  2. Executing: SELECT COUNT( DISTINCT rule, object ) FROM wp_accessibility_checker WHERE siteid=1 and ignre=0 and ignre_global=0 and type IN (:param0 ,:param1 ) and ruletype IN (:param2 ) LIMIT 100000 | parameters: post, page, warning
  3. Executing: ROLLBACK | (no parameters)
Error occurred at line 4117 in Function handle_error. Error message was: SQLSTATE[HY000]: General error: 1 wrong number of arguments to function COUNT().

Backtrace:

#0 /home/khaotiptha/domains/xxx/public_html/blog/wp-content/plugins/sqlite-database-integration/wp-includes/sqlite/class-wp-sqlite-db.php(287): WP_SQLite_Translator->get_error_message()
#1 /home/khaotiptha/domains/xxx/public_html/blog/wp-includes/class-wpdb.php(3026): WP_SQLite_DB->query()
#2 /home/khaotiptha/domains/xxx/public_html/blog/wp-content/plugins/accessibility-checker/admin/class-issues-query.php(191): wpdb->get_var()
#3 /home/khaotiptha/domains/xxx/public_html/blog/wp-content/plugins/accessibility-checker/admin/class-scans-stats.php(198): EDAC\Admin\Issues_Query->distinct_count()
#4 /home/khaotiptha/domains/xxx/public_html/blog/wp-content/plugins/accessibility-checker/admin/class-welcome-page.php(28): EDAC\Admin\Scans_Stats->summary()
#5 /home/khaotiptha/domains/xxx/public_html/blog/wp-content/plugins/accessibility-checker/partials/welcome-page.php(45): EDAC\Admin\Welcome_Page::render_summary()
#6 /home/khaotiptha/domains/xxx/public_html/blog/wp-content/plugins/accessibility-checker/includes/options-page.php(77): include_once('/home/khaotipth...')
#7 /home/khaotiptha/domains/xxx/public_html/blog/wp-includes/class-wp-hook.php(324): edac_display_welcome_page()
#8 /home/khaotiptha/domains/xxx/public_html/blog/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters()
#9 /home/khaotiptha/domains/xxx/public_html/blog/wp-includes/plugin.php(517): WP_Hook->do_action()
#10 /home/khaotiptha/domains/xxx/public_html/blog/wp-admin/admin.php(259): do_action()
#11 {main}
for query SELECT COUNT( DISTINCT rule, object ) FROM wp_accessibility_checker WHERE siteid=1 and ignre=0 and ignre_global=0 and type IN ('post','page') and ruletype IN ('warning') LIMIT 100000 made by do_action('toplevel_page_accessibility_checker'), WP_Hook->do_action, WP_Hook->apply_filters, edac_display_welcome_page, include_once('/plugins/accessibility-checker/partials/welcome-page.php'), EDAC\Admin\Welcome_Page::render_summary, EDAC\Admin\Scans_Stats->summary, EDAC\Admin\Issues_Query->distinct_count, WP_SQLite_DB->query, WP_SQLite_DB->print_error [27-Sep-2024 07:43:41 UTC] WordPress database error
 

MySQL query:

SELECT COUNT( DISTINCT rule, object ) FROM wp_accessibility_checker WHERE siteid=1 and ignre=0 and ignre_global=0 and type IN ('post','page') and rule IN ('color_contrast_failure') LIMIT 100000

Queries made or created this session were:

  1. Executing: BEGIN | (no parameters)
  2. Executing: SELECT COUNT( DISTINCT rule, object ) FROM wp_accessibility_checker WHERE siteid=1 and ignre=0 and ignre_global=0 and type IN (:param0 ,:param1 ) and rule IN (:param2 ) LIMIT 100000 | parameters: post, page, color_contrast_failure
  3. Executing: ROLLBACK | (no parameters)
Error occurred at line 4117 in Function handle_error. Error message was: SQLSTATE[HY000]: General error: 1 wrong number of arguments to function COUNT().

Backtrace:

#0 /home/khaotiptha/domains/xxx/public_html/blog/wp-content/plugins/sqlite-database-integration/wp-includes/sqlite/class-wp-sqlite-db.php(287): WP_SQLite_Translator->get_error_message()
#1 /home/khaotiptha/domains/xxx/public_html/blog/wp-includes/class-wpdb.php(3026): WP_SQLite_DB->query()
#2 /home/khaotiptha/domains/xxx/public_html/blog/wp-content/plugins/accessibility-checker/admin/class-issues-query.php(191): wpdb->get_var()
#3 /home/khaotiptha/domains/xxx/public_html/blog/wp-content/plugins/accessibility-checker/admin/class-scans-stats.php(209): EDAC\Admin\Issues_Query->distinct_count()
#4 /home/khaotiptha/domains/xxx/public_html/blog/wp-content/plugins/accessibility-checker/admin/class-welcome-page.php(28): EDAC\Admin\Scans_Stats->summary()
#5 /home/khaotiptha/domains/xxx/public_html/blog/wp-content/plugins/accessibility-checker/partials/welcome-page.php(45): EDAC\Admin\Welcome_Page::render_summary()
#6 /home/khaotiptha/domains/xxx/public_html/blog/wp-content/plugins/accessibility-checker/includes/options-page.php(77): include_once('/home/khaotipth...')
#7 /home/khaotiptha/domains/xxx/public_html/blog/wp-includes/class-wp-hook.php(324): edac_display_welcome_page()
#8 /home/khaotiptha/domains/xxx/public_html/blog/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters()
#9 /home/khaotiptha/domains/xxx/public_html/blog/wp-includes/plugin.php(517): WP_Hook->do_action()
#10 /home/khaotiptha/domains/xxx/public_html/blog/wp-admin/admin.php(259): do_action()
#11 {main}
for query SELECT COUNT( DISTINCT rule, object ) FROM wp_accessibility_checker WHERE siteid=1 and ignre=0 and ignre_global=0 and type IN ('post','page') and rule IN ('color_contrast_failure') LIMIT 100000 made by do_action('toplevel_page_accessibility_checker'), WP_Hook->do_action, WP_Hook->apply_filters, edac_display_welcome_page, include_once('/plugins/accessibility-checker/partials/welcome-page.php'), EDAC\Admin\Welcome_Page::render_summary, EDAC\Admin\Scans_Stats->summary, EDAC\Admin\Issues_Query->distinct_count, WP_SQLite_DB->query, WP_SQLite_DB->print_error [27-Sep-2024 07:43:41 UTC] WordPress database error
 

MySQL query:

SELECT COUNT( DISTINCT rule, object ) FROM wp_accessibility_checker WHERE siteid=1 and ignre=0 and ignre_global=0 and type IN ('post','page') and ruletype IN ('error') LIMIT 100000

Queries made or created this session were:

  1. Executing: BEGIN | (no parameters)
  2. Executing: SELECT COUNT( DISTINCT rule, object ) FROM wp_accessibility_checker WHERE siteid=1 and ignre=0 and ignre_global=0 and type IN (:param0 ,:param1 ) and ruletype IN (:param2 ) LIMIT 100000 | parameters: post, page, error
  3. Executing: ROLLBACK | (no parameters)
Error occurred at line 4117 in Function handle_error. Error message was: SQLSTATE[HY000]: General error: 1 wrong number of arguments to function COUNT().

Backtrace:

#0 /home/khaotiptha/domains/xxx/public_html/blog/wp-content/plugins/sqlite-database-integration/wp-includes/sqlite/class-wp-sqlite-db.php(287): WP_SQLite_Translator->get_error_message()
#1 /home/khaotiptha/domains/xxx/public_html/blog/wp-includes/class-wpdb.php(3026): WP_SQLite_DB->query()
#2 /home/khaotiptha/domains/xxx/public_html/blog/wp-content/plugins/accessibility-checker/admin/class-issues-query.php(191): wpdb->get_var()
#3 /home/khaotiptha/domains/xxx/public_html/blog/wp-content/plugins/accessibility-checker/admin/class-scans-stats.php(219): EDAC\Admin\Issues_Query->distinct_count()
#4 /home/khaotiptha/domains/xxx/public_html/blog/wp-content/plugins/accessibility-checker/admin/class-welcome-page.php(28): EDAC\Admin\Scans_Stats->summary()
#5 /home/khaotiptha/domains/xxx/public_html/blog/wp-content/plugins/accessibility-checker/partials/welcome-page.php(45): EDAC\Admin\Welcome_Page::render_summary()
#6 /home/khaotiptha/domains/xxx/public_html/blog/wp-content/plugins/accessibility-checker/includes/options-page.php(77): include_once('/home/khaotipth...')
#7 /home/khaotiptha/domains/xxx/public_html/blog/wp-includes/class-wp-hook.php(324): edac_display_welcome_page()
#8 /home/khaotiptha/domains/xxx/public_html/blog/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters()
#9 /home/khaotiptha/domains/xxx/public_html/blog/wp-includes/plugin.php(517): WP_Hook->do_action()
#10 /home/khaotiptha/domains/xxx/public_html/blog/wp-admin/admin.php(259): do_action()
#11 {main}
for query SELECT COUNT( DISTINCT rule, object ) FROM wp_accessibility_checker WHERE siteid=1 and ignre=0 and ignre_global=0 and type IN ('post','page') and ruletype IN ('error') LIMIT 100000 made by do_action('toplevel_page_accessibility_checker'), WP_Hook->do_action, WP_Hook->apply_filters, edac_display_welcome_page, include_once('/plugins/accessibility-checker/partials/welcome-page.php'), EDAC\Admin\Welcome_Page::render_summary, EDAC\Admin\Scans_Stats->summary, EDAC\Admin\Issues_Query->distinct_count, WP_SQLite_DB->query, WP_SQLite_DB->print_error [27-Sep-2024 07:43:41 UTC] WordPress database error
 

MySQL query:

SELECT COUNT( DISTINCT rule, object ) FROM wp_accessibility_checker WHERE siteid=1 and (ignre=1 or ignre_global=1) and type IN ('post','page') LIMIT 100000

Queries made or created this session were:

  1. Executing: BEGIN | (no parameters)
  2. Executing: SELECT COUNT( DISTINCT rule, object ) FROM wp_accessibility_checker WHERE siteid=1 and (ignre=1 or ignre_global=1) and type IN (:param0 ,:param1 ) LIMIT 100000 | parameters: post, page
  3. Executing: ROLLBACK | (no parameters)
Error occurred at line 4117 in Function handle_error. Error message was: SQLSTATE[HY000]: General error: 1 wrong number of arguments to function COUNT().

Backtrace:

#0 /home/khaotiptha/domains/xxx/public_html/blog/wp-content/plugins/sqlite-database-integration/wp-includes/sqlite/class-wp-sqlite-db.php(287): WP_SQLite_Translator->get_error_message()
#1 /home/khaotiptha/domains/xxx/public_html/blog/wp-includes/class-wpdb.php(3026): WP_SQLite_DB->query()
#2 /home/khaotiptha/domains/xxx/public_html/blog/wp-content/plugins/accessibility-checker/admin/class-issues-query.php(191): wpdb->get_var()
#3 /home/khaotiptha/domains/xxx/public_html/blog/wp-content/plugins/accessibility-checker/admin/class-scans-stats.php(232): EDAC\Admin\Issues_Query->distinct_count()
#4 /home/khaotiptha/domains/xxx/public_html/blog/wp-content/plugins/accessibility-checker/admin/class-welcome-page.php(28): EDAC\Admin\Scans_Stats->summary()
#5 /home/khaotiptha/domains/xxx/public_html/blog/wp-content/plugins/accessibility-checker/partials/welcome-page.php(45): EDAC\Admin\Welcome_Page::render_summary()
#6 /home/khaotiptha/domains/xxx/public_html/blog/wp-content/plugins/accessibility-checker/includes/options-page.php(77): include_once('/home/khaotipth...')
#7 /home/khaotiptha/domains/xxx/public_html/blog/wp-includes/class-wp-hook.php(324): edac_display_welcome_page()
#8 /home/khaotiptha/domains/xxx/public_html/blog/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters()
#9 /home/khaotiptha/domains/xxx/public_html/blog/wp-includes/plugin.php(517): WP_Hook->do_action()
#10 /home/khaotiptha/domains/xxx/public_html/blog/wp-admin/admin.php(259): do_action()
#11 {main}
for query SELECT COUNT( DISTINCT rule, object ) FROM wp_accessibility_checker WHERE siteid=1 and (ignre=1 or ignre_global=1) and type IN ('post','page') LIMIT 100000 made by do_action('toplevel_page_accessibility_checker'), WP_Hook->do_action, WP_Hook->apply_filters, edac_display_welcome_page, include_once('/plugins/accessibility-checker/partials/welcome-page.php'), EDAC\Admin\Welcome_Page::render_summary, EDAC\Admin\Scans_Stats->summary, EDAC\Admin\Issues_Query->distinct_count, WP_SQLite_DB->query, WP_SQLite_DB->print_error `

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions