You are here: Home > Advanced Search


Advanced Search

Advanced Search replace search function of CMSimple with following extensions:

  • Search with any combination of arguments “OR” (default), “AND”, “NOT”, and quoted sentences
  • Livesearch support (requires installed Livesearch plugin).
  • Optional phonetic search (double metaphone, metaphone, soundex)
  • Optional search in plugins (support for all types plugin calls (hi_pd_scripting included)
  • Optional search in 2lang/2site content (se Known Problems section for description of limitations)
  • Build in DHTML help.
  • Optional one hit redirection.
  • Optional highlighted search results (uses slightly modified searchhi.js).
  • Search box on search result page for easier tailoring of your subsequent queries
  • Optional log file with log of search input and results.
  • This plugin does not require use of cookies.

Demo: just search on this site. For demo of special characters and plugins seach visit Submenu of this page or Danish subsite..


Table of Content

  1. License and purchase
  2. Installation
  3. Configuration
  4. Compatibility
  5. Change summary
  6. Known problems
  7. Future Development
  8. Disclaimer
  9. Acknowlegement

1. License and purchase

Advanced Search is released under Linkware and Commercial.license. Websites used for sale and advertising (incl. Google Adwords etc.) or other commercial activity as well as websites developed against a payment are considered as commercial and requires a Commercial License. 

You are allowed to make code changes in this plugin to tailor it to your needs.This plugin is for personal use and you may not redistribute either original or modified code. Please read and accept License Conditions

Price 40,00 € (Advanced Search + Livesearch plugin 70,00 €).

To order Advanced Search please fill the form with your mail and the adress of the website where you will use this plugin.

Powered by Form Mailer plugin

Script by Dagon Design. CMSimple customization by simpleSolutions

An Linkware/Test version of Advanced Search plugin is available through the button below.

2. Installation

The compressed ZIP-file contains two folders: "cmsimple" and "plugins". The cmsimple folder contains the modified search function (search.php) which has to be copied into the cmsimple program folder. Before you do so, you should rename the basic file - in case you dislike this plugin.
In the "plugins" folder you find the actual AdvancedSearch plugin ("advanced_search") which you copy into CMSimple's plugin folder like any other plugin.

3. Configuration

In plugin configuration manager it is possible to change:

  • highlight: Activate/deactivate highlights (true / false).
  • phonetic_search:Activate/ deactivate phonetic search (true / false/ nofound). Nofound activates phonetic search only if no regular hits are found
  • phonetic_search_type:Choice of algorithm for phonetic search (double metaphone / metaphone / soundex) default metaphone.
  • plugin_search:Deactivate search in specified plugins (se below).
  • search_2lang:Activate search in 2lang or 2site subsite
  • log: Activate/ deactivate log for all searches on your site. (true/false). If activated all queries and their results will be logged in the file search_log.txt in AdvancedSearch directory
  • hide_searchbox:Hide searchbox from template on searh result page.
  • submit_icon: Define path to a user defined icon to replace submit button on search result page. To activate the icon on searchbox you have to rename the call to searchbox() in your template.htm to advsearchbox().
  • one_hit_redirect: If only page match keyword redirect directly to this page (instead of search result page). 

To search in 2lang/2site content insert the name of the 2lang/2site library (like "fr", "ar" or "subsite") and define alias name for the 2lang/2site (like "French", "Archive", "Second Subsite"). This functionality makes only sense when you use 2lang to store information in same language as the main site for instance an archive. Only one 2lang/2site libreary is searchable at the moment (can be changed if anybody needs it).

2lang/2site search does not support page_params plugin ie. to hide pages you need to insert #CMSimple hide# on pages and plugins call created by hi_pd_scripting plugin are not searchable


Phonetic search uses the algorithm double metaphone (default),metaphone or soundex to calculate the key value of every word in the string. All algorithms create the same key for similar sounding words.
The result of metaphone and soundex recognition will be different depending of the language. In advanced search the metaphone and soundex functions are combined with levenshtein function witch defines the minimal number of characters you have to replace insert or delete to transform str1 to str2.  

Double metaphone is the most exact algorithm for word recognition and will give most exact results in many languages. If you are lucky then sombody made a double metaphone conversion to your language in this case you can edit the file doublemetaphone.php in data directory of advanced_search. Double Metaphone is a complex search engine and the response time of advanced search will be longer then with with metaphone and soundex and can cause timeouts on large content files. If response time is important on your site then use mataphone or soundex or turn phonetic search off.

Search in Plugins is activated when configuration field "plugin search" is set to true or contain a list of plugins you do not want to be searchable. Not all plugins have a searchable output and this way you can control what plugins you want to exclude from searching. You have to input the function name enclosed in CMSimple tag and use comma as separator.

For example to avoid search in SimpleRss plugin you have to insert "showrss" which is the name of the function enclosed in the tag { {{PLUGIN:showrss();}}}. To avoid search in both SimpleRSS and Image Album plugins insert: showrss, imgalbum.

Advanced search supports notations #​CMSimple  plugin(...);#, { {{PLUGIN: plugin(...);}}} and plugin calls created by hi_pd_scripting plugin and all notations can be freely mixed

To avoid plugin search set "plugin search" to false.

4. Compatibility

The AdvancedSearch plugin is tested with CMSimple_XH versions 1.5.. and php versions 5.3. It will work with all utf-8 encoded versions of CMSimple and php version 5 and later.. 

AdvancedSearch was successfully checked as HTML 4.01 Transitional and  XHTML 1.0 Transitional. Advanced_Search validates as CSS level 2.1

Plugin compatibility: page_param and hi_pd_scripting.

Codepage: utf-8 is required.

5. Change summary

Version 2.1.2

  • php 7 ready

Version 2.1.1

  • Compatibility with CMSimple_XH version 1.6.3

version 2.1.0

  • Rewirted to match search functionality in CMSimple_XH version 1.5.x (CSMimple search configuration options are supported)
  • Optimized to work with Livesearch plugin.
  • Added support for plugins call with { {{PLUGIN: ..}}} notation
  • List of searchable plugins replaced by the list of not searchable plugins
  • Added one_hit_redirect option (if set to true then redirect sarch result with one hit to appropriate page).
  • Added 2site search

version 2.0.1

utf-8 raw encoding corrections.

version 2.0

  • Released under Commercial License.

version 1.6

  • Rewrited search functionality for compatibility with utf-8 and ANSII encoded pages.
  • Code optimization and compatilibity with page_param plugin.
  • 2lang search.  

version 1.5

  • ensured compatibility with CMSimple_XH version 1.2 for highlighting of test results.
    NB! this version and following will not evaluate correctly  in earlier versions of CMSimple and CMSimple_XH because of the bug in body onload section. This has no influence on functionality of this plugin in CMSimple_XH version before version 1.2 and all supported versions of CMSimple.
  • optimized code for pd_hd_scripting plugin 

version 1.4 

  • resolved compatilbility issues with hi_pd_scripting plugin

version 1.3 

  • Added support for multi-language sites (2lang).

version 1.2

  • Fixed bug - html tags removed from search result of plugin search
  • Search result of phonetic search shorter then 3 char are ignored.
  • Added function advsearchbox() with optional icon facility instead of submit button - replaces cmsimple call to searchbox().
  • Added configuration option "hide searchbox" - for description se Configuration section of this document.
  • German translation by Andreas Gröger

version 1.1.0

  • added Double Metaphone search as default. Double Metaphone tries to account for myriad irregularities in English of Slavic, Germanic, Celtic, Greek, French, Italian, Spanish, Chinese, and other origin. Thus it uses a much more complex ruleset for coding than metaphone; for example, it tests for approximately 100 different contexts of the use of the letter C alone.

version 1.0.2  

  • onload in searchhi.js replaced by a function addLoadEvent() for compatilibity with other plugins using javascript window.onload.

version 1.0.1 

  • include of searchhi.js removed from function advanced_search and made global. No need to intialise in template.htm.

6. Known Problems

  • Both Double Metaphone and plugins search are heavy duty search algorithms consuming a lot of ressources and can result in long response times on large content files with many plugins calls. If you experience long response times or even timeouts switch to another search algorithm and search only in most important plugins if any.
  • 2lang/2site search limitations. Plugins calls created in hi_pd_scripting are not searchable . Also pages hidden trough page_params plugin will be searchable.This is due to a CMSimple_XH way to load page_param file and can not be solved in a satisfactory way in the current versions of CMSimple_XH. 
  • Use with jQuery 1.9.x requires use of appropriate jQuery Migrate addon. 

7. Future development

8. Disclaimer

This CMSimple plugin is distributed in the hope that it will be useful - without any warranty; without even the implied warranty of fitnes for a particualr purpose.

9. Acknowledgement

The code for search through plugin output is based on code developed by Softly

The original code for highlighting derives from Stuart Langridge and is slightly modified to accept quoted searches.

The doublemetaphone in php is created by Stephen Woodbridge.

forceutf8.php used to utf-8 conversion is written by Sebastián Grignoli

© simpleSolutions, 2008-2013


  |   top   |  



All plugins on this site are validated according to CMSimple_XH standard




Newsbox Rotator demo


Hold the cursor over Newsbox Rotator area to pause rotation.Move the mouse outside area to continue rotation.

In CMSimple XH not published news are not visible in News Rotator.



Newsbox Rotator demo

Newsbox Rotator Test 1

Newsbox_1 test test test


test1 test2 test3 test4 test5 test6 test7 test8 test9

Newsbox Rotator demo

CMSimple plugin: Newsbox Rotator
v.2 © simpleSolutions

Last update:
June 13, 2017, 16:22

Powered by CMSimple | Template by simpleSolutions

(X)html | css | Login