Our X3M Tables plugin for WordPress offers a new intuitive approach to managing data in tables and displaying it on WP posts or pages. Powerful features offered for free make X3M Tables plugin a top choice among the table management options. Among the top features available are unlimited tables, professional table management with support for big data tables, table header setup, sticky first row or sticky first column, columns sorting, instant table search, set display table rows limit and pagination, display table data based on filters, mobile responsive, display individual table cell data as text inside your content, import/export options to CSV/JSON files, automatic table updates from external files using WP cron with private cron setup, export API making it easy for other X3M Tables installations to update their tables from a central table you update, table color display settings, cell merge and much more.

Table Example

×
NameGenderDate of BirthAddress
John SmithMaleFebruary 01, 197024 Broadway, New York, US
Jane SmithFemaleJuly 15, 1975365 First Av, New York, US
John DoeMaleSeptember 12, 196590200, Beverly Hills California, US
Jane DoeFemaleDecember 24, 196812 Bay Bridge, Miami Florida, US
Mathew QMaleJanuary 20, 198012th Street, Washington DC, US
Miriam QFemaleJune 11, 19843 Ghirardelli Square, San Francisco, CA, US

Table Shortcodes

Shortcode
1. This shortcode displays table id 1: 

[x3m-tables id="1"]

2. This shortcode displays table id 1, only columns A and B: 

[x3m-tables id="1" display-columns="A, B"]

3. This shortcode displays table id 1, only rows 1 and 2: 

[x3m-tables id="1" display-rows="1, 2"]

4. This shortcode displays table id 1, only rows with data containing the word "name": 

[x3m-tables id="1" filter-keyword="name" filter-type="include"]

5. This shortcode displays table id 1, excluding rows with data containing the word "name": 

[x3m-tables id="1" filter-keyword="name" filter-type="exclude"]

6. This shortcode displays table id 1, only rows containing the word "name" in column A: 

[x3m-tables id="1" filter-keyword="name" filter-type="include" filter-column="A"]

7. This shortcode displays table id 1, with maximum 10 rows displayed; if more rows in the table, it will include pagination at bottom of the table: 

[x3m-tables id="1" max-rows="10"]

8. This shortcode outputs data from table id 1, cell B2: 

[x3m-tables-cell id="1" cell="B2"]
The shortcode can be used to display the table with ID 1. Both the table ID and table shortcode is displayed inside table edit and also in the table listings. This shortcode is the most basic shortcode option for displaying row table data – table customizations can be done from inside each table editing section.

For more shortcode settings like applying data filters check below documentation.

Table Documentation

Here are the shortcode option settings available for tables:

Shortcode Settings Details
id=”1″ Use this setting inside the table shortcode to display data from table ID 1. Change the ID value to the table desired to display.
display-columns=”A, B” Use this setting inside the table shortcode to only display columns A and B data. You may also set ranges like display-columns=”A-C” which will display only columns A, B and C.
display-rows=”1, 2″ Use this setting inside the table shortcode to only display rows 1 and 2 data. You may also set ranges like display-columns=”1-3″ which will display only rows 1, 2 and 3.
filter-keyword=”name” Use this setting inside the table shortcode to only display rows which include the keyword “name” inside its data. This filter is used in conjunction with next shortcode settings:
filter-type=”include” Use this setting inside the table shortcode only in conjunction with filter-keyword=”name” option. Available options for filter type are “include” which will look for the keyword filtered inside data to be included anywhere in the data range, “exact” which will look to match a cell data entirely with the keyword filtered, “exclude” which will look for the keyword filtered inside data range to exclude the row from displaying.
filter-column=”A” Use this setting inside the table shortcode only in conjunction with filter-keyword=”name” option. It is used to set the data range to look for the keyword filter – in our example it will look for data in column A.
max-rows=”10″ Use this setting inside the table shortcode to display only 10 rows inside the table. If more data rows are available for display, a pagination will be included at the bottom of the table, displaying 10 rows on each table page.

Cell Merge Documentation

Inside individual tables edit page, you can merge cell in a row or column, based on your requirements:

Shortcode Settings Details
[ merge-left-cell] Use this shortcode inside a table cell to make that specific cell merge to the cell to its left.
[ merge-top-cell] Use this shortcode inside a table cell to make that specific cell merge to the cell sitting top of it.

Individual Table Cell Data Documentation

Individual cell data can be displayed inside WP posts or pages with the use of shortcode. Make sure to use the x3m-tables-cell shortcode:

Shortcode Settings Details
cell=”B2″ Use this setting inside the x3m-tables-cell shortcode to display data from cell “B2” – column B, row 2.

Tables Plugin Options & Settings

The plugin comes with a series of options and settings available in the X3M Tables plugin Dashboard:

Tables section offers an overview over the available tables, with quick edit/duplicate/delete options, as well the individual shortcodes for each table. Bulk Delete is also available, with a checkbox selection included next to each table ID.

Import section offers the option to import tables. The table data can be imported from new files uploaded/dragged to the plugin field or by accessing it from an external source using an URL. Table data import can be processed from 2 main file types: CSV or JSON – so make sure you use only these two file types for import. The data can be imported to a new table which will be created or it can be imported to an existing table, overwriting its existing data (updating it).

