AJAX Search

The built-in search engine utilises AJAX and MySQL's powerful FULLTEXT feature to rapidly return, in real-time, any pages that match your search query.

When you click on a returned result, the visited page will highlight the search terms until one of them is clicked on. Try searching for 'ajax' and clicking on a returned result.

Search results appear here in real-time.

PHP Sidebar

Embed PHP Code

Sidebars can also contain raw PHP code, enabling you to hook into any script, function or include file. This provides limitless scope for extensibility.

The server date and time below is created on the fly using PHP's gmdate() function.

Date and Time: 21/05/13 15:48:13

Code is locked down and secured via multiple mechanisms.

SEO-friendly URLs

What is a friendly URL?

A friendly URL looks like this: http://www.yourdomain.com/about-us

A regular URL looks like this: http://www.yourdomain.com/index.php?pID=1

Friendly URLs are more logical, more memorable and they give search engines something more semantic to get their teeth into.

With a single click, Vanilla can switch between friendly and regular URLs. This is achieved with a cunning mixture of Apache directives and jQuery which converts every relevant link, at runtime, to a friendly one. Compared to many other friendly URL techniques, ours seems to be less hassle, more flexible and more reliable.

How are the URLs constructed?

Whenever a new page is created, it is given a sanitized version of the full title that is entered.  For example:

My Page Name would become my-page-name.

All punctuation and non-friendly characters are replace with dashes.  If a friendly page name is already taken, an incremental number is appended to it  - e.g., my-page-name-1, my-page-name-2 etc.

Deep friendly URLs

When this option is enabled, the friendly page name is prefixed with its parent's friendly name.  For example:

New Products->Weatherproof Torch would become new-products-weatherproof-torch.

Not just the URL...

Vanilla also parses the navigation menu and all the internal links within the current page's content.  If it finds any, it'll convert those to friendly links too.  Coupled with the ability to drop internal links (links that point to another page on your website) into your content with a single click, creating link-rich content which is semantically friendly has never been so simple.  It's surprising how much these small features speed up your overall workflow.

Graceful degradation

If a regular URL (using page ID) is typed into the address bar or if the visitor has JavaScript turned off, the system automatically falls back to using regular URLs. This fall-back also occurs if the page has no friendly title saved (although this should very rarely happen as they are generated automatically - similar to page slugs in WordPress).

Canonicalization

Vanilla tries to provide good canonicalization for its pages.  This is acheived by preventing duplicate content via unique URLs and detecting URLs that point to the same place on the main navigation and breadcrumb trail - e.g. mywebsite.com and mywebsite.com/home.  Every little helps when it comes to SEO.