Posts Table Pro

4.0.8 — 22 October, 2026

  • Fix— The alternating rows setting was ignored when using the Default design template in the new tables.
  • Fix— Search now includes custom fields and taxonomies configured in saved tables or plugin settings.
  • Fix— Shortcode filter settings now override saved filter settings correctly in the new tables.
  • Fix— Search now finds related post titles in ACF Relationship and Post Object fields when configured to return IDs.
  • Fix— Prevent legacy tables from interfering with Document Library Pro tables on the same page.
  • Dev— Updated internal libraries.

4.0.7 — 24 September, 2026

  • Tweak— Improved handling of long filter names in the new tables, including tooltips for selected values.
  • Tweak— Use the effective PHP memory limit for index batch checks.
  • Tweak— Do not flush the persistent object cache during indexing.
  • Fix— Click-to-filter would not enable on the new table if it didn't have a visible associated filter, and would not always function correclty on the legacy tables.
  • Fix— Design font sizes could disappear after saving the settings.
  • Fix— Apply configured link and button font sizes in new tables while preserving defaults when unset.
  • Fix— FacetWP integration now reloads the new tables correctly after filtering and keeps the table's own filters disabled.
  • Fix— Updated SearchWP integration to work with the new tables.
  • Fix— The filters shortcode attribute would not work when set to false in the new tables.
  • Fix— Restore custom post_limit values and show_footer support for the new tables.
  • Fix— Display the search box in its configured position above, below, or on both sides of the new tables.
  • Fix— The filter dropdown could overlap the reset icon on the new tables.
  • Fix— Ensure video embeds are responsive inside table columns and responsive detail views.
  • Fix— Taxonomy filter counts could show unrelated posts when no results matched the current query.
  • Fix— Improved recovery after indexing errors and timeouts, including scheduling retries across multiple items and batches.
  • Dev— Updated internal libraries.

4.0.6 — 28 August, 2026

  • Fix— Improved search index reliability when indexed post types change.
  • Fix— Numeric taxonomy slugs now work in shortcode filters.
  • Fix— Resetting filters now restores the correct pagination when lazy load is enabled.
  • Dev— Updated internal libraries and tested up to WordPress 7.1.

4.0.5 — 13 August, 2026

  • Tweak— Improve infinite-scroll announcements so the loaded message is not shown when the container cannot scroll.
  • Fix— Decode HTML entities consistently across cell content, filters, controls, labels, and responsive table output.
  • Fix— Numeric taxonomy column sorting.
  • Dev— Updated internal libraries.

4.0.4 — 21 July, 2026

  • Tweak— Improved hierarchical multiselect filters to include child terms and keep parent and child options grouped together.
  • Fix— Parent taxonomy terms would not include posts from their children on the new tables.
  • Dev— Updated internal libraries.

4.0.3 — 1 July, 2026

  • Tweak— Added Site Health diagnostics export for incomplete index rows.
  • Fix— Setting rows per page to -1 or above 500 was not supported in the new table library.
  • Fix— Date column types are now preserved correctly when applying backwards compatibility handling.
  • Fix— Attachment MIME type filters now work correctly with indexed queries and legacy query fallbacks.
  • Fix— Improved full index rebuild cleanup, retry handling, and recovery for skipped or failed index rows.
  • Fix— ACF save events now only trigger index updates for valid post IDs.
  • Fix— Restricted extra REST request data passed into table view arguments.
  • Fix— Issue with the row virtualization on Safari.
  • Fix— Increased iOS support down to 13+.
  • Fix— Reset the columns dropdown after adding a column in the table builder.
  • Dev— Updated internal libraries.

4.0.2 — 18 June, 2026

  • Fix— Improved index status performance on sites with large search, filter, and sort index tables.
  • Fix— Multi-value taxonomy and relation handling in the new table library.
  • Fix— Filter counts are now only loaded automatically when filter counts are enabled.
  • Fix— Improved column width calculation and responsive wrapping in the new table library.
  • Dev— Updated internal libraries.

4.0.1 — 3 June, 2026

  • Tweak— Added a notice to inform existing installs about the new table library and how to enable it.
  • Tweak— Optimized the table control layout when the posts totals and only one other control was visible.
  • Tweak— Minor design adjustments to the Default and Minimal theme for the new table library.
  • Fix— Date sorting was not working for all supported formats in the new tables.
  • Fix— Indexing issues related to missing custom post types and custom taxonomies.
  • Fix— Limited filter options to the current table query.
  • Fix— Updated the table theme preview images to reflect the new table library.
  • Fix— Defaulting to legacy mode for existing installs required confirmation and would result in the new tables being visible until this was confirmed.
  • Fix— The infinite scroll setting was visible in legacy mode.
  • Fix— The last column in the table could cutoff when resizing the viewport under certain conditions.
  • Fix— The sort indicator icon could overlap the text in the header columns.
  • Fix— Existing filter and search settings were cleared when disabling legacy mode.
  • Fix— Filter dropdown was placed too far from the trigger when logged out.
  • Fix— The per page selector dropdown rendered to the side on the first click.
  • Fix— The alternating rows design setting was not functioning properly.
  • Fix— The table bottom border was missing on some themes.
  • Fix— The default theme now correctly inherits the theme link and button colors.
  • Fix— Dropdown filter placeholder text was not visible in the dark theme.
  • Fix— Unsupported columns in the legacy table could show as sortable on the frontend.
  • Fix— PHP 8.4 deprecation notices for nullable types.
  • Dev— Added a filter to control adjacent page prefetching.
  • Dev— Updated internal libraries and tested up to WordPress 7.0.

