How to Export Only Selected Rows from a WordPress Table

Updated July 2026 • 6 min read • By Fahad Murtaza • By Fahad Murtaza

TableCrafter table builder, connect Gravity Forms, Google Sheets, Airtable, CSV, or JSON data sources
TableCrafter table builder, connect Gravity Forms, Google Sheets, Airtable, CSV, or JSON data sources

Most WordPress table plugins export everything or nothing, which is a problem when you only need to share a filtered subset of your data with a client, accountant, or team member. TableCrafter's bulk export system lets you check specific rows and download just those records as a CSV, Excel spreadsheet, or PDF, without touching the rest of your dataset. WordPress powers 43% of all websites globally (W3Techs, July 2026), and TableCrafter bridges the gap between the data you collect and the tables your users need to see, no custom PHP, no dashboard access required for viewers. The free version on WordPress.org supports CSV, JSON, Google Sheets, and Excel. Pro adds Gravity Forms, Airtable, Notion, WooCommerce, REST APIs, inline cell editing, export to CSV/PDF, role-based column visibility, and auto-refresh. Every table embeds on any page with a [tablecrafter] shortcode or the native Gutenberg block. Elementor is the most popular WordPress page builder, active on over 12 million sites (Elementor, 2025).

Why Selective Row Export Matters?

Bulk exports of entire datasets create several practical problems: file sizes balloon, sensitive records get exposed to the wrong recipient, and downstream tools like Excel or accounting software end up cluttered with irrelevant rows that have to be manually deleted. In a trucking load-tracking context, for example, you might want to export only the loads assigned to a specific driver this month, not every load in the database.

TableCrafter solves this at two levels. First, you can use column filters to narrow the visible rows, then export everything that passes the filter. Second, when you need non-contiguous or hand-picked records, you can check individual checkboxes and export only those. Both workflows are available on the same frontend table, and neither requires touching wp-admin or writing a query.

Tier note: Selective row export (CSV, Excel, PDF) is a Pro feature. The Free tier supports read-only table display with basic search and pagination but does not include export or bulk actions.

How Do I Set Up Your Table for Export?

Before rows can be selected and exported, the table needs bulk actions enabled in its configuration. Navigate to TableCrafter → Tables in your WordPress admin, open the table you want to work with, and find the Bulk Actions section in the table builder.

Enable the Bulk Export action. You will also see options for bulk delete and bulk column-fill, enable whichever combination your users need. Once bulk actions are turned on, a checkbox column appears automatically in the leftmost position of the frontend table. Users do not need to add it manually.

While you are in the table builder, review your Export Columns setting. By default, TableCrafter exports every visible column. If you want to exclude certain columns from exports (for example, internal ID fields or columns containing sensitive data), uncheck them in the export configuration. This setting applies to all export formats and to both filtered and selection-based exports.

Shortcode tip: Any of the three supported shortcodes, [tablecrafter id="X"], [tablecrafter id="X"], or [tablecrafter id="X"], render the same table with the same bulk action controls. The shortcode variant does not affect export behavior.

How Do Selecting Rows and Running the Export Work?

On the frontend table page, each row displays a checkbox on the left. To select rows for export:

  1. Check the box next to each row you want to include. You can select rows across multiple pages, TableCrafter tracks selections even when you paginate to the next page.
  2. To select all rows on the current page at once, use the checkbox in the column header. This selects every visible row on that page only.
  3. Once you have your selection, open the Bulk Actions dropdown above or below the table and choose your export format: Export CSV, Export Excel, or Export PDF.
  4. Click Apply. The browser will prompt a file download containing only the rows you checked.

The export request goes to wp-admin/admin-ajax.php with the selected entry IDs, the table ID, and a nonce token. TableCrafter validates the nonce and checks the current user's capabilities before generating the file, unauthenticated users and users without permission for the table cannot trigger an export even if they craft a direct AJAX request.

Cross-page selections: If you select rows on page 1, navigate to page 2, select more rows there, and then run Export, TableCrafter includes all selected rows from both pages in the output file. Selections are held in memory client-side until you clear them or reload the page.

