HTML filter and csv-file search


Two different shortcodes; [csvsearch] enables search in csv-file uploaded to the Media-library. Enter the URL in the shortcode to add a searchbox that will find matches in that file with a jquery-ajax-call and presents each row with the format specified. [filtersearch] enabled a filter search box to a page that filter contents instant with jquery. You can set the element to filter within and other settings through the shortcode attributes.


Add csv file search functionallity to any post or widget with the shortcode
[csvsearch src=”https://path_to/content/file.csv”]

With this shortcode a search button will be generated and will by instant-ajax-search search through the csv-file in the src attribute and return the rows found matching the search input.

Check blog post at for live samples.


There are some settings to control the search and output.

  • src Enter the path to the file to search, the file is uploaded through the Media archive as with any other file. Find the URL and enter it in this attribute.

  • format How each line in the output will be formatted.
    Use {b} to render etc. All { and } will be replaced with < and >.
    Use {0}, {1} etc. to place the columns where you want in the output line.
    Default is: {b}{0}{/b}, {1}, {2}{br/}
    column1 (in bold), column2, column3 end with line-break.

  • searchtext Text that will be shown in search button. Default is in swedish: ‘Sök’.

  • charset Default charset is ‘iso-8859-1’. Can be set to any charset available through this attribute.

  • instantsearch Should instant search be enabled. I.e. dropdown results when entering text. Default is ‘false’.

  • instantformat Format for instant search. Default is ‘{0}’.

  • dataidformat Which column contains ID. Is used when click on dropdown. Default is ‘{0}’.

  • csv_separator Set column delimiter to use. , or ; is normally used depending on csv type. Default is ‘;’

  • nothing_found_message Set your own message when there are no hits in search. Default is ‘Nothing found when searching for: ‘

  • exact_match Set to true to only match exact matches, case sensitive. Default is ‘false’

  • placeholder_text Set a text to be seen as placeholder for the search. Will be replaced when a search is made. Default is none.

  • only_search_in_column Only search in one specific column. Enter 0 if you only want to search in first column. Remove this argument or add -1 to search in all columns. Default is -1

  • show_header_row Show first row as a header row by setting to true. Default is ‘false’

  • headerformat Combine with show_header_row to set format for header row. See format above to see more info.

  • ignore_default_header_style Set to true to ignore default style for header row. Default is ‘false’.

  • skip_file_check Skip the file check. Use when file check not working properly, for exampel when WP installed in sub directory.

  • set_focus_on_load Set to true to focus input element on page load, set false if not to focus. Default is ‘false’.

Screenshot 1 shortcode:
[csvsearch format=”{0} | {1} | {3}{br/}” src=”/files/2016/07/sizedata.csv”/]
Which means showing first, second and fourth column from the file with a separator between and line break at the end.


Add filter/search functionallity to any post or widget with the shortcode

With this shortcode a filter input will be generated and will instant filter the content in the page or post. You will be able to select if all page will be filtered or just some of the elements.


There are some settings to control the filter.

  • search_element Select within which html-element the content should be filtered. Should be entered as ‘element.classname’ (i.e. table.content or .content) in any form combining element, id and/or classname.

  • show_header_in_table Set to true if the first row in table is a title and always should be visible. Only affects when filtering tables.

  • text Replace the standard text placed in front of search box.

  • clear_icon_class Class to use to show ‘clear’-icon. Default is ‘delete-icon’.

  • clear_text Text to show in the clear button, useful instead of icon. Default is empty.

  • set_focus_on_load Set to true to focus input element on page load, set false if not to focus. Default is ‘true’.

Screenshot 2 shortcode:
[filtersearch text=”Sök hämtningsdag för din ort” search_element=”table” show_header_in_table=”false”]


  • Output of csvsearch on page.
  • Output of filtersearch on page.


  1. install and activate the plugin on the Plugins page
  2. add one of the shortcodes to page or post content


March 11, 2017
Let me just start off by saying THANK YOU to the developer. After an 8 hour quest I stumbled upon this randomly and it was exactly what I needed. I have huge tables of html content in posts that needs to be filtered from the top of the page with instant speed. This plugin accomplished it right out of the box -- no customization needed. Don't waste your hard earned money on other bloated options, this is the one for you! My only complaint is I didn't find it sooner! ha! Best Andrew
Read all 5 reviews

Contributors & Developers

“HTML filter and csv-file search” is open source software. The following people have contributed to this plugin.




Bugfixes for filtersearch, search per td cell if filtering table. Support if thead is used in table.


Attribute set_focus_on_load added to csvsearch to set focus automatically to input element.


More attributes added when using show_header_row=’true’. Set specific headerformat and ignore_default_header_style.


skip_file_check argument added to csvsearch shortcode to skip file check.


Added check to see if src-file exist. (also removes site name from src-file if any)
Bugfix for csvsearch, now shows nothing_found_message if show_header_row and is true is empty result.
Bugfix show_header_row now works if multiple shortcodes on same page.


Added show_header_row to csvsearch shortcode to be able to show first row as header row.


Load shortcode on init.


Cleanup warning text, default to ‘table’ if no element is set in filtersearch.


Add to specific column added to csvsearch.


Placeholder text is added to csvsearch.


Added exact_match to csvsearch shortcode to force check for exact matches, case sensitive.


Added nothing_found_message to csvsearch shortcode to set your own message.


csv_separator added to csvsearch shortcode to be able to set correct delimiter depending on csv file.


Change in how to find element to filter. Trying to find find closest post or page if shown in blog list.
New filtersearch setting added, set_focus_on_load, to be able to not focus the input element on page load. Default is still focused.


Bug fix. Fixing some issues when file added with wrong quotation marks in [csvsearch].


Bug fix. Now loading jquery if not previously loaded.
Update. ‘Nothing found’ message added when no results in csvsearch
Update. Rename of shortcode to [csvsearch] and [filtersearch] (old shortcodes still works).
Breaking style change. [filtersearch] style updated to fit modern standard. If your style is breaking, add argument old_style=true and old look should be back.


New feature instant search is added.


Initial commit.