Product Table & List Builder for WooCommerce

Create WooCommerce product tables that are searchable, sortable, filterable and mobile responsive. Help customers find and buy products much faster.

v5.0.5WC Product TableUpdated 2026-06-16Added Sep 4, 201810k+ installs98% rating
23
Score
1,361
Errors
2,047
Warnings
+0
Change

Category Scores

Security0
Repo91
Performance96
Maintainability0

Top Issues by Category

maintainability1,822
security1,393
i18n159

Issues Details

3,408 issues found in latest scan

WARNING1,505
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedVariableFound

Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$$arr_key".

ERROR925
WordPress.Security.EscapeOutput.OutputNotEscaped

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '" #wcpt-{$table_id} .wcpt-left-sidebar.wcpt-navigation {\n'.

WARNING245
WordPress.Security.NonceVerification.Recommended

Processing form data without nonce verification.

ERROR200
missing_direct_file_access_protection

PHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;

ERROR159
WordPress.WP.I18n.TextDomainMismatch

Mismatched text domain. Expected 'wc-product-table-lite' but got "wc-product-table".

WARNING73
WordPress.Security.ValidatedSanitizedInput.MissingUnslash

$_GET[$data['id'] . '_' . 'device'] not unslashed before sanitization. Use wp_unslash() or similar

WARNING69
WordPress.Security.ValidatedSanitizedInput.InputNotSanitized

Detected usage of a non-sanitized input variable: $_GET[$data['id'] . '_' . 'device']

WARNING32
Internal.NoCodeFound

No PHP code was found in this file and short open tags are not allowed by this install of PHP. This file may be using short open tags but PHP does not allow them.

ERROR24
WordPress.Security.EscapeOutput.UnsafePrintingFunction

All output should be run through an escaping function (like esc_html_e() or esc_attr_e()), found '_e'.

WARNING18
WordPress.DB.SlowDBQuery.slow_db_query_meta_key

Detected usage of meta_key, possible slow query.

WARNING18
WordPress.Security.ValidatedSanitizedInput.InputNotValidated

Detected usage of a possibly undefined superglobal array index: $_GET[$data['id'] . '_' . 'device']. Check that the array index exists before using it.

ERROR13
WordPress.DB.PreparedSQL.NotPrepared

Use placeholders and $wpdb->prepare(); found $exact_query

WARNING11
WordPress.DB.DirectDatabaseQuery.DirectQuery

Use of a direct database call is discouraged.

WARNING11
WordPress.DB.DirectDatabaseQuery.NoCaching

Direct database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().

ERROR11
WordPress.WP.AlternativeFunctions.rand_rand

rand() is discouraged. Use the far less predictable wp_rand() instead.

WARNING9
WordPress.Security.NonceVerification.Missing

Processing form data without nonce verification.

WARNING9
WordPress.WP.EnqueuedResourceParameters.MissingVersion

Resource version not set in call to wp_enqueue_script(). This means new versions of the script may not always be loaded due to browser caching.

ERROR7
PluginCheck.Security.DirectDB.UnescapedDBParameter

Unescaped parameter $query used in $wpdb->get_row()\n$query assigned unsafely at line 5078.

WARNING7
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFound

Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "formatted_woocommerce_price".

WARNING6
WordPress.DB.PreparedSQL.InterpolatedNotPrepared

Use placeholders and $wpdb->prepare(); found interpolated variable $andor_op at "(($wpdb->posts.post_title $like_op %s) $andor_op ($wpdb->posts.post_excerpt $like_op %s) $andor_op ($wpdb->posts.post_content $like_op %s))"

WARNING5
WordPress.PHP.DevelopmentFunctions.error_log_error_log

error_log() found. Debug code should not normally be used in production.

WARNING5
WordPress.WP.EnqueuedResourceParameters.NotInFooter

In footer ($in_footer) is not set explicitly wp_enqueue_script; It is recommended to load scripts in the footer. Please set this value to `true` to load it in the footer, or explicitly `false` if it should be loaded in the header.

WARNING4
Generic.PHP.DisallowShortOpenTag.PossibleFound

Possible use of short open tags detected; found: <? echo ucwords($device); ?> devices in th...

ERROR4
WordPress.DateTime.RestrictedFunctions.date_date

date() is affected by runtime timezone changes which can cause date/time to be incorrectly displayed. Use gmdate() instead.

WARNING4
WordPress.Security.SafeRedirect.wp_redirect_wp_redirect

wp_redirect() found. Using wp_safe_redirect(), along with the "allowed_redirect_hosts" filter if needed, can help avoid any chances of malicious redirects within code. It is also important to remember to call exit() after a redirect so that no other unwanted code is executed.

Latest Snapshot

Findings

3,408

Errors

1,361

Warnings

2,047

Score History

First score snapshot

First scan completed Jun 20, 2026

v5.0.5 · Plugin Check 2.0.0 · Model 2026.06-mvp-static-v2

Jun 20, 2026

v5.0.5

23

Latest

Findings
3,408
Errors
1,361
Warnings
2,047
Plugin Check
2.0.0
Model
2026.06-mvp-static-v2

Related Plugins