4.0.0 — 20 May, 2026

  • New— Modern table library replaces jQuery datatables.
  • New— Legacy mode to preserve the existing jQuery datatables, enabled by default for existing installations.
  • New— Custom indexed tables for efficient lazy loaded search, filter and sort in the new table library.
  • New— Multi-column sorting.
  • New— Multi-select filters.
  • New— Ability to display filters inline as a dropdown from the column headings.
  • New— Active filters setting which shows currently active filters are displayed above the table.
  • New— Filter counts setting to display the number of matching posts next to each filter option.
  • New— Infinite scroll mode.
  • New— Unique URLs reflecting the current search, filter, sort, and pagination state of a table, allowing users to link directly to a specific table view.
  • Dev— Updated internal libraries and tested up to WordPress 6.9.4.

3.3.6 — 4 September, 2025

  • Tweak— Added new translations to the plugin.
  • Dev— Updated internal libraries and tested up to WordPress 6.8.2.

3.3.5 — 28 May, 2025

  • Tweak— Added ability to enable accent-insensitive search while lazy loading is disabled.
  • Fix— Date sorting not working under specific scenarios.
  • Fix— Adjusted regex for ACF field values.

3.3.4 — 14 May, 2025

  • Fix— Sorting not working when date_columns is provided in the shortcode without a column_type.
  • Tweak— Added a filter for the maximum size of cacheable data.

3.3.3 — 23 April, 2025

  • Fix— Sorting not working in some cases.
  • Fix— PHP 8.4 Deprecations.
  • Fix— Select2 styling.
  • Fix— Strings translations in WP 6.8.
  • Dev— Updated internal libraries and tested up to WordPress 6.8.

3.3.2 — 18 March, 2025

  • Fix— Sorting by "date" type custom field not working properly.
  • Fix— Sorting by custom field would show all posts if restricted to specific posts.
  • Fix— Category/Tag filters returning incorrect posts when combined with other selection criteria for the "posts" post type.
  • Fix— Unable to view more than 100 tables in the table builder ui.
  • Fix— Regex escaping in serialized array comparison for ACF field values.

3.3.1 — 18 February, 2025

  • Fix— Custom fields not sortable when lazy load is enabled.
  • Dev— Updated Barn2 libraries and dependencies.
  • Dev— Tested up to WordPress 6.7.2.

3.3.0 — 27 January, 2025

  • New— Added pre built design templates.
  • New— Added the ability to combine multiple columns into a single column.
  • New— Added numerical sorting.
  • New— Added the ability to set sticky columns headings.
  • New— Added the ability to hide the header row.
  • New— Display reset button on demand via a new shortcode parameter reset_button="true".
  • New— Added a "clear cache" button to the settings page.
  • Tweak— Updated the steps and fields on the wizard page when creating a new table.
  • Tweak— Modernized internal code and libraries.
  • Tweak— Hide all other admin notices on the wizard page.
  • Fix— Table builder crashes when clicking the advanced button.
  • Fix— The label of the "link" toggle button was incorrect.
  • Fix— The "Author" column did not display the "link" toggle button.
  • Fix— Settings saved notification not appearing on the settings page.
  • Fix— Table with child rows becomes fullwidth on search reset.
  • Fix— Sorting by ID fails when lazy load is disabled.
  • Fix— Minor UI issues.
  • Fix— PHP Error triggered when "Sort By > Other" is selected without column name.
  • Fix— "Posts Limit" setting hiding when lazy load is enabled.
  • Fix— Incorrect placement of the "Add Link" option.
  • Fix— "Filter" interface not automatically populating when creating a new table.
  • Dev— Updated Barn2 libraries and dependencies.

3.2.1 — 3 December, 2024

  • Fix— Translation compatibility issue with WordPress 6.7.
  • Dev— Updated Barn2 libraries and dependencies.
  • Dev— Tested up to WordPress 6.7.1.

3.2.0 — 19 September, 2024

  • New— Added advanced columns settings to the table builder.
  • Fix— Fixed cf: not working in shortcode if value has @.
  • Fix— Fixed search_on_click bug not working for default true value.
  • Dev— Added filter 'posts_table_data_column_terms' to filter a column terms.
  • Dev— Dequeued barn2-tip-tip script to fix tooltip bug on other barn2 plugins.
  • Dev— Fixed bug where wizard link was showing on other plugins.
  • Dev— Tested up to WordPress 6.6.2.

3.1.4 — 23 April, 2024

  • Fix— Fixed FacetWP sorting order when search facet is also active.
  • Fix— Fixed notice messages not appearing on the settings page.
  • Fix— Fixed undefined array key "filters" PHP warning message.
  • Fix— Fixed undefined array key "post_type" PHP warning message.
  • Tweak— Adjusted responsive hidden row not closing after reset.
  • Tweak— Removed the reset button option from the settings page.
  • Dev— Updated help links to use the Settings_Util::get_help_links function.
  • Dev— Tested up to WordPress 6.5.2.

