Module Assessment | Yext Hitchhikers Platform

loading
You must include a first name and last name in your profile to create challenge environments.

Background

In the last challenge, you set up three verticals for the experience. Now that you have content to search on and return, you’ll configure settings that apply to the search as a whole. This includes:

  • Synonyms - You realize the one-way synonym from location → restaurant you created earlier should really be a synonym set as the words are interchangeable.
  • Query Rules - Marty Morris, the CEO, was just demoing this experience to his team internally and has some feedback for you. When users input any query containing the term “turtlehead”, he wants the FAQs vertical to appear first, so that users can learn more about the brand. Since this is not how the algorithm would return results organically, we can use query rules to boost the FAQ vertical.
  • Query Suggestions - Your main goals for search are for people to find restaurants, hear about new events, and get answers to commonly asked questions. You’ll add universal and vertical prompts that reinforce to users what they can search for in this experience and cover all three verticals.

Your Challenge

Step 1: Synonyms

  1. Navigate to Search > Brand Search > Synonyms.
  2. Remove the two one-way synonyms you created in the Search Config Overview challenge by clicking the trash can icons next to them. Users aren’t actually searching for “food joint” so we can leave that off, but we’ll want to turn location → restaurant into a synonym set.
  3. Create a synonym set with the terms “restaurant” and “location”.

    • To do this in the UI, click + Add Synonym Set under the Synonym Sets section and type in each term. Be sure to press enter after each term to signal the end of the term.
    • To do this in the JSON editor, navigate to the Edit as JSON screen. Find the synonymSet array within the synonyms object and add the terms within a nested array. It should look like this:

      "synonyms": {
        "oneWay": [],
        "synonymSet": [
          [
            "restaurant",
            "location"
          ]
        ],
        "normalization": []
      },
  4. Click Save.

  5. Run a test search for “locations” again. Note how restaurants are now returned!

Step 2: Query Rules

  1. Navigate to Search > Brand Search > Query Rules.
  2. Run a search for “turtlehead”. Note how Restaurants are returned first, then FAQs and Events.
  3. Add a query rule with the criteria search term contains “turtlehead” and action boost the FAQs vertical.

    • To do this in the UI, click Add Query Rule.
      1. Fill in the Name as “Boost FAQs for Turtlehead Search Term”.
      2. For Criteria, click the + Add Criteria dropdown and select Search Term contains all. Type in “turtlehead” and press enter.
      3. For Action, click the + Add Actions dropdown and select Boost Verticals. Click the + Add Vertical dropdown and select FAQs.
      4. Then click Save Query Rule.
    • To do this in the JSON editor, navigate to the Edit as JSON screen. Find the rules array and add an object with the properties above. It should look like this:

      "rules": [
        {
          "criteria": {
            "searchTermContainsAll": [
              "turtlehead"
            ]
          },
          "actions": [
            {
              "actionType": "BOOST_VERTICALS",
              "verticals": [
                "faqs"
              ]
            }
          ],
          "name": "Boost FAQs for Turtlehead Search Term"
        }
      ],
  4. Click Save.

  5. Run a test search for “turtlehead” again. Note how FAQs are now returned first.

Step 3: Query Suggestions

  1. Navigate to Search > Brand Search > Query Suggestions.
  2. Click into the search bar on Test Search. Note how no hardcoded prompts come up when you first click into the search bar (but you’ll see your recent search for “turtlehead”). No prompts appear when you start typing either. This means you don’t have any prompts yet!
  3. Add universal and vertical prompts to the config. You can do so either in the UI or the JSON Config Editor. We’ll provide details of what suggestions to add and then instructions for each approach.

    Add the following universal prompts:

    • Restaurants near me
    • Do you offer delivery?
    • Events
    • Do you sell gift cards?

    Add the following vertical prompts for the FAQs, Events, and Restaurants verticals, respectively:

    • FAQs:
      • [[name]]
    • Events:
      • [[name]]
    • Restaurants:
      • Restaurants near me
      • Restaurants in [[address.city]]

    To do this in the UI, fill out the prompts in the “Universal Prompts” and “Vertical Prompts” tabs. Click + Add a Universal/Vertical Prompt for each prompt you want to add and fill in the textbox. Note: for vertical prompts you’ll need to toggle between each vertical.

    To do this in the JSON editor, navigate to the Edit as JSON screen and find the querySuggestions object. Copy the below snippet and paste into the JSON editor to achieve the above prompts:

      "querySuggestions": {
        "popularQueriesBlacklistedTerms": [],
        "universalPrompts": [
            <insert prompts>
        ],
        "verticalPrompts": {
          "faqs": [
            <insert prompts>
          ],
          "events": [
            <insert prompts>
          ],
          "restaurants": [
            <insert prompts>
          ]
        }
      },
  4. Click Save and wait a bit for the prompts to index. You may need to refresh the page.

  5. Click into your Test Search in the configuration UI. You should now see your universal prompts appearing in the dropdown menu! Start typing “wh”. You’ll see prompts generated from your FAQ names created by the vertical prompt [[name]] for the FAQs vertical!

Module Assessment
+<% util.points %> points
loading
Weekly Challenge Streak Weekly Challenge Streak: <% util.streakWeekly %>
You must include a first name and last name in your profile to create challenge environments.
Challenge account expires in <% util.expirationHours > 24 ? Math.round((util.expirationHours * 1.0) / 24) : util.expirationHours %> <% util.expirationHours > 24 ? (Math.round((util.expirationHours * 1.0) / 24) == 1 ? 'day' : 'days') : (util.expirationHours == 1 ? 'hour' : 'hours') %>.
Challenge account has expired. Please create a new account.
Report Card
Add synonym set for restaurant and location
Add a query rule to boost the FAQs vertical
Add at least four universal prompts
Add vertical prompts for FAQs, Events, and Restaurants
Common Issues
Configuration changes not saved or showing a message that there are no changes? expand/collapse module

This is likely because you included an object that was not recognized and the Yext system is removing it from the config and saving any other changes.

If you’re adding something that is top-level, like the synonyms or autocomplete objects, make sure it’s not nested inside of a vertical. Conversely, if you’re adding a searchable field or a saved filter, make sure it is nested appropriately.

Previous Submissions
Attempt #<% submission.attemptNumber %>
<% submission.date %>
Score: <% submission.numericScore %>
Pending