Skip to content
Gravity Tables
All documentation

Troubleshooting

Troubleshooting

Common errors, fixes, debug mode, and performance tuning.

Common issues and how to diagnose them. If your specific issue isn’t here, email info@fahdmurtaza.com with a debug log attached.

Debug mode#

Append ?gt_debug=1 to any page URL while logged in as an admin. The plugin emits verbose diagnostic output for that page render only and writes a log entry to wp-content/uploads/gt-logs/.

View logs from Tables → System → Debug log.

To clear logs from the same screen, or programmatically:

gt_log_clear();

Logs auto-rotate daily and keep 7 days by default. Filter via gt_log_retention_days.

Common errors#

”Table not found”#

Cause: the id in your shortcode doesn’t match a saved table.

Fix: check Tables → All Tables for the actual ID. The ID is shown in the table’s URL.

”Failed to load entries”#

Cause: usually a Gravity Forms compatibility issue, often after an update.

Fix sequence:

  1. Confirm Gravity Forms is active and at version 2.5+
  2. Disable other plugins temporarily, retest
  3. Check the debug log for the underlying GF API error
  4. Re-save the table to flush its cache

”tb_show is not defined”#

Cause: WordPress’s Thickbox library wasn’t enqueued before the table rendered (some custom themes call our shortcode from a wp_localize_script callback that runs before WP decides which scripts to print).

Fix: v4.1.4 added an explicit add_thickbox() call inside the shortcode template render path. Update to 4.1.4 or later.

”jQuery is not defined”#

Cause: jQuery is loaded later than our admin script in some theme/plugin combinations.

Fix: v4.1.3 added a more robust dependency check. Update.

”Click to edit doesn’t save”#

Cause: the AJAX handler is hitting a 403 (capability check) or 400 (validation).

Fix: open browser dev tools → Network → click a cell, attempt edit → inspect the failing response.

  • 403 → user lacks the capability set in edit_permissions. Check role config.
  • 400 → Gravity Forms validation rejected the value. The error message in the response body shows the specific rule that failed.

”Export downloads an empty CSV”#

Cause: the active filter narrowed the result set to zero rows.

Fix: clear the filter, re-export. Or check the filter state, the export respects current filter exactly.

Performance tuning#

Tables with >5,000 rows#

Enable server-side pagination (default) and queue-based exports:

[gravity_table id="42" per_page="50" export_queue_threshold="2000"]

Auto-refresh on busy pages#

Auto-refresh causes a database query on the configured interval. On heavily-trafficked pages, dial the interval up:

[gravity_table id="42" auto_refresh="true" refresh_interval="120"]

(2 minutes instead of the 60-second default.)

Large entry payloads#

If individual entries are huge (long-form fields, complex repeaters), consider:

  • Using include to limit displayed columns
  • Lazy-loading the long fields behind a “show more” link via the gt_render_cell filter
  • Storing the heavy content in a separate post and referencing by ID

Database query limits#

The query layer uses GFAPI::get_entries(), which is tuned by Gravity Forms. For tables on shared hosting with PHP memory ≤256MB, cap per_page at 25 and ensure wp-config.php has WP_MEMORY_LIMIT set appropriately.

nginx export directory#

The plugin’s .htaccess in wp-content/uploads/gt-exports/ denies direct access on Apache. On nginx, add to your server config:

location ~* /wp-content/uploads/gt-exports/ {
    return 403;
}

Then route export downloads through the plugin’s authenticated endpoint at /wp-json/gt/v1/export-download/{token} (handled automatically by the export buttons).

Compatibility matrix#

ComponentRequiredTested up to
WordPress5.0+6.9
PHP8.0+8.3
Gravity Forms2.5+2.9.x
MySQL / MariaDB5.7+ / 10.3+8.0 / 11.x
BrowsersChrome 88+ / Firefox 78+ / Safari 14+latest

When to email support#

If you’ve reached this page and your issue isn’t here:

  1. Append ?gt_debug=1 to the failing page and reload
  2. Go to Tables → System → Debug log → Download CSV
  3. Email the log + a description to info@fahdmurtaza.com

Reply within 24 hours, often the same day.