One of the best ways to organize a large amount of data on your WordPress site is with a simple table. Unfortunately, WordPress doesn’t offer table support as a native functionality. Today we want to dive into a very popular WordPress plugin called TablePress, and show you how it can help you create tables in WordPress with ease and without any coding knowledge. It currently boasts over 700,000 active installs and a jaw-dropping 5-star rating on WordPress.org, even after 2,900+ reviews!
Clearly, it’s an excellent, well-coded plugin that has resonated well with the WordPress community and is an ideal solution for creating tables in WordPress.
TablePress WordPress Plugin
Before we get into the nitty-gritty of the post and learn how to add tables to your WordPress posts and pages, let’s take a quick look at some of the key features TablePress has to offer that set it head and shoulders above the competition.
- Multiple import formats: With TablePress, you can not only create tables from scratch by entering in data into a WordPress table editor, but you can also import data from multiple formats such as Excel, CSV, HTML, and JSON files. Several competitor plugins in this niche only offer one input format and it’s a great convenience to have various ones at your fingertips.
- Export your tables: If you’ve created a table from within the TablePress interface, you can easily export your table in a CSV, HTML, or JSON file. Very handy way to keep your data if you ever migrate to a new WordPress installation or even to a new CMS.
- Extend your capabilities: The developer of TablePress, Tobias Bäthge, has developed several add-on functions for TablePress that greatly expand its abilities. These extensions build in support for things like making responsive tables, column filters, a save-to-PDF button for front-end users, etc.. All the extensions are freely available for download, but a few of the ones that were very time-consuming to code (labeled “premium”) recommend that you support the developer with a small donation when you download them.
How to Create Tables in WordPress with TablePress
Now that we’ve covered this plugin’s features, let’s dive into how to use TablePress to insert tables in WordPress.
Let’s start our tutorial by checking out how to create a table from scratch with TablePress’s very straightforward and intuitive interface.
After installing and activating the plugin in your dashboard, head over to WP Admin > TablePress. This page is the control center of the plugin. The process of creating, editing, and customizing tables will all start here. The first time you visit the page, you’ll find a welcome message with FAQ, documentation, and support links as well as a list of your tables (will be empty). To start, click the “Add New” button on the page’s navigation.
On the Add New page, you will be prompted to key in a name for your table, enter a description (optional), and specify the dimensions of your table (number of rows & columns). Once you’ve done that, click the “Add Table” button. As an example, we’ll do a table of fictional cake bakeries.
On the next page, your table will be assigned an ID and a shortcode you’ll use to add the table into your posts and pages. You’ll also start filling out the individual cells of your new table. The interface you use to fill out the table is simple and uncomplicated and is somewhat akin to your average Excel spreadsheet. Here’s what it looks like when your table is all filled out.
Further down on the same page you can play around with some basic options. You can insert links/images in your cells, duplicate/delete selected rows and columns, add CSS classes for styling purposes, combine cells, alternate color by row, enable sorting/pagination, and more.
The plugin automatically assumes that your first row is the header row for the table, but you do have the option to prevent that and even change the last row to a table footer.
There is also an “advanced editor” button that gives you a slightly more functional interface in which to key in your table’s data.
It’s quite time-consuming to use, though, since you have to click that button, then click the cell you want to edit in order to get access to the advanced editor — and you’ve got to repeat that for every single cell. In our opinion, it’s really not worth the trouble. But depending on the amount of data you are entering it could be useful.
Once you’re all done editing the table and have customized the options, hit the “Save Changes” button, then the “Preview” button at the bottom of the page to get a basic idea of what your table will look when inserted in a post or page.
We’ve found this preview to be quite a long way away from what your finished product will actually look like, in terms of styling. Since so much of the styling is dependent on your theme, the preview doesn’t really do justice to the final look (which is really much better than the clunky table you see in the screenshot below).
Now in a post or page, you can insert the table two different ways. The first is by copying and pasting the shortcode from earlier. For our example table, since it was the first one we created, the shortcode is [table id=1 /]. The shortcode format is very easy to remember.
The second way is to use the “Insert a Table from TablePress” button in the visual editor toolbar.
Here’s an example of what the final output will look like on a website running the default Twenty Seventeen theme. The styling isn’t bad by any means. Note the pagination and search options for website visitors.
If you’ve already got your data ready (such as an Excel sheet or Google Sheets document) and waiting to go in an external format, you can import it right into the TablePress plugin.
To import a table, navigate to WP Admin > TablePress > Import a Table. On this page, you’ll select your import source (direct upload, URL, file on the server, or manual input into a blank text area). My example data comes from a Google Sheets document which we downloaded to CSV format.
What’s really cool about this part, though, is that you can choose to use the imported data for either a completely new table, or as replacement/additional data for an existing table that you’ve already created. In this example, we are going to add a new table.
Once you click the “import table” button, you’ll be redirected to the exact same editing page as when you created your table from scratch. Except this time, the table name, description, and content have already been filled in. All that remains to do is customize the options down at the bottom.
Once again, use the assigned table shortcode (this time for the 2nd table it was [table id=2 /]) in a post/page and enjoy the result. Note that since all the data was the same as when we created the table from scratch, the output was also the exact same.
Like we discussed at the beginning of this post, the plugin also comes with a built-in option to export your tables. It’s an incredibly simple one-step process.
Navigate to WP Admin > TablePress > Export a Table. Here you can select which table(s) you’d like to export, and in what format (CSV, HTML, or JSON). If you use the CSV option as we have below, you can also set the CSV delimiter to a comma (,), semicolon (;), or tabulator (\t). If more than one table is exported at a time, a zip archive is mandatory.
Once you’ve selected the right table and export format, just hit the “download export file” button and get your data.
TablePress’s plugin options page is a pretty meager one. Although it offers an easy-to-use interface and lots of import/export options, the built-in customizability is pretty limited, as you can see below (although it can be extended somewhat with the add-ons).
To do any real styling customization, you’ll have to write custom CSS commands in the text area above. If you’re not code-savvy, don’t worry — the plugin developer has included some documentation on how to write basic CSS commands, such as changing the background colors of specific rows, highlighting certain cells, centering a table on a page, etc. You can also change a couple user options, such as the section of the admin menu that TablePress is displayed in, and the plugin language (20+ currently supported).
Final Thoughts on TablePress
Without a doubt, TablePress is definitely one of the most functional and straightforward table plugins on the market. It has a great many features, but it also falls short in a few areas. After my our experience with the plugin, here’s some pros and cons.
- Great styling out-of-the-box.
- Very straightforward interface; newbie-friendly.
- Multiple import formats: CSV, HTML, JSON, and Excel.
- Multiple export formats: CSV, HTML, JSON.
- Users can search the table for specific data strings.
- Tables can be paginated by specific numbers of rows.
- Lots of free plugin extensions available (it really shows that the developer has put a lot of thought and effort into making the plugin a great resource for the WordPress community).
- Advanced editor is time-consuming to use (requires a lot of clicks).
- Limited styling customization built-in.
- Not responsive out of the box, but you can utilize an extension to make this work.
- You have to enter the data manually or import it from a spreadsheet. If you want to create tables of data already stored on your website (e.g. blog posts, e-commerce products or a custom post type), then you might benefit from a dynamic WordPress table plugin such as Posts Table Pro.
Hopefully, this tutorial helped you gain a solid understanding of how to use all the functions that TablePress has to offer and how you can easily create tables in WordPress. If you have any questions or would like to have something cleared up, just comment below. Also, if you have any personal experience with TablePress (or any other plugin that builds table support into WordPress), feel free to share below in the comments.
- Easy setup and management in the MyKinsta dashboard
- 24/7 expert support
- The best Google Cloud Platform hardware and network, powered by Kubernetes for maximum scalability
- An enterprise-level Cloudflare integration for speed and security
- Global audience reach with up to 35 data centers and 275+ PoPs worldwide