Skip to content

Commit 6a967c9

Browse files
authored
Merge pull request #25 from AddSearch/parameter-for-hierarchical-facets
add parameter for hierarchical facets + README.md for analytics tagging
2 parents 1c73edd + f22b0f2 commit 6a967c9

File tree

4 files changed

+17
-1
lines changed

4 files changed

+17
-1
lines changed

README.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -298,6 +298,16 @@ as every keystroke would fire a statistics event
298298
client.setCollectAnalytics(false);
299299
```
300300

301+
#### Set a tag for analytics events
302+
Defines a tag associated with all analytics events reported by the client.
303+
These tags will be available as filters in the AddSearch Analytics Dashboard.
304+
You can use tags, for instance, in A/B testing to compare which search UIs are most effective.
305+
Splitting the analytics with tags may also provide insights to the behaviour of audiences on different websites.
306+
```js
307+
// Specify a tag for analytics events (the maximum length is 50 characters)
308+
client.setAnalyticsTag('Navigation search');
309+
```
310+
301311
### Personalization
302312

303313
#### Set user token (for personalized search results)

src/apifetch.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,8 @@ var executeApiFetch = function(apiHostname, sitekey, type, settings, cb, fuzzyRe
8383
settingToQueryParam(settings.numFacets, 'numFacets') +
8484
settingToQueryParam(settings.cacheResponseTime, 'cacheResponseWithTtlSeconds') +
8585
settingToQueryParam(settings.searchOperator, 'defaultOperator') +
86-
settingToQueryParam(settings.analyticsTag, 'analyticsTag');
86+
settingToQueryParam(settings.analyticsTag, 'analyticsTag') +
87+
settingToQueryParam(settings.hierarchicalFacetSetting, 'hierarchicalFacets');
8788

8889
// Add custom field filters
8990
if (settings.customFieldFilters) {

src/index.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,7 @@ var client = function(sitekey, privatekey) {
154154
this.setSuggestionsSize = function(size) { this.settings.setSuggestionsSize(size); }
155155
this.setAutocompleteSize = function(size) { this.settings.setAutocompleteSize(size); }
156156
this.addFacetField = function(fieldName) { this.settings.addFacetField(fieldName); }
157+
this.addHierarchicalFacetSetting = function(setting) { this.settings.addHierarchicalFacetSetting(setting); }
157158
this.addRangeFacet = function(field, ranges) { this.settings.addRangeFacet(field, ranges); }
158159
this.addStatsField = function(field) { this.settings.addStatsField(field); }
159160
this.setNumberOfFacets = function(numFacets) { this.settings.setNumberOfFacets(numFacets); }

src/settings.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,10 @@ var settings = function() {
164164
}
165165
}
166166

167+
this.addHierarchicalFacetSetting = function(setting) {
168+
this.settings.hierarchicalFacetSetting = JSON.stringify(setting);
169+
}
170+
167171
this.addRangeFacet = function(field, ranges) {
168172
if (!this.settings.rangeFacets) {
169173
this.settings.rangeFacets = [];

0 commit comments

Comments
 (0)