A filter can be included in the search in the output to let users narrow their search based on “concepts” that you have inserted into topics. Concepts are simply markers that you insert into topics that have some kind of relationship with each other. They are also used for inserting concept links into topics (such as the “See Also” links).

Let’s say you have a project that contains topics referring to “Numbers”, “Letters” and “Colors”. When your user searches for content in the output, the search can potentially find matches in all of the topics in the project containing information on Numbers, Letters and Colors. Search Filters allow your user to select a ‘concept’ from a drop-down to automatically narrow the search down to content containing only the information that they need.

HTML5 Output

This feature is supported in DotNet Help, WebHelp, AIR and HTML5 outputs.

How To Do It

The steps to include Search Filters in your output are pretty easy.  The first thing that you will need is a project with some content. We have linked to a sample project that you can use to follow along: Search Filters Sample Project. Note: You will need to have Flare V8 installed to use this project.

Let’s get the workspace set up to make things a little easier:

  1. View the Content Explorer in Files mode. To do this click on the Hide Folders button in the Content Explorer. Your Content Explorer should look like the image on the right:
    Content Explorer Files View
  2. Then we want to view the Concept Window: View > Concept Window.  Your interface should look something like this, the concept window is on the right:
    Interface with Concept Window

Adding Concepts to Topics

Now that the interface is set up, you will want to start adding concepts to the project, then add them to the topics.

  1.  Right-click in the bottom pane of the Concepts Window and select Add Concept and name it “number”.
    Add Concept
  2. Repeat the above step and create two more concepts; one named “letter” and one named “color”. The bottom pane of the Concepts Window should look like this:
    Concepts
  3. In the Content Explorer (Files View), double-click the “Colors” folder. Use the [Shift] key to select all of the .htm files and drag them to the Concept Window concept “color”.
    Applied Concepts
  4. In the Content Explorer, click the Up button Up Button to go to the parent folder. Now double-click the “Letters” folder, select the topics and drag them to the “letter” concept in the Concept Window. Repeat for “Numbers”.  Your Concept Window should look like this (you may have to click the “+” to see the topics assigned to each concept).
    Concepts All Applied
  5. Save All…

If you want, you can now change the Content Explorer back to Folder View by clicking the Hide Files icon Hide Files in its’ toolbar.

Creating a Search Filter Set

  1.  Go to the Project Explorer and right-click on the Advanced Folder.
  2. Select Add Search Filter Set
  3. Name the search filter set “SFS” and click Add
  4. Click on “My Subset” and type “Numbers”
  5. Click in the Concepts column to the right of where you just typed and select “number”.
  6. Click the right arrow so that the concept “number” is moved to the Selected Concepts control and click OK.
    Select Concept for Search Filter Set
  7. In the Search Filter Set Editor, click the New Item button (or right-click) and create a new Filter Name for “Colors” and assign it to the color concept as we did above for Numbers. Now create another for Letters and assign the concept letter.  Your Search Filter Editor should look like this:
    Search Filter Set Editor
  8. Save All…

 Apply the Search Filter Set to the Target

  1.  In the Project Explorer, open the Targets folder.
  2. Double-click the MyHTML5 target to open it in the editor
  3. Go to the Advanced tab and scroll down to the Search Filter section in the UI
  4. Select the search filter that we created in the steps above: “SFS”
  5. Save All… 

Generate and View

Now that all of the setup is complete and the search filter set is assigned to the target, you can generate and view the results.

  1. Using the output from this sample do a search for “replace”. Notice that there are 19 results found.
  2. Select the drop-down next to the search field and select “Numbers”.
    HTML5 Output
  3. Notice that the results we filtered to just show the results that have the “number” concept assigned to it.  It should show only 5 results, all of which are “Number” topics.

 

About The Author

Jose Sermeno

About Jose Sermeno

With over 10 years of experience in the software industry, Mr. Sermeno brings a wealth of knowledge and expertise to the product evangelist team, helping introduce new users to everything MadCap Software. In his spare time, Jose is the Project Director for San Diego City Robotics, the San Diego community college systems robotics program, and enjoys working in software design and open source hardware development. Prior to joining MadCap in late 2010, Jose ran a Drupal development shop, and was an application manager for Temple University Health System.

Last Modified: October 16, 2014

This entry was posted in HTML5, MadCap Flare, MadCap Software, Tips & Tricks, Tutorials and tagged , , , . Bookmark the permalink.