How Does Combining Filters with Export Work?

Selective row export and column filtering work together. A common pattern is to filter first to isolate a logical group, then either export all filtered results or hand-pick a subset from within the filtered view.

TableCrafter's Pro advanced filters support text match, date range, numeric comparison, multi-select dropdown, and lookup field filters. When you apply a filter, only matching rows are shown and only matching rows appear in the checkbox list. If you then use the header checkbox to "select all," it selects all visible filtered rows, not all rows in the database.

To export the entire filtered result set without checking boxes manually, select all rows via the header checkbox and run the bulk export. For a dataset of 10,000 entries filtered down to 47 matching rows, you get a 47-row export file immediately.

[tablecrafter id="12" filter_col="status" filter_val="pending"]

The shortcode above pre-applies a filter at load time (showing only rows where the status column equals "pending"). Users landing on this page see a pre-filtered table and can immediately select rows and export without needing to configure the filter themselves. This is useful for role-scoped dashboards where each user should only see and export their own subset of data.

How Does Role-Based Export Permissions Work?

Not every user on your WordPress site should be able to export data. TableCrafter's Pro role-based permission system controls export access at the table level.

In the table builder, the Permissions tab lets you specify which WordPress roles can view the table, which can edit rows inline, and which can perform bulk actions including export. For example, you might allow subscriber and contributor roles to view the table but restrict export to editor and administrator only.

You can also control export at the column level. If a column contains information that some roles should see on screen but should not appear in downloaded files, exclude it from the export column list for that role. This lets you build a single table that serves multiple audiences with different data access levels.

Driver example: In a load-tracking setup, driver users can view their own rows but cannot export. Dispatchers can export CSV for their assigned drivers. Administrators can export everything. All three roles use the same shortcode on the same page, permissions determine what each sees and can do.

How Does Export Format Reference Work?

TableCrafter Pro generates three export formats from selected rows:

All three formats include the column headers from your table configuration and respect the export column exclusions you set in the builder. Status badge values (for example, "Active," "Pending," "Closed") export as their plain text labels, not as color codes. Data bar columns export as their underlying numeric values.

Large selections: For very large selections (hundreds or thousands of rows), CSV is the most performant format because it requires no layout calculation. Excel and PDF generation involve additional server-side processing time. If users report slow exports, consider adding a row limit guidance note to the table page or splitting exports into smaller batches by date range.

Frequently Asked Questions

How Does Why Selective Row Export Matters Work?

Bulk exports of entire datasets create several practical problems: file sizes balloon, sensitive records get exposed to the wrong recipient, and downstream tools like Excel or accounting software end up cluttered with irrelevant rows that have to be manually deleted. In a trucking load-tracking context, for example, you might want to export only the loads assigned to a specific driver this month —

What Is TableCrafter?

TableCrafter is a WordPress plugin that turns data from Gravity Forms, Google Sheets, Airtable, Notion, REST APIs, CSV files, and WooCommerce into interactive, sortable, filterable frontend tables. Embed any table on any WordPress page with the [tablecrafter] shortcode or the native Gutenberg block. No PHP or custom development required. The free version supports CSV, JSON, Google Sheets, and Excel. Pro adds Gravity Forms, Airtable, Notion, WooCommerce, REST APIs, inline cell editing, export to CSV and PDF, role-based column visibility, and auto-refresh.

Does this require PHP or developer skills?

No. TableCrafter is configured entirely through the WordPress admin interface. You choose your data source, map fields to columns, and set display preferences using point-and-click controls. Embedding uses the [tablecrafter] shortcode or the native Gutenberg block.

Is the free version sufficient or do I need Pro?

The free plugin on WordPress.org supports CSV, JSON, Google Sheets, and Excel sources with unlimited tables, rows, and columns. Pro adds Gravity Forms, Airtable, Notion, WooCommerce, REST API sources, inline cell editing, bulk row actions, export to CSV and PDF, role-based column visibility, and auto-refresh every N seconds.

Ready to try it?

TableCrafter is free on WordPress.org. Pro unlocks inline editing, role-based permissions, and advanced data sources.