Table Tools consists of a block of buttons that provides additional features for the tables: export to PDF, export to CSV, export to Excel, print view, toggle for column visibility for front-end users, etc. These functionalities are based on a 3rd party HTML5 library. There are some limitations in this library we will emphasize for your awareness:
- For tables with server-side processing, only the visible rows will be exported to any format. If you want the entire table to be exported (or copied to a clipboard), you need to choose the “Show All” feature in the “show … entries” block, and then do the export:
- Generated PDF, XLS, CSV are not customizable. Unfortunately, the library allows very little “fine-tuning” of the generated files, so font, size, and other properties cannot be changed (but the title can – see below).
- Conditional formatting is not reflected in any of generated export files.
- Other front-end extensions cannot be combined with Table Tools. If you have row grouping enabled for the table, or there are some customizations you did yourself, they won’t be reflected in the generated Excel, CSV or PDF document, nor in the clipboard.
- When you export tables with the wpDataTables plugin, please note that you can export values, but not formulas. WpDataTables doesn’t support exporting formulas, so a Formula column will be exported only with values; and any calculations of Average, MIN, MAX, and Total will not be exported at all.
- Exporting images is not possible at the moment.
- You can’t export columns that are hidden – they will not be visible in any exporting or printing tool.
The Copy button triggers the “copy to clipboard” function, so it copies all the rows that exist in the page to your OS clipboard, and you can later paste it into some other software. Once you click it, you get a popup with a notification on how many rows were copied to the clipboard, e.g., “Copied 20 rows to the clipboard”. All the rows are copied to the clipboard, including the tab-separated headings. You can then paste it to MS Excel for example. For tables with server-side processing enabled, only the visible columns are copied.
The “PDF” button generates a new PDF document from the table and calls the browser’s “Save as …” dialog so you can choose a path for your file. It is a very basic PDF document, with the page title, and the table with simple formatting:
For tables with server-side processing enabled, PDF will contain only the visible rows.
The “CSV” button generates a new file that can be opened in a browser or third party spreadsheet editing software, like Libre office. If it is opened in a browser, the file will be in the “Comma-Separated-Values” format out of the table and calls the browser’s “Save as …” dialog so you can choose a path for your file. All the values from your table will be exported including the headers. The cells will be separated by commas, and rows will be separated by line breaks:
For tables with server-side processing enabled, the CSV file will contain only the visible rows.
The “Print” button uses jQuery functionality to hide all the elements on the page except for the table. The results may look weird for some themes, but it will work correctly for most, and make the view of the page “printable”.
The “Excel” button generates an Excel file with the visible table data that is not customizable. If you want to generate customized Excel or Word files with the table content, check out the Report Builder addon.
If this button is turned on for the table, your front-end table users will be able to toggle the visibility of the table’s columns. Please note that it also includes the columns that you’ve hidden from the back-end. You can un-select the button to hide the column and select it back to show it.
You can configure which buttons will be included in the Table Tools block separately for each table. To enable/disable the Table Tools block you can toggle on or off the Table Tools switch in the table configuration.
If the Table Tools are enabled, you can open the dropdown with buttons list to define which buttons to include.
The default export filename will be derived from the table title. To change the export filename and the displayed title, add an ‘export_file_name’ attribute to the table shortcode. For example, if you define the shortcode like:
[wpdatatable id=1 export_file_name='My Export File']
The filenames of exported files will be: “My Export File.pdf”, “My Export File.xls”, etc.
Check out also a wpDataTables addon which allows creating sophisticated DOCX and XLSX documents based on wpDataTable data – Report Builder.
- Creating editable tables and filling the table data manually
- Creating non-editable tables from Excel files
- Creating non-editable tables from Google Spreadsheets
- Responsive design
- Conditional formatting
- Sorting tables
- Per-column filtering
- Pre-filter tables through URL
- Row grouping
- Using Placeholders – Adjusting MySQL queries dynamically based on shortcode attributes
- Calculating totals (sum row)
- Table layout and word wrap
- WPBakery Page Builder