Comments

  • steve arrants October 10, 2012 at 6:22 AM

    How do you get this to work with merged projects and HTML5 output?

    • MadCap Simon October 11, 2012 at 9:12 AM

      This should work in HTML5 Outputs. Please make sure you have a Search Filter in the parent project (at least one).
      Here is a sample project out support staff just made and uploaded:
      http://ts.madcapsoftware.com/downloads/test/HTML5Filters/Content.htm
      Content is the parent project.
      Cars and fruit are child projects.
      Search for ‘Delete’. Use the filters to break them down per project.

      In the example, we linked to the child Flare Projects and Targets in the TOC Properties.
      Each Project has its own concept and searchfilterset.
      Parent Project uses concept “Content”
      Fruit Project uses concept “Fruit”
      Cars Project uses concept “Cars”

      Hopefully this helps. If not, please feel free to contact support:
      https://www.madcapsoftware.com/feedback/bugs.aspx
      They should be able to figure out what is happening if you are still having issues.

  • magnus franzen April 16, 2013 at 2:11 AM

    Is there a way to apply more than only ONE search filter every time you filter?
    scenario: I want to see topics with colors and letters so I choose both and then do the filtering.
    I don’t want to combine colors and letters into one filter set, I simply want to be able
    to filter on more than one filter at the same time.

    Is this possible at all in Flare 8, maybe 9? maybe there is some programming involved to solve it?

    • Jose Sermeno Jose Sermeno June 27, 2013 at 11:59 AM

      At this time there is not a way to combine Search Filters from Flare v9, but I’m taking your suggestion to our product team as an enhancement request. Since you’re feeling adventurous with the output code, while this is currently unsupported by us, I can point you in the right direction to get started. First, make sure you have the option to “Condense JS files” unchecked in the performance tab of the target. You’ll need to modify the ApplyFilter method of MadCapSearch.js to enhance the function. From there you should be able to identify the related files that determine the list of concepts accessible from the filter. You’ll have to modify the output each time, or use the dev tools of your browser to find out what files to modify, and all source .js files that you need to edit can be found in C:\Program Files (x86)\MadCap Software\MadCap Flare V9\Flare.app\Resources\WebHelp2\Desktop\Scripts . You’ll then of course need to modify the skin UI files to include a toggle to select what filters you’re including in your search.

      • Kristy James February 2, 2017 at 5:10 AM

        Hi all,
        I was wondering whether there has been any progression on this feature since 2013. I think it’s a great idea and I’d love to use it in my project. Is it planned for any future releases?

  • Ed Phipps November 25, 2015 at 5:53 AM

    Search filters work for WebHelp 1.0 too, but only within the project – not in a runtime merged project – any filter removes everything. (The same runtime merged project works fine with a WebHelp 2.0 / HTML5 target.) This is with Flare 10.2.2; if it’s been fixed in 11.x I would finally have sufficient reason to upgrade….

  • Ruth Howard April 7, 2017 at 3:44 AM

    How can you make the search results report include the name of the filter used? Like:

    Your search for “material” returned 132 result(s) from “All Topics”

    or

    “Your search for “material” returned 132 result(s) from Administration.”

    Is there a variable I can set in the Search Heading for the UI Text in the search results skin (responsive output). In tripane the filter used remain selected and displayed so it was easy to tell which one was used but in responsive just the filter button changes and I don’t know what I’ve filtered on anymore.

    Alternatively can a style be set up to make the selected filter have some sort of highlighting?

    • Jennifer Morse Jennifer April 13, 2017 at 11:24 AM

      Hi Ruth, currently this is not supported in Flare, but it is a fantastic feature suggestion, and I have submitted this to R&D on your behalf.

  • Ashish June 6, 2017 at 6:43 AM

    Hi,
    I have a question. Let us suppose I have merged 3 projects, out of which content for 2 projects are almost the same with minor differences here and there. So when we give a search with “All Files” as filter, it would bring the a topic twice since 2 projects have almost the same content. Is there a way to show in the output result set, that this result set was rendered from the first project and the other one got rendered from the second project. The moment we click on search, the result set should show the source from where it got rendered….Is there any way to achieve this? Please help and guide

    • Justin Bondoc Justin Bondoc June 13, 2017 at 12:02 PM

      Hi Ashish,
      Currently this is not supported in Flare. I can potentially see this being implemented by displaying the target name with the search result when using run time merge. I’ll submit an enhancement request to R&D on your behalf.

      • Valerie Beaubien July 8, 2017 at 6:32 AM

        I have a similar need and would really like this enhancement.
        In a related matter, I’d like to separate the search bar into separate filter and input box components, such that the user can see the dropdown filter selection. For example if the user searches for “can opener” in Widgets, the filter selection (Widgets) appears in the bar, or at least in close proximity to the search expression:
        can opener | Widgets v
        Is this currently possible with some scipting and/or styling? I’m currently using Flare 12, and expect to upgrade this year.

        • Justin Bondoc Justin Bondoc July 11, 2017 at 12:45 PM

          Currently this can’t be set within Flare. I’ve added an enhancement request for the ability to set this. While it isn’t available out of the box, it is possible you may be able to accomplish this using your own custom scripting.

      • Ashish July 11, 2017 at 8:41 AM

        I think I have found a workaround for this problem and probably appears the best available solution for the above mentioned problem. Create a h1.hidden tag in your stylesheet with visibility property set to Hidden.

        h1.hidden
        {
        visibility: hidden;
        }

        Then go to your topic, which has an existing h1 as (say) Troubleshooting. Apply h1.hidden tag to the same content that h1 has – say Troubleshooting – Project 2 and create it before the h1 tag. Now when you generate the output, h1.hidden tag content will never get displayed in the online output, but when you give a search for Troubleshooting under the filter “All Files”, h1.hidden tag gets showed up in the search since the search function brings in all the non-XHTML files as well. But important point to note here is that, h1.hidden tag content should always be placed before the h1 tag content for the search engine to pick up the h1.hidden content instead of h1 content in the topic. The problem is resolved by doing so…..Hope this helps.

Have Something to Say?

Your email address will not be published. Required fields are marked *