RapidSearch Live


This new search stack works by taking your RapidWeaver sitemap and constructing a flat-file database of your webpages; including their titles, descriptions, keywords, meta data and social media open graph data. All this information is saved into a simple XML flat-file database on the web server and is instantly available 'live' for end users to search.

The advantage of this search stack is that it can index sizeable websites within a couple of minutes - you are not having to wait days or weeks for an external search engine (like Google) to update its results. And unlike RapidSearch Pro, there is no complicated MySQL database or other complex configurations to wrangle with! It can also cope perfectly well within multilingual setups and with special characters, including Latin Extended character sets or HTML entities.

RapidSearch Live has been painstakingly designed and developed exclusively for RapidWeaver. We have worked hard to make the setup of RapidSearch Live intuitive, but still give you the flexibility to customise many aspects of the stack. RapidSearch Live takes advantage of new features recently added in RapidWeaver 8; like support for Open Graph meta data.

Not only is RapidSearch Live fast, but it is also pretty to look at! You can control just about every aspect of the search results returned and make this stack look like a custom built, integral part of your website. Through use of your social media open graph data, search results can contain a mixture of both words and pictures. Font styling and colouring is inherited from your theme.

RapidSearch Live purposefully foregoes the integration of complicated functionality; like pagination, favicons and search result ordering. Our goal with this add-on is to provide the very fastest and most user-friendly search capabilities possible.


This is a working example of RapidSearch Live. It has been configured to search this website. Try typing a simple keyword like 'stack' which should return every page of this website, in sitemap order. Note how quickly the results get shown to you!

No search results found.
Website Indexed: February 11 2019 @ 22:07:42
Sitemap Source: ../sitemap.xml

Database Creation
Click to create a datafile of your public webpages and their meta data. Depending on the size and speed of your website, it can sometimes take several minutes for rebuilding of the search database to complete. The web browser might display 'loading' or 'waiting for' in the browser status bar. Please be patient and allow this process to complete! Once completed successfully, you should see a green success message shown in the console box below. If there was a problem with building the search database, a red error message may get displayed instead. Reload this webpage to hide the admin panel and to test your search box.

Database Download
Click this button to download a backup copy of your RapidSearch Live database in XML format. This file can either be archived, moved to another web server or you can open it in any plain text editor. You can also add this downloaded XML file as a resource in RapidWeaver and set it as your 'test' database in the stack settings. Then you will be able to test the search offline in RapidWeaver preview.

Database Viewer
Click this button to view the XML code being used for your search database, in your web browser. This option can be useful if you want to see what pages have been indexed and inspect the data being used for the search. However not all web browsers support the display of XML.

Search Result List
Clicking this button will force the display of all search results in the webpage. You can use this option to quality-control the search results shown to your website users. If you spot something wrong, you can make the changes to the page in RapidWeaver, publish the page, then rebuild the search database again. To reset the search results back to hidden again, refresh the webpage.
A couple of other keywords to try in the search box are 'free' (to display pages that feature a free stack) and 'paid' to display pages that feature a paid stack. Or enter 'paid free'. To return both free and paid stacks. A nice example of simple product filtering, that is achievable with RapidSearch Live.

The source sitemap
RapidSearch Live needs to be configured with a link to a sitemap file. This tells RapidSearch Live the webpages you want indexed. Equally so, those you do not want indexed are ignored. RapidSearch Live goes to each of these listed pages in your sitemap, and fetches the additional information it needs for building your search result index.

Fortunately RapidWeaver already generates a sitemap.xml file, which gets published with your website. This is perfect for RapidSearch Live to use. However the option remains if you want to link-to a custom XML file to use instead of the one RapidWeaver creates.

Presenting your search results
Within the stack settings, you can restyle and recolour a great many aspects of RapidSearch Live. Do spend some time experimenting with all the different options available to you. Labels can be applied alongside the different data types, to assist users in identifying what the information shows. Data that you do not want displayed within search results can be hidden quite easily using the checkboxes. And we automatically hide missing data for you already.

Search results are presented in their sitemap order. Each search result is presented using CSS Flexbox. You can change the ordering of content segments within each search result, by using the ordering settings. For example, giving a title a numerical value of 2 and a description a numerical value of 1 will place the result description above the result title.

The search works perfectly on all mainstream web browsers; including mobile and tablet devices. We include some additional optimisations, so that website users with disabilities can continue to access your site search conveniently.

Often when you build a website, it is customary to include the name of the website or business in the browser title. In search results, seeing this same information replicated many times serves no real purpose. Therefore you can configure titles to have separators and common words removed. Replace | My Website with whatever content you want removed from your titles. This simple change will help tidy things up.

Using the search
This does not really need explaining in great detail, because RapidSearch Live is an incredibly simple web search addon! But there are a couple of details worth mentioning here.

RapidSearch Live can be configured to either display results 'live' as the user types in the search box or only display results when the search button is clicked. You can decide how to configure the search.

It is possible to use RapidSearch Live in conjunction with RapidSearch Helper. This is especially true if you want to setup a search box on other webpages and send the search queries to RapidSearch Live.

The role of your sitemap.xml file
Most websites published with RapidWeaver already include a sitemap.xml file. This provides a list of webpages for a search spider (like Google) to index. However the trouble with this file is that is only contains a list of pages. No other page data (like titles or descriptions) are included within this file. Therefore it is of little use for building a search index around.

Within your RapidSearch Live settings, you specify the location of your sitemap.xml file. The default section is to use your own sitemap. Then RapidSearch Live can go to each of the pages listed in your sitemap.xml file and build a more comprehensive flat-file database; which in turn gets used for the search results shown to users. The database file RapidSearch Live builds contains a lot more data, compared with your sitemap.

Where is you sitemap.xml file? RapidWeaver normally uploads this to the root directory of your website. So if your website was at https://example.com/ you could expect to have a sitemap.xml file located at https://example.com/sitemap.xml. If you prefer to add a custom sitemap file for RapidSearch Live to use, this is perfectly feasible to do also. There are several free tools available online for building custom sitemaps.

Logging into your admin control panel
Simply press and hold the search bar for 5 seconds with your finger or mouse. This will reveal the admin control panel. Here you can view when the website was last re-indexed, click to rebuild your search database and easily download or view your database XML file.

All the buttons and instructions can be customised within the stack settings; letting you easily reword or translate the interface into different languages for your clients. Some of the options (like XML downloads and online viewing) are only shown after the datafile has been created and the page refreshed.

By purposefully omitting the need for usernames or passwords, you can easily gain access to the admin control panel at any time and from anywhere. None of the data contained within the admin control panel is sensitive information that is not already publicly accessible on your website. The most damage a would-be hacker can do is to conveniently rebuild your search database! The admin control panel can be disabled in the stack settings, if necessary.

Testing your RapidSearch Live stack offline in RapidWeaver preview
Regretfully to this day, RapidWeaver only generates a sitemap.xml file after you publish or export your website. So it is impossible to currently get RapidWeaver to generate a search database offline; therefore limiting your ability to test RapidSearch Live offline.

To help you overcome this problem, we have added a 'Test Datafile' setting, within the RapidSearch Live General Settings. What you can do is to go to your previously published RapidSearch Live webpage (on your website) and open the Admin Control Panel. Use the button option to download a readymade copy of the search database in XML format.

Locate this downloaded file on your computer and add it as a resource in RapidWeaver. Open your RapidSearch Live General Settings and link-to your test datafile (as a RapidWeaver resource). Now you will be able to fully test your site search offline. Please note that some buttons within the Admin Control Panel remain disabled in RapidWeaver Preview.

System requirements
RapidSearch Live requires a minimum of Stacks 3.5 and either RapidWeaver 7 or RapidWeaver 8 and above. The web server needs to be running a standard configuration of PHP 7 or above. RapidSearch Live uses the SimpleXML PHP library, so this needs to be enabled on the hosting server. Your website should be built or structured around the 'tidied' links concept RapidWeaver generates by default (previously known as 'cruftless links' in earlier versions).The stack should function fine on most web servers, but as always, it is strongly recommended you download and try the free demo version to confirm the stack works for you.

Follow these steps for solving basic problems with RapidSearch Live:
  • Make sure the link to your sitemap.xml file is correct (if using a custom sitemap.xml file). Search online for an 'XML validator' and check your XML file does not contain errors.
  • Ensure your website follows guidelines and best practices for web-safe file and folder names. Have all the webpages you want to search got the correct meta data tags?
  • Rebuilding the search database (for large websites) can take several minutes. Please allow the process to complete.
  • Check the error_log file in the same directory where RapidSearch Live is published. This can be accessed using FTP and will clearly highlight any PHP errors that are arising.
  • If the search results returned are not very accurate, dedicate some time towards optimising your website for search engines. Also known as 'SEO'. See the details below.
  • When you run a search, old results may continue to show despite rebuilding the search database. Some web browsers cache XML files, so might still be 'remembering' older search results in their memory. Clear your web browser cache or try the browser in 'private' mode.
  • The page RapidSearch Live is published on requires a .php extension and older .html versions at the same location to be deleted. If you are seeing PHP code in your webpage, there is a good chance you are still looking at an HTML version of the page.
  • Options to test your search in RapidWeaver preview are limited. Use the 'Test Datafile' setting to manually add a previously-generated search database as a RapidWeaver resource.

What data can RapidSearch Live display?
RapidSearch Live currently supports the following data types in search results:
  • Page title
  • Page URL
  • Open Graph image
  • Open Graph title
  • Open Graph description
  • Meta description
  • Meta keywords
  • Meta author
  • Meta revised date

If any of these data types are selected to be displayed in search results, but are missing from certain pages, RapidSearch Live will omit them from display. For example if you did not have a <meta name="revised" content="My Name, 3/7/2014"> meta tag on some webpages (used for displaying when the page content was last changed), RapidSearch Live will just ignore the missing data. It will not cause indexing to break or gaps to appear in your search results.

Optimising your website for RapidSearch Live
The search results shown are a reflection of how well your website is optimised for search engines. By now, you should already be including good page titles and meta descriptions for every webpage you publish. This is something the SEO 'health check' in RapidWeaver encourages you to do.

Keywords can also be useful to include, for quickly 'tagging' topics that the webpage contains. Specialist websites may also include meta author (the name of the person who wrote the content) and meta revised dates (the date the page content was last updated). RapidWeaver 8 introduced the option to provide an 'Open Graph' data with each page; which enriches the search results even further and assists social media. RapidSearch Live has support for all of the above.

Typically any of this information is supplied through the RapidWeaver Page Inspector, on a page-by-page basis. Not only will this data be of use to RapidSearch Live, but it is also of significant benefit to mainstream search engines and social media platforms; including Google, Bing, DuckDuckGo, Yahoo, Facebook and Twitter. RapidSearch Live purposefully does not use content in the main body of the webpage, to help keep things running fast.

Using custom meta data
A nice benefit of building modern websites with HTML5 is the ability to make-use of custom meta data names and values. These offer the ability to supplement pages with additional data; which we can then conveniently reuse in RapidSearch Live. This data is not shown on webpages and is of little use to other services (like mainstream search engines or social media). RapidSearch Live supports up-to 5 custom meta data names. These can be switched-on and configured in the stack settings.

Assuming you were publishing a website that listed products for people to buy on separate webpages. You might choose to add a new meta data type that would store the ID number of the product. The meta name should always be a simple word or phrase in lowercase, containing no spaces or special characters. In this example, we can refer to this as the 'PID' or 'product ID':

<meta name="pid" content="996783">

Then in your RapidSearch Live settings, you can enable one of the custom meta data sources. Set its name to pid and rebuild your search index, to gather the PID values from each page (if they exist).

Now if a customer ran a search for the product id '996783' the page would be listed in the search results. This system offers a vast amount of flexibility to build a truly custom search engine that potentially has searching capabilities far-beyond any other.

Using RapidSearch Live on multiple webpages
Although it is feasible to use RapidSearch Live on many webpages, from a technical standpoint it is not the most efficient method for using this stack. If you needed to update your search index, you would find yourself needing to rebuild the search index on every page, where RapidSearch Live is being used. That could take quite a lot of time!

We strongly recommend instead that you setup a single search page to place RapidSearch Live on. Then use the free RapidSearch Helper stack to construct simple search boxes on your other webpages. RapidSearch Helper can be used to send search keywords to your page hosting RapidSearch Live, via a browser address bar query string. Simply open the RapidSearch Helper settings and choose 'RapidSearch Live' from the list of integrations and set the link to your RapidSearch Live webpage. RapidSearch Helper is fully compatible with the 'partials' feature in newer versions of Stacks.
Please read the following carefully:

System requirements
This stack requires RapidWeaver by Realmac Software and the Stacks plugin by Yourhead Software. It will not work with other publishing platforms (like Wordpress). We recommend you aim towards installing the latest version of RapidWeaver that your computer is capable of running (preferably RapidWeaver 7 or greater) and Stacks 3 or later.

If you cannot get the free demo version of this stack to work, DO NOT proceed with purchasing this stack - please request technical assistance first.

Prices shown on the website exclude any applicable VAT. The final price payable is shown at the checkout. You will be sent a full receipt by email. Charitable and bulk discounts may be available on request. Please get in touch if you have any queries about our pricing.

License agreement
You may use this purchased stack an unlimited number of times in personal or commercial projects, request technical support.

This stack can be installed or synced onto all computers that you own. You are permitted to make archival backup copies of the stack.

You may not resell or make this stack available for download, remove copyright credits or license information.

The software is provided "as is" without any implied or expressed warranty of merchantability or fitness for purpose. In no event shall the authors or copyright holders be liable for any claim, damages or other liability, whether in an action of contract, tort or otherwise arising from, out of or in connection with the software or the use or other dealings in the software.

Refund policy
By purchasing this stack, you agree that your purchase will be available immediately via digital download and that you waive your statutory right of withdrawal.

All purchases are final and refunds will not be provided (we physically cannot un-download or remove addons from your computer).

You are reminded to make use of the free demo version already provided on the website, to fully evaluate this stack for compatibility and suitability before purchase.

Customer support
If you have questions that relate specifically to this stack, you should make contact via the support page. You may also request support via the RapidWeaver forums.