Further to these options, the Import section also offers an “Automatic Table Updates” feature, which lets the admin to select the table to be updated, the source file format that will be accessed for updated (CSV or JSON), source URL (external source hosting the data file) and update frequency (with update options from Every Hour to Every Year). Saving these details will set an automatic update schedule listed in the “Active Automatic Updates” area. Here the admin can delete or edit any of the active updates set.

Export section offers the option to export tables. The table data can be exported to file formats like CSV or JSON. Several export settings as well as bulk export for more tables are available.

Settings section of the plugin offers quick access to some basic CSS settings for the tables (table header color, text color, data row background colors, table behaviour and border width, features to be enabled/disabled by default to all new tables. Legacy styling option is applied to all tables if enabled or disabled, with legacy mode using a reduced table font size as well as making the table header text UPPERCASE.

There is also an “Import/Export Settings” area which can be used to permit remote table data export requests. This means someone with the correct export link can request data for a table export. An example use of this feature is to allow the X3M Tables plugin installed on other WordPress websites to get updated data from a main site where the admin keeps the data updated. To use this option, the admin must enable the feature and set an export token (8 characters which should include lower and upper case letters, numbers).

The remote access export link looks like this:

yoursite.com/?export-table&id=1&type=csv&token=ABCd1234

where yoursite.com is your website domain/root of WP installation, id=1 sets the id of the table to be exported, type=csv or type=json sets the file format exported, token=ABCd1234 uses the token set in the settings page. Without the use of the correct token/key, the data will not be available for exported.

Individual Tables Plugin Options & Settings

Each individual table set in the plugin comes with its own series of options and settings. Some of the options are linked to the plugin settings, with features enabled by default for new table creations. In any case, all of the settings can be edited on a case by case basis for every table.

This way, each table can have setting for:

Set First Row as Header – make the first row in the table display as header, with custom background color, bolded font (and uppercase font when legacy option enabled)
first row header
Set Last Row as Header – similar to first row as header, only that it applies same features to last row
last row header
Show Table Name – this activates the display of the table name at the top of the table
display table title
Enable Column Sorting – this activates the data sorting by column; click on the table header to rearrange the table row alphabetically in ascending or descending order based on the data in that column

Check Example Table – click on header cells

Enable Table Search – this activates a search field displayed at the top-right corner of the table; will allow users to type a word and the table will return only rows with that searched expression

Check Example Table – type in search field

Enable Vertical Borders – this activates the display of vertical borders in the table, with styling set in plugin settings

Check Example Table – view the 1 px white vertical border splitting the columns

Enable Horizontal Borders – this activates the display of horizontal borders in the table, with styling set in plugin settings

Check Example Table – view the 1 px white horizontal border splitting the rows

Fixed Row Header – this activates the first row of the table to sticky; when scrolling through long tables, the first row/header will always be displayed on top of table, remaining in a sticky position

Scroll down the table below for example:

NameGenderDate of BirthAddress
John SmithMaleFebruary 01, 197024 Broadway, New York, US
Jane SmithFemaleJuly 15, 1975365 First Av, New York, US
John DoeMaleSeptember 12, 196590200, Beverly Hills California, US
Jane DoeFemaleDecember 24, 196812 Bay Bridge, Miami Florida, US
Mathew QMaleJanuary 20, 198012th Street, Washington DC, US
Miriam QFemaleJune 11, 19843 Ghirardelli Square, San Francisco, CA, US
Fixed Column Header – this activates the first column of the table to sticky; when horizontally scrolling through tables with many columns, the first column will always be displayed on top of table, remaining in a sticky position

Scroll right the table below for example:

NameGenderExtraExtra 2Extra 3Extra 4Extra 5
John SmithMaleLorem ipsum dolor sit amet, consecteturadipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.
Jane SmithFemaleLorem ipsum dolor sit amet, consectetur adipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.Lorem ipsum dolor sit amet, consecteturadipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.
John DoeMaleLorem ipsum dolor sit amet, consectetur adipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.Lorem ipsum dolor sit amet, consecteturadipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.
Jane DoeFemaleLorem ipsum dolor sit amet, consectetur adipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.Lorem ipsum dolor sit amet, consecteturadipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.
Mathew QMaleLorem ipsum dolor sit amet, consectetur adipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.Lorem ipsum dolor sit amet, consecteturadipiscing elit. Integer bibendum accumsan urna, at viverra ante varius bibendum.
Extra Individual Table Options

  • table data edit – admin can add new columns and rows, delete columns or rows, hide/show them as needed
  • large data sets management – when dealing with tables having over 20 columns or rows, the large data set management activates to display in edit mode only a range of 20 rows x20 columns; this makes it easy to work with large data sets without the risk of the website/browser to freeze; settings can be decreased to 10 rows/columns or increased to 50 rows/columns
  • drag & drop – this option enables the admin to drag columns or rows in the table and rearrange the order of the data; can be used as well when inserting new row or column and bringing it to the desired position in the table