3.1.3 — 26 February, 2024

  • Fix— Fixed bug of custom filter name showing a 1.
  • Fix— Fixed orders not being shown on the post type content list.
  • Fix— Fixed responsive hidden row not closing after reset.
  • Fix— Fixed PHP warning message for column setting input missing.
  • Fix— Fix individual orders filter now showing on the edit screen.
  • Tweak— Set default shop order status to any.
  • Tweak— Added WooCommerce order status to the orders status filter in the edit screen.
  • Dev— Tested up to WordPress 6.4.3.

3.1.2 — 30 January, 2024

  • Fix— Fixed lazy load option not being saved in edit table screen.
  • Fix— Fix bug on total filtered items.
  • Fix— Fixed table sort for acf fields with empty values.
  • Fix— Fixed ACF fields not showing when importing.
  • Tweak— Tables can now be called using the shortcode The posts table (ID:1) could not be found..
  • Tweak— Set minimum values for "Post limit" and "Posts per page" to -1.
  • Tweak— Updated the default wizard lazy load checkbox value to match the global settings.
  • Tweak— Prevent entering 0 for "Post limit" and "Posts per page".
  • Tweak— Removed unsupported "Formats" option from filters.
  • Tweak— Disabled the checkbox for empty taxonomy list in custom post types.
  • Tweak— Show only public post types.
  • Tweak— Removed caching option from edit table screen.
  • Tweak— Deleted automatic filter option.
  • Tweak— Cleared filter options by default on wizard steps.
  • Tweak— Allow cf shortcode argument to search for custom field values with spaces.
  • Tweak— Reset button automatically hides if search box and filters are inactive.
  • Tweak— Updated the search_box attribute to work with true or false values.
  • Tweak— Adjusted CSS of the wizard page to show in full screen.
  • Dev— Updated some input fields to number fields.
  • Dev— Set the default values for columns and date on the wizard page.
  • Dev— Added posts_table_search_placeholder filter hook.
  • Dev— Tested up to WordPress 6.4.2.

3.1.1 — 7 September, 2023

  • Fix— Fixed renaming filters on table builder that were not working.
  • Fix— Fixed MIME type not being set on table builder.
  • Fix— Fixed Safari tabindex bug that scrolled the page after clicking outside an option.
  • Fix— Fixed bug on table builder when selecting no post type.
  • Tweak— Added emptyFilter to language default translations.
  • Tweak— Added filter slug to the table builder custom filter options.
  • Tweak— Removed unnecessary messages from wizard page.
  • Dev— Check submenu existence to remove some php error messages.

3.1.0 — 31 August, 2023

  • New— Added pagination to the admin table list.
  • New— Added duplicate feature to the admin table list.
  • New— Added ACF and Easy Post Types and Fields custom fields to the columns options.
  • Fix— Fixed FacetWP returning all posts when choosing multiple post types.
  • Dev— Removed parse error from the admin settings page.
  • Dev— Added SECURITY.md file.
  • Dev— Updated Barn2 libraries and dependencies.
  • Dev— Updated to webpack-config 2.0.0.
  • Dev— Tested up to WordPress 6.3.1.

3.0.8 — 20 June, 2023

  • Fix— Plugin may prevent access to the REST Api in certain situations.
  • Fix— Unable to query posts by taxonomy terms when using custom post types.

3.0.7 — 31 May, 2023

  • Fix— Fixed plugin settings not being used.
  • Fix— Fixed button text not showing.
  • Fix— Fixed FacetWP pagination not working.
  • Tweak— Removed table generator wording.
  • Dev— Removed PHP warning message on plugin settings.
  • Dev— Tested up to WordPress 6.2.2.

3.0.6 — 28 April, 2023

  • Fix— Select specific posts wasn't filtering the data.
  • Tweak— Recalculate column widths when hidden tables become visible.

3.0.5 — 21 April, 2023

  • Fix— Custom fields content not displaying in tables when created via the generator.

3.0.4 — 4 April, 2023

  • Fix— Fixed a bug with custom filters not being displayed.
  • Dev— Tested up to WordPress 6.2.

3.0.3 — 28 March, 2023

  • Fix— Unable to activate license via the setup wizard.

3.0.2 — 22 March, 2023

  • Tweak— Updated internal libraries.

3.0.1 — 20 March, 2023

  • Fix— Assets not enqueued on the plugin settings page.

3.0.0 — 15 March, 2023

  • New— Added table generator.
  • Tweak— Updated settings page.
  • Tweak— Updated internal libraries.
  • Tweak— Updated language files.
  • Tweak— Added support for the Sort facet in the FacetWP integration.

2.5.2 — 16 December, 2022

  • Fix— Add the correct 'no posts' message to the FacetWP integration.
  • Fix— Some special characters were not allowed when selecting posts by custom field, or when using the search box.
  • Fix— When using the 'posts_table_language_defaults' filter, 'totalsSingle' and 'totalsPlural' were not correctly applied.
  • Tweak— Improve validation and escaping of table options.
  • Dev— Tested up to WordPress 6.1.
  • Dev— Updated DataTables to 1.13.1.
  • Dev— Replaced Git submodules with Composer packages.

2.5.1 — 5 October, 2022

  • New— Search filters now show only the relevant options based on table content when table is first loaded, after a text search, and after click to search (standard load only).
  • Fix— Support all UTF-8 characters when selecting posts by category, tag, term, post type, or excluding categories.
  • Fix— Support all UTF-8 characters in the search box, search_term option, and the search results page.
  • Fix— On table reset, the search filters were not reset correctly after performing a text search.
  • Fix— Conflict with search_term option when using standard load which could produce incorrect results.
  • Fix— Some non-Latin characters in column and filter headings were not displayed correctly, or removed altogether.
  • Tweak— Change minimum search term length to 2 characters in all scenarios (search results page, search_term option, lazy load, standard load).
  • Tweak— Automatically hide any columns and filters that don't apply to the selected post type.
  • Tweak— Support the % character in the widths option, and px units in the image_size option.
  • Tweak— Refactored click to search feature.
  • Tweak— Improve display of search filters in Safari.
  • Dev— Ensure posts_table_language_defaults hook filters all available language strings.
  • Dev— Added filters before post link is added for ID, title and image columns - posts_tabledata<column>_before_link.
  • Dev— Deprecated hook posts_table_max_posts_limit.
  • Dev— Support arrays or strings for all list based options in ptp_get_posts_table and ptp_the_posts_table.
  • Dev— Tested up to WordPress 6.0.2.

2.5 — 25 August, 2022

  • New— Added global search feature, with new search page and widget to allow table searches from any location.
  • New— Integration with SearchWP.
  • New— Integration with FacetWP.
  • New— Added attachment MIME type support, e.g. post_type="attachment:image/png".
  • Fix— The table result count (e.g. '5 articles') now always shows the correct post type based on the table contents.
  • Fix— Fixed a bug with the 'term' option which prevented multiple taxonomies being specified correctly.
  • Fix— Video files were sometimes displayed at the incorrect size or in the wrong proportions.
  • Fix— Audio files and playlists were not displayed correctly, especially in mobile responsive rows.
  • Fix— Bug with filter dropdown position in certain themes.
  • Fix— Rows where all cells are empty were not being added to the table, which made the post total incorrect.
  • Tweak— Tables showing image files (post_type="attachment:image") now show the image in the Image column.
  • Tweak— Updated design for the responsive modal.
  • Tweak— Always use column control method for responsive rows when the first column has 'mobile' visibility.
  • Tweak— Improved display of audio and video when MediaElement.js is not available.
  • Tweak— Improved display of button column in block based themes.
  • Tweak— Improved list of post types on settings page.
  • Tweak— Updated settings page.
  • Dev— Add post classes (post type, status, etc) to responsive child rows and modal.
  • Dev— Update DataTables library to 1.12.1.
  • Dev— Replace FILTER_SANITIZE_STRING.
  • Dev— Tested up to WordPress 6.0.1.

2.4.1 — 13 January, 2022

  • Fix— Date custom fields in the table are now displayed in the current language, instead of only in English.
  • Fix— A bug introduced in 2.4, where selecting posts with the cf option did not work if the custom field was a multi-select type such as checkbox or radio button.
  • Dev— Tested up to WordPress 5.8.3.

2.4 — 16 November, 2021

  • Tested up to WordPress 5.8.2.
  • Updated DataTables library to 1.11.3.
  • Fix— An issue using special characters in the 'cf' custom field option.
  • Fix— A PHP warning when the image file for post featured image is not found.
  • Dev— Use webpack for script bundling.
  • Dev— Replace wp_localize_script with wp_add_inline_script.

2.3.4 — 5 March, 2021

  • Fix— Fixed a bug with the 'term' option for post tables using complex queries involving several taxonomies.
  • Fix— Fixed a bug which caused accidental display of the responsive child row when opening the featured image lightbox.
  • Fix— Improved loading of icon font to prevent render blocking.
  • Dev— Tested up to WordPress 5.7.

2.3.3 — 25 February, 2021

  • Fix— Fixed a bug with the post totals message in certain scenarios.
  • Tweak— Minor changes to the plugin settings page and internal code library.

2.3.2 — 13 January, 2021

  • New— Added new settings to customize the table design.
  • New— Added an 'exclude_term' shortcode option to exclude posts belonging to one or more custom taxonomy terms.
  • Tweak— Prevent accidental use 'category' option when specifying custom taxonomy terms.
  • Tweak— Minor improvements to dropdown filters.
  • Tweak— Updated all language translations.
  • Dev— Updated DataTables to version 1.10.23.
  • Dev— Added hook 'posts_table_enable_select2' to enable or disable the Select2 library.

2.3.1 — 18 November, 2020

  • Fix— Bug introduced in version 2.3 which caused non-Latin characters to be removed from column and filter headings.
  • Fix— Bug with post totals message when using lazy load.
  • Dev— Improve code for overriding post totals messages.

2.3 — 13 November, 2020

  • Dropdown filters now display relevant items only depending on current results, and update automatically after making a selection (excludes lazy load).
  • Various filter improvements— option to set custom filter headings (placeholder), added search box to filters, removed the 'Filter:' label, use select2 library.
  • Better handling for ACF date fields, and remove the need to specify ACF dates in date_columns option.
  • Better post totals message based on the selected post type, and use singular form when showing 1 result.
  • Added right-to-left (RTL) language support.
  • Changed the default for the position of the page length dropdown (below the table), and pagination type (numbers only).
  • Minor improvements to settings page.
  • Tested up to WordPress 5.5.3.
  • Fix— Prevent conflicts with responsive column display when column name contains a reserved keyword (e.g. "mobile").
  • Fix— Column class filter posts_table_columnclass[column] now applies to all rows in table, not just headings.
  • Dev— Replaced FontAwesome with custom font based on IcoMoon Free icon pack (GPL license).
  • Dev— Updated DataTables to 1.10.22.

2.2.1 — 23 September, 2020

  • Fix— Add backwards compatibility for sites running PHP 5.6 (temporary).

2.2 — 9 September, 2020

  • New— Added a 'date_modified' column to display the post's last modified date.
  • New— Added a 'button' column which links to the single post page. A new 'button_text' option is also available which allows you to set the text for the button.
  • Added button text option and made other minor improvements to the settings page.
  • Fix— A missing jQuery dependency was causing JavaScript errors on some sites.
  • Fix— The 'post_limit' setting was incorrectly applied to lazy loaded tables. It now applies to lazy load only when explicitly set in the shortcode.
  • Fix— Minor CSS issue with the + and - responsive row icons.
  • Dev— Refactored code to use new architecture and plugin license system.
  • Dev— Updated DataTables and Photoswipe libraries.
  • Dev— Removed old web font formats which are no longer required.
  • Dev— Added Composer support.

2.1.5 — 23 January, 2020

  • Fix a bug with the sort_by option when sorting by custom taxonomy with a slug ending in "_category".
  • Combine CSS and JS assets to reduce the number of HTTP requests.
  • Update DataTables library to version 1.10.20.
  • Tested up to WordPress 5.3.2.

2.1.4 — 30 October, 2019

  • Tested up to WordPress 5.3.
  • Fix a bug with several table options where setting in the main settings was not applied correctly.
  • Update Russian translations.
  • Refactored code to use updated plugin library.

2.1.3 — 7 March, 2019

  • Fix— Formatting and sorting of date custom fields in EU/AU date format (dd/mm/yyyy or dd/mm/yy).
  • Fix— Ensure sorting for date custom field works correctly when 1 or more posts is missing custom field data.
  • Fix— Ensure custom taxonomies used as dates are correctly formatted when using the 'date_format' option.
  • Fix— Totals and pagination were wrong after deleting search term, when an initial 'search_term' was set and using lazy load.
  • Dev— New filters for date formatting.

2.1.2 — 14 November, 2018

  • Added Russian translation.
  • Fix— Bug with 'links' option when using more than one value (e.g. links="title,image").
  • Fix— Prevent private post types being viewed if user doesn't have required capability.
  • Fix— Bug with 'search on click' feature.
  • Tweak— Improve validation of shortcode options.

2.1.1 — 19 September, 2018

  • Fix— Bug with lazy load caching which caused incorrect post totals.
  • Fix— Bug with table columns being set incorrectly when not using the 'post' post type.
  • Fix— Bug with lazy load which prevented cache being loaded when sorting by date.
  • Fix— Improve generation of table IDs to avoid clashes.
  • Fix— Ensure initial search term is restored when resetting table.
  • Fix— Improve validation of columns and search term shortcode options.
  • Tweak— Image column no longer links to single product page by default.
  • Dev— Improve table caching code.
  • Dev— New filter to adjust minimum search term length.

2.1 — 31 August, 2018

  • Fix— Fix date conversion for custom fields in dd/mm/yy format, to ensure date columns are sorted correctly.
  • Fix— Ensure private posts & pages are hidden if current user doesn't have permission to view them.
  • Fix— CSS issue which prevented FontAwesome icons displaying correctly.
  • Tweak— Update 'post_status' shortcode option to 'status', and add backwards-compatibility for old name.
  • Tweak— Remove extra database call to get posts total when using lazy load.
  • Dev— Improvements to Posts_Data_Table class - get_table and get_data methods now allow 4 possible return types.
  • Dev— Removed inline script for table config and instead use data-config and data-filters attributes on table element.
  • Dev— Replace 'self' with CLASS in callable references to static methods.

2.0.3 — 4 June, 2018

  • Fix— Ensure wpautop always runs before do_shortcode in 'content' column to prevent incorrect formatting.
  • Fix— Prevent table hooks being registered multiple times when there are several tables on one page.

2.0.2 — 29 May, 2018

  • Fix— Potential bug with totals when using lazy load.
  • Fix— Potential infinite loop when there are posts tables within post tables.
  • Fix— Bug with display of shortcodes in 'content' column.
  • Fix— Bug with custom taxonomies used as date columns.
  • Fix— Display of audio and video shortcodes in responsive child row.
  • Fix— Potential bug when using posts table in archive template and settings were updated.
  • Fix— Bug with categories filter when the 'category' shortcode option was set.
  • Tweak— Ordering now correctly reset when table is reset.
  • Tweak— Added WPML config file.
  • Tweak— Update license code.
  • Dev— Moved shortcode processing to abstract data class.
  • Dev— Made $data_table and $hooks properties public in Posts_Data_Table.
  • Dev— Made $args property public in various classes to allow easier customization.
  • Dev— Re-added add_above() and add_below() functions to data table class.
  • Dev— New hooks 'posts_table_hooks_before_register' and 'posts_table_hooks_after_register'.
  • Dev— Tested up to WP 4.9.6.

2.0.1 — 15 May, 2018

  • Fix— Bug with row attributes and classes when using lazy load.
  • Fix— Bug when using table with one column and column heading is blank.
  • Tweak— Improve table reset.
  • Tweak— Typo on settings page.

2.0 — 14 May, 2018

  • New— New plugin options added to the settings page (Settings > Posts Table Pro). Use these to set table options and shortcode defaults.
  • New— Image lightbox feature - open post images in a lightbox when using the 'image' column.
  • New— Table caching added to improve performance. Disabled by default - enable from the settings page or use the 'cache' option in shortcode.
  • New— Categories and custom taxonomy filters now display in correct hierarchy (Parent -> Child -> Grandchild) structure.
  • New— 'search_term' shortcode option to set the initial table search.
  • New— Search filters now search by 'slug' to improve accuracy and avoid name clashes.
  • New— Toolbar button available in Edit Post/Page screen to insert the posts table shortcode.
  • New— Add support for Time Picker fields in Advanced Custom Fields.
  • Fix— Search filters (e.g. Categories filter) now show the correct results when a parent category/term is selected (i.e. posts which have a child category of the selected category are now included in the results).
  • Fix— Bug with lazy load which caused pagination to be set incorrectly when resetting table.
  • Fix— Bug when selecting posts by custom field in ACF and field value is stored as an array.
  • Tweak— Icons replaced with FontAwesome.
  • Tweak— Posts limit now ignored when using lazy load.
  • Tweak— Improved cross-browser support and theme compatibility.
  • Dev— All plugin translation now handled by gettext functions. Old JSON translation files have been deprecated.
  • Dev— Complete code restructure and new data classes added.
  • Dev— Updated DataTables library to 1.10.16.
  • Dev— New filters: posts_table_after_get_data, posts_table_after_get_table, posts_table_custom_tabledata<column>, posts_table_optimize_table_query.
  • Dev— Deprecated filters: posts_table_supported_languages, posts_table_get_data, post_table_get_table, posts_table_celldata<column>.
  • Dev— Re-added the posts table wrapper div.
  • Dev— Various other code fixes and improvements.

1.6 — 15 December, 2017

  • You can now pass just the custom field key to the "cf" option to retrieve posts which have that custom field (regardless of value).
  • Code restructure and performance improvements.
  • Portuguese translation.
  • Tested in latest version of WordPress (4.9.1).
  • Fix— Allow ACF fields which store multiple values (e.g. checkbox fields) to be used as selectors with the "cf" option.
  • Fix— Bug when using column names containing a dot "." with lazy load enabled.
  • Tweak— Additional CSS classes and post ID now added to each row in table.
  • Tweak— Added 'posts_table_open_posts_in_new_tab' filter.
  • Tweak— Changed DataTables error reporting.
  • Tweak— New hooks for post table tax query and meta query.
  • Tweak— Removed additional wrapper div so simplify HTML structure.

1.5.5 — 1 October, 2017

  • New— Add support for ACF date_time_picker field.
  • Fix— Ensure videos are always responsive on smaller screens.
  • Fix— Prevent bug when using two of the same column in table.
  • Fix— Potential PHP error when handling date_picker fields in ACF.

1.5.4 — 5 September, 2017

  • New— Changed names of all shortcode options beginning 'display_'. Old options still supported for backwards compatibility.
  • Fix— Warning generated on post type validation.
  • Fix— Bug with tax query when using '+' indicator in 'term' option.
  • Tweak— Added post type and post ID as CSS classes to each row, and added 'posts_table_row_classes' and 'posts_table_row_attributes' filters.
  • Tweak— Update documentation links and other minor changes.

1.5.3 — 22 August, 2017

  • Added 'numeric_terms' option - set to true if you use categories/terms which have numeric slugs.
  • Fix— Allow shortcodes to work in all custom field columns.
  • Fix— Bug with formatting of date custom fields.
  • Fix— Support for custom field date columns held as UNIX timestamps.
  • Fix— Selecting by custom field (using 'cf' option) wasn't working when used for Events Calendar events.
  • Fix— Conflict with Hero Knowledge Base plugin.
  • Tweak— Added hook to allow ordering to be enabled/disabled for specific columns.
  • Tweak— Update DataTables to 1.10.15.

1.5.2 — 16 April, 2017

  • New— Added support for ACF Repeater fields.
  • New— Added template tags ptp_product_table and ptp_the_product_table for easier use in theme templates.
  • Fix— Ensure width of image column matches the image size used.
  • Fix— Compatibility with date picker fields ACF Pro.
  • Fix— Bug with custom column names appearing in search filter drop-downs.
  • Tweak— Update DataTables to 1.10.13.
  • Tweak— Removed $html parameter from 'posts_table_shortcode_output' filter.
  • Tweak— Added filters for separator used in item lists (e.g. post categories).

1.5.1 — 23 February, 2017

  • Fix— Bug with search filters and search on click when using lazy load option.
  • Fix— Intermittent bug with boolean shortcode options.
  • Fix— Bug with search filters which prevented first search term in table being added to list.
  • Tweak— Ensure shortcode doesn't run in admin.
  • Tweak— Ensure shortcode doesn't run on search results page.

1.5 — 13 February, 2017

  • Fix— Bug with responsive display functions (responsive_display="modal" or "child_row_visible").
  • Fix— Hidden columns are no loner shown in modal child row display.
  • Fix— Bug with date format for date custom fields.
  • Fix— Search filters for hidden columns.
  • Fix— Bug with license code.
  • Tweak— Restructure JavaScript array functions to prevent issues with other frameworks.
  • Tweak— Added filter 'posts_table_acf_value' for ACF custom field values.
  • Tweak— Added filter 'posts_table_inline_config' to modify table config.
  • Tweak— Replaced ID with Posts_Data_Table object in filter hooks.

1.4.9 — 8 February, 2017

  • Fix— If search filter is present as column in table, use column data as items for drop-down.
  • Fix— Bug with custom taxonomy column heading.
  • Tweak— Change inline table config code.
  • Tweak— Added filter 'posts_table_shortcode_output' to filter the table shortcode HTML.

1.4.8 — 1 February, 2017

  • New— Added 'display_reset_button' option to show or hide the reset button above the table.
  • New— Added column classes to every row in table to allow easier styling of table contents.
  • New— Deactivate license button on plugin settings page to make it easier to switch sites or move from development to production.
  • Fix— Change ACF code to ensure any theme hooks run.
  • Fix— Bug with select, text area and WYSIWYG fields in ACF.
  • Fix— Bug with display of search filters on mobile.
  • Fix— Name of Polish translation file for datatables.
  • Fix— Bug when selecting posts from several categories with '+' (AND) operator.
  • Fix— Restrict search filters to show only child terms when 'category', 'tag' or 'term' option specified.
  • Tweak— Ability to set a blank column heading. Use "blank" after column name, e.g. columns="price:blank".
  • Tweak— Added 'posts_table_search_label', 'posts_table_filter_label' and 'posts_table_reset_button' filter to allow those elements to be customised.
  • Tweak— Added various filters to filter all data in the table (price, add to cart, variations, attributes, etc.).
  • Tweak— Format URL custom fields as links.
  • Tweak— Adjust table styles to enable easier theme customisation.
  • Tweak— Improved support for ACF fields.
  • Tweak— Changed custom field filter to 'posts_table_data_custom_field' (old filter still valid but deprecated).
  • Tweak— Moved inline table config directly below table element.

1.4.7 — 19 January, 2017

  • Fix— Bug with when sorting custom field date columns in the format "May 2016".
  • Fix— Bug with custom field dates stored in European format (d/m/y).
  • Fix— Bug with 'tags' column which prevented tags from being displayed.
  • Tweak— Add dashicons dependency for plugin stylesheet.

1.4.6 — 18 January, 2017

  • New— The 'filters' option is now much more flexible - you can include categories, tags or any custom taxonomy, even if they are not displayed as a column in your table. For example, filters="categories,tax:staff_location" or filters="true".
  • New— Search filters are now supported for lazy loaded tables.
  • New— Custom fields or taxonomies which represent dates can now be sorted in correct date order. Use new option "date_columns" to specify which additional columns should be treated as dates, e.g. date_columns="cf:start_date,tax:staff_date".
  • New— 'term' option accepts one taxonomy as well as multiple taxonomies in a single list, e.g. term="product_tag:cool,awesome,great" or term="product_tag:cool,staff_location:london".
  • New— Polish translation (credit: Marcin Wasilewski).
  • Fix— Fixed table layout issue when displaying videos in table.
  • Fix— Bug with media shortcodes when using lazy_load option.
  • Fix— Format of date picker fields in Advanced Custom Fields. Will use 'date_format' option if specified, otherwise the display format in ACF.
  • Fix— Prevent first column from hiding on smaller screens when using responsive_control="inline".
  • Fix— Bug with drop-down filter selection.
  • Fix— Bug with sort_by option for custom fields.
  • Tweak— Table now scrolls to top when clicking a category, tag, author, etc. in the table and search_on_click="true".
  • Tweak— Added filter 'posts_table_custom_field_value' to filter custom field values in table.
  • Tweak— Add filter for column header class - 'posts_table_columnclass ' + the column name.
  • Tweak— Added table ID to most filters to allow more specific filtering.
  • Tweak— Updated license activation code.
  • Tweak— Re-structure Javacript code.
  • Tweak— Change styling and location of reset button, and other minor styling improvements.

1.4.5 — 25 November, 2016

  • Added fitVids.js to enable responsive video for tables displaying media files.
  • Fix bug with CSS table layout.
  • Tested with WordPress 4.7.

1.4.4 — 24 November, 2016

  • Added support for search filters (drop-down lists) to filter table by category, tag, author and custom taxonomy columns. Use filters="true" to enable.
  • Added Reset button next to search box to clear the current table search.
  • New option 'shortcodes' to allow shortcode content to be displayed in the table (content and excerpt columns).
  • Added support for WordPress embeds using , , and shortcodes. Use shortcodes="true" to enable.
  • Added four new options to show or hide the page length drop-down, search box, results totals and pagination. Options are 'display_page_length', 'display_search_box', 'display_totals' and 'display_pagination' and each can be set to either 'top', 'bottom', 'both' or 'false' to hide the element.
  • Fix bug with 'search on click' feature for categories, tags, etc. Search is now restricted to the column clicked on.
  • Fix compatibility issue with WordPress versions below 4.5.
  • Styling improvements.

1.4.2 — 8 November, 2016

  • Added 'exclude_category' option to allow entire post categories to be excluded from table. Use category slugs or IDs.
  • Added 'include' option to display only the posts specified by their IDs.
  • Added 'author' option to restrict posts in table to a specific author (or list of authors).
  • Added 'post_limit' option to limit the total number of posts displayed in the table.
  • Added 'auto_width' option to enable or disable the automatic column width calculations (default— true).
  • Added 'paging_type' option to allow control over pagination style used - see documentation for details.
  • The 'category', 'tag' and 'term' options now accept IDs as as well as slugs.
  • Fixed bug with custom fields which have mixed case or uppercase keys.
  • Added Italian translation (credit— Libri Ehret).

1.4.1 — 3 November, 2016

  • Added $post object as parameter to 'posts_table_custom_data' filter.
  • Bug fix with sort_by option.

1.4 — 3 November, 2016

  • Added new 'excerpt' column to show the post excerpt. New option 'excerpt_length' sets the number of words to use for the excerpt.
  • Table can now be sorted by the following— menu_order (use 'order' option set for page/post), id (sort by post ID), comment_count, modified (last modified date), rand (random ordering), author, name (order by post slug), and type (order by post type).
  • Allow custom columns to be added to table - use filter 'posts_table_customdata<column>' to populate custom columns.
  • Allow image_size to be set using one number for both width and height (e.g. image_size=50).
  • Added new responsive options - responsive_control, responsive_display, and column_breakpoints. These allow more control over the display when viewed on smaller screens. See documentation for details.
  • Changed default table columns if not viewing posts.
  • Allow featured image column to link to the relevant post or page (use links="image" or links="all").
  • Allow categories or tags to be used in links option.
  • The 'Show <x> entries' drop-down now includes an 'All' option to display all rows.
  • The 'Show <x> entries' drop-down above table now defaults to the 'rows_per_page' setting in the shortcode.
  • Renamed 'ajax' option to 'lazy_load'. ajax option is still supported for backwards-compatibility.
  • Improved the table styling.
  • Fixed bug with Advanced Custom Field values for date_picker, wysiwyg and text_area fields.
  • Added documentation and contact support links to settings page.
  • Updated license validation code.
  • Other code improvements and bug fixes.

1.3.1 — 23 September, 2016

  • Add support for all Relational fields in ACF (i.e Page Link, Post Object, Relationship, Taxonomy and User fields).
  • Added Dutch translation (credit— Alex Van Haren).
  • Fix bug for non-standard date formats for Date Picker fields in ACF.
  • Fix bug in license key activation.

1.3 — 10 September, 2016

  • Added full support for Advanced Custom Fields plugin.
  • Added new shortcode options 'no_posts_message' and 'no_posts_filtered_message' to allow custom messages when no posts are found (English language only).
  • Added new shortcode option 'date_format' to allow custom date format to be used - see documentation for examples.
  • Allow image_size to use format "50x50" as well as "50,50".
  • Allow column widths to be specified in pixels as well as a percentage.
  • Updated EDD Updater which handles the plugin updates.
  • Updated license key code.
  • Fixed conflict with Hide Featured Image plugin.
  • Update language files.
  • New filters added and other minor tweaks.

1.2.1 — 17 August, 2016

  • Fix bug with widths attribute that was preventing custom column widths being set.

1.2 — 11 August, 2016

  • Allow custom headings to be set for columns (see documentation for examples).
  • Allow all post/page content to be shown in the table. To enable this, set content_length to '-1'.
  • Update to version 1.10.12 of DataTables.
  • Changed text domain and fixed loading of translation files.
  • Add settings link to Plugins page.
  • Fix— JavaScript bug with 'search on click' feature.
  • Fix— Bug preventing featured images working when AJAX enabled.
  • Fix— Removed use filter_input() for server variables as not always reliable.

1.1 — 23 May, 2016

  • Added support for featured images and new 'image_size' attribute.

1.0 — 20 May, 2016

  • Initial release.

Our Customers Say

Excellent Plugin! We use this plugin to add enquiries (email and whatsapp) and downloads tabs to products. This really helps to keep important info front and centre, without it getting lost within lengthy product descriptions. I also helps massively when changes are made to forms and downloads as they can be made in one simple interface instead of multiple edits to the actual products.
—John Beardon