Learn More





DNN Community Blog

The Community Blog is a personal opinion of community members and by no means the official standpoint of DNN Corp or DNN Platform. This is a place to express personal thoughts about DNNPlatform, the community and its ecosystem. Do you have useful information that you would like to share with the DNN Community in a featured article or blog? If so, please contact .

The use of the Community Blog is covered by our Community Blog Guidelines - please read before commenting or posting.

DNNCon 2014 Session: Customizing Your Search Results


Learn how to create customized search results that leverage DNN's lucene index data. At last year's DNNCon, Ash Prasad presented a great session about the newly redesigned search engine in DNN 7.1 and above. He discussed the search architecture, lucene concepts, and the new ModuleSearchBase class for allowing developers to inject data into the index. This year, I want to take the next step of showing developers how to create custom search results that can query the lucene data in very specific ways to present the results exactly the way you, or your client, needs them.

Custom Search Results Module

The Custom Search Results module was built using the Module Creator and uses the Handlebars javascript template framework. Download the zip file ( in the Related Files section on the Main Blog. Follow these instructions to install:


  1. Login as Host
  2. Create a page
  3. On the admin ribbon, select Modules > Create Module
  4. Drop an instance of the Module Creator module onto the page
  5. Enter the following settings:
    • Owner Name: DotNetNuclear
    • Module Name: CustomSearch
    • Language: C#
    • Template: Module - User Control
    • Control Name: View
  6. You should now have a working and registered module in the /DesktopModules/DotNetNuclear/CustomSearch folder. Replace the files in this folder with the ones in the file.

Client-centric Module w/ Search

This module shows off several techniques: knockout/WebAPI front end, ModuleSearchBase implementation, and Lucene search. Follow the instructions to install:

  1. Download the file from the Related Files section below
  2. Unzip the project folder (DotNetNuclear.SearchContent) under the \DesktopModules folder
  3. Open Visual Studio 2012 or 2013 as an Administrator and open the project
  4. Build project in Release mode
  5. Install the \install\*_Install package in Host > Extensions
  6. Create a test page and drop an instance of the module on the page

Prerequisite Training for this session

This is a more advanced topic in module development. Some topics like WebAPI services development, Knockoutjs, ModuleSearchBase, in addition to basic module development are assumed when reviewing this material. If you are not familiar with some of these topics, no problem! I have lots of training videos here and on to get you up to speed.

Essential DNN Module Development
WebAPI Services and Knockoutjs
Other tutorials

Code Downloads

Go to the Main Blog to download the code.


There are currently no comments, be the first to post one.

Comment Form

Only registered users may post comments.


2sic Daniel Mettler (124)
Aderson Oliveira (15)
Alec Whittington (11)
Alex Shirley (10)
Andrew Nurse (30)
Anthony Glenwright (5)
Antonio Chagoury (28)
Ash Prasad (21)
Ben Schmidt (1)
Benjamin Hermann (25)
Benoit Sarton (9)
Beth Firebaugh (12)
Bill Walker (36)
Bob Kruger (5)
Brian Dukes (2)
Brice Snow (1)
Bruce Chapman (20)
Bryan Andrews (1)
cathal connolly (55)
Charles Nurse (163)
Chris Hammond (203)
Chris Paterra (55)
Clinton Patterson (28)
Cuong Dang (21)
Daniel Bartholomew (2)
Dave Buckner (2)
David Poindexter (3)
David Rodriguez (2)
Doug Howell (11)
Erik van Ballegoij (30)
Ernst Peter Tamminga (74)
Geoff Barlow (6)
Gifford Watkins (3)
Gilles Le Pigocher (3)
Ian Robinson (7)
Israel Martinez (17)
Jan Blomquist (2)
Jan Jonas (3)
Jaspreet Bhatia (1)
Jenni Merrifield (6)
Joe Brinkman (269)
John Mitchell (1)
Jon Henning (14)
Jonathan Sheely (4)
Jordan Coopersmith (1)
Joseph Craig (2)
Kan Ma (1)
Keivan Beigi (3)
Ken Grierson (10)
Kevin Schreiner (6)
Leigh Pointer (31)
Lorraine Young (60)
Malik Khan (1)
Matthias Schlomann (15)
Mauricio Márquez (5)
Michael Doxsey (7)
Michael Tobisch (3)
Michael Washington (202)
Mike Horton (19)
Mitchel Sellers (28)
Nathan Rover (3)
Navin V Nagiah (14)
Néstor Sánchez (31)
Nik Kalyani (14)
Peter Donker (52)
Philip Beadle (135)
Philipp Becker (4)
Richard Dumas (22)
Robert J Collins (5)
Roger Selwyn (8)
Ruben Lopez (1)
Ryan Martinez (1)
Salar Golestanian (4)
Sanjay Mehrotra (9)
Scott McCulloch (1)
Scott S (11)
Scott Wilkinson (3)
Scott Willhite (97)
Sebastian Leupold (80)
Shaun Walker (237)
Shawn Mehaffie (17)
Stefan Cullmann (12)
Stefan Kamphuis (12)
Steve Fabian (31)
Timo Breumelhof (24)
Tony Henrich (3)
Torsten Weggen (2)
Vicenç Masanas (27)
Vincent Nguyen (3)
Vitaly Kozadayev (6)
Will Morgenweck (37)
Will Strohl (163)
William Severance (5)
Try Evoq
For Free
Start Free Trial
a Demo
See Evoq Live
Need More Information?