Quantcast
Channel: Optimizely Search & Navigation
Viewing all 6894 articles
Browse latest View live

episerver index content

$
0
0

I am trying to restrict data to be indexed until it is linked to any content. I have followed the following link http://www.herlitz.nu/2017/01/24/index-only-linked-documents-using-episerver-find/.

It works fine until I have the Block which has a content area which stores GenericMedia type items. I have added a debug point in here

ContentIndexer.Instance.Conventions.ForInstancesOf<IContentMedia>().ShouldIndex(x =>
{
    return false;
});	

When I have a local asset for a block then it hits that break point and I can have my logic of checking if there are any refrences for that item. 

BUT when I have a global asset it doesn't hit that break point. I can't have custom logic to check if I should index that item or not. Any help?


Random sort order

$
0
0

Hi guys,

We need to implement random sort order for our application. It should support pagination.

How can we add random sort order to the request?

P.S. I found some solution https://github.com/x2find/Random2Find but it haven't updated. It also throw exseption.

What do you think about this implementation?

Will it works properly with EPiServer Find (now, in the feature)?

Is it good enough according application performance?

I hope for your help

GDPR and EPiFind Tracking

$
0
0

We've been asked some questions about the tracking that is used when enabling statistics in EPiFind:

/page/in/searchresults/?_t_id=<ID>&_t_q=<mysearchterm>&_t_tags=langu-age:sv,siteid:<guid>&_t_ip=<XX.XX.XX.XX>&_t_hit.id=<NameSpace>/_68d3ab17-d83c-4f64-ae14-288a48d3ffd0_sv&_t_hit.pos=2

These are visible on links in the search results whenever we enable the Track clicking:

SearchClient.Instance.Statistics().TrackQuery(...)
SearchClient.Instance.Statistics().TrackHit(...)

The main issue here is the namespace and the IP-adress which can, contain sensitive information and our customer asked us to remove at least the IP-address. But this will break the tracking.

Can we send the trackingdata on the backend side in some programatic way so we can keep the URL clean? One idea was to make an async call to the above URL after user clicked but wondered if there was a more elegant way?

Working with find 13.X.X

$
0
0

Hi Team,

We are working on find upgrade process. Find 13 has included language routing. How to set the find routing language globally to pass the site current language (we have en, Es langs) when using filters, and global search. I have another doubt also, Is indexing need any changes(i mean any code changes)?

Advance Thanks,

How to use find language routing to custom find index models?

$
0
0

Hi Team,

We are working on epi find upgrade v-13. The new language routing is added to the find entry if the content implements ILocale.

But we are not using a variation or page data instead of using a customized index model. We are using the below method for build ,

protected override int IndexCatalogEntryDto(IndexBuilder indexer, CatalogEntryDto.CatalogEntryRow entryRow, string defaultCurrency, string[] languages)
        {
. 
.
}

how can I implement the language routing for our customized find model? Is it possible to implement?

Advance Thanks,

Use Fiddler to inspect query sent to find

$
0
0

I am trying to use Fiddler to track the  queries sent to Find. I added the web.config setting to use a proxy as well. But I get an error when I set the proxy: The remote server returned an error: (400) Bad Request. 

Any Idea how I can overcome this, or how do I use Fiddler to track the queries to Find. I have read a bunch of articles here and they mention to use a proxy. Below is one of them I read:

https://world.episerver.com/Modules/Forum/Pages/Thread.aspx?id=147074

TotalMatching shows 0

$
0
0

Hi!

I am new to Find, and I have recently taken over a solution based on Find. We are experiencing a problem with a counter, that works on and off.

 IContentResult<T> result = _findClient.Search<T>(Language.Norwegian)
                .ApplyQueriedSearch(query)
                .FilterByAncestor(rootContentLink)
                .FilterByCategories(categories, categoryMatchOperator)
                .FilterForVisitor()
                .Take(1)
                .StaticallyCacheFor(TimeSpan.FromMinutes(5))
                .GetContentResult();
            return result.TotalMatching;

The property "TotalMatching" shows either correct number, or 0, on and off. The indexing job goes every 2nd hour.

Does anyone have a clue what might be wrong?

Script errors for SearchWithWeights and BestBets

$
0
0

Hi!

I'm trying to implement best-bets but when I try to add one there's a script error:

Unable to load /EPiServer/Find/api/editorialboosting/searchwithweights/ status: 500

After examining the script console there also seems to be an error related to searching with weights:

Unable to load /EPiServer/Find/api/editorialboosting/searchwithweights/ status: 500

Has anyone else experienced this, and if so did you manage to resolve the issue?

We're running EPiServer CMS 10.10.4.0 & EPiServer Find CMS 12.6.2. I guess one alternative would be to upgrade both the CMS and Find.

Thank you in advance!


EPiServer find external crawlers bringing back too much content.

$
0
0

EPiServer Find Version - 13.0.1.0

Hi There,

I am new to EPiServer, EPiServer Find and EPiServer external content crawlers so be gentle.

I am currently working on a new EPiServer project and one of our requirements is to show search results in our new site based on crawled content from the old site.

However, the content that is returned contains all the text from the pgae including menu items, advertising text, hidden text etc. Is there a way to tell the connector to exclude all content that is not in a <p> tag, or exclude all content not within a certain div?

Currently we are getting everything back and then searching for a certain set of words in the excerpt and then excluding all text before that. Unfortunately not all pages contain the set of words, and in the future the client may change the layout of the page causing this solution to break. 

Thank you in advance and feel free to ask any questions.

SearchClient.Instance.Index throws error?

$
0
0

Hi Team,

We implemented find languagerouting for a custom index model.

indexItem.LanguageRouting = new LanguageRouting(Language.English);

When i try to index the model it throws an error.Like below 

   at EPiServer.Find.ClientConventions.CompositeLanguageRoutingConvention.GetLanguageRouting(Object instance)
   at EPiServer.Find.Client.Index(Object objectToIndex, Action`1 commandAction)
   at EPiServer.Find.Client.Index(Object objectToIndex)

Please help me out.

Regards,

Karthik

Edit:

Actually  i am using this method to set an languagrouting

                indexItem.LanguageRouting = new LanguageRouting(findclient.Settings.Languages.GetSupportedLanguage(language));

EPi Find Custom Filter

$
0
0

We have a page that has two properties on them 

1.  Groups - Multi Select List of Attributes that the user needs to see the page in a rollup

2.  Match Type - Single select (All/Any) to match either all or any of the attributes from the Groups field

So take for an example a page that has the following properties set

City - Chicago

City - New York 

City - Los Angeles

Match Type - Any

If I select 'Any' then I match that the users city can be any of the following 3 above.

Howerver, if I have 

City - Chicago

Employee Type - Exempt

Match Type - All

then I match that the users city has to be Chicago and the Employee Type has to be Exempt. 

I had this working with the GetChilldren method but now an trying to rewrite the solution using EPi Find for performance and paging, but I can't get the filter to work. Can someone please assist.

I want to write something like

searchClient.Search<PageData>()
                  .FilterForMatchingGroups()

Thanks,

Mike

Searching in files, but getting the host page as result

$
0
0

Hello,

I'm trying to achieve the functionality in subject. I understand that files are automatically indexed in EpiFind, but when I try to get results I don't get the pages that host these files. I get the files themselves.

Can I achieve the desired behavior in your opinion? I have a content area in the page and some files can be added to it.

Thank you in advance

Fuzzy Search not working with synonyms.

$
0
0

I had .Search() code with 

 .For(query, q =>
{
  q.Query = "*"+query+"*";
})

But it didn't show results for synonyms. If I removed wildcards, I get match for synonym, but now Fuzzy Search is broken.

Whats best practise to enable fuzzy search in Find, without using wildcards in queries?

Index pages with "Fetch content from another content item"

$
0
0

I'm thinking of setting up a site that has the same content under multiple subfolders, and when a search is made, only search in that subfolder and on thoose pages, kind of like this:

  • Startpage
    • Original page 1
    • Original page 2
    • Subfolder 1
      • Page with fetched content 1 (from Original page 1)
      • Page with fetched content 2 (from Original page 2)
    • Subfolder 2
      • Page with fetched content 1 (from Original page 1)
      • Page with fetched content 2 (from Original page 2)

When the visitor is performing a search in "Subfolder" I wan't to the result to be "Page with fetched content 1 or 2" not the "Original page 1 or 2".

Is this possible or will Find only index the "Original page 1" and "Original page 2"?

episerver index content

$
0
0

I am trying to restrict data to be indexed until it is linked to any content. I have followed the following link http://www.herlitz.nu/2017/01/24/index-only-linked-documents-using-episerver-find/.

It works fine until I have the Block which has a content area which stores GenericMedia type items. I have added a debug point in here

ContentIndexer.Instance.Conventions.ForInstancesOf<IContentMedia>().ShouldIndex(x =>
{
    return false;
});	

When I have a local asset for a block then it hits that break point and I can have my logic of checking if there are any refrences for that item. 

BUT when I have a global asset it doesn't hit that break point. I can't have custom logic to check if I should index that item or not. Any help?


Several autocompletes on different parts on website

$
0
0

Epi 11, find 13

How do i implement best different autocompletes for several parts of the website. Any best practice advice?

Example: I don't want suggestions on products if i search in people search, nor get suggestion on reciepies when searching the finance pages search. (just dumb examples)

thx

Pulling in Ektron search results in Episerver via Find

$
0
0

Hello

I'm using the latest version of Find (13.0.1)  and we will soon begin  migrate off Ektron and into EPi 

Our existing Ektron site has been indexed in Find, and we are using it as our search engine for now.  

We have our new episerver intance being indexed into the same index as our Ektron content.

I can't seem to find a way to pull our ektron pages into our new epi search results page. 

I thought I could use unified search, but it is only pulling in content from the Epi side of the index. 

I'm just using a really basic controler that doesn't have any filters applied at this time:

  var viewModel = new SearchPageViewModel(currentPage, q);
            if (!string.IsNullOrWhiteSpace(q))
            {
                var unifiedSearch = SearchClient.Instance.UnifiedSearchFor(q);
                viewModel.SearchResults = unifiedSearch.GetResult();
            }
            return View(viewModel);

Any suggestions as to how I can pull in these search results so we don't loose functionality as we move sites over to Epi?

Typed Search and Best Bets - Example?

$
0
0

Hi!

I have code somewhat similar to the following:

var result = _searchClient.Search<LoremPage>(Language.Swedish)
    .For(query)
    .WithAndAsDefaultOperator()
    .UsingSynonyms()
    .ExcludeDeleted()
    .FilterForVisitor()
    .ApplyBestBets()
    .Track()
    .Filter(x => x.Ancestors().In(searchNodeIds))
    .Skip(firstHit)
    .Take(10)
    .Select(x => searchResultFactory.Create(x))
    .IncludeType<ISearchResult, IpsumPage>(x))
    .IncludeType<ISearchResult, DolorPage>(x))
    .GetResult();

As you can see I've added ApplyBestBets. However, after reading the documentation (https://world.episerver.com/documentation/developer-guides/find/NET-Client-API/searching/Best-Bets/) I'm somewhat confused as to how I can get typed search to play well with Best Bets.

Can someone provide an example on how to work with Best Bets for typed search? Is it even possible or do I have use UnifiedSearch?

Any help would be appreciated!

EPiServer 10.10.4.0
Find 12.6.2.0
Searching CMS-content and some content pulled from outside the CMS

FIND-3565

Epi customFilter + WithinDistanceFrom

$
0
0

Hi all!

I'm struggling to find a solution for my custom filter. I need to search through the objects where every object has a collection of GeoLocations. I need to check the items of the collection and grab the object which has at least one GeoLocation in defined radius. I need something like this (request is wrong):

  FilterBuilder = SearchClient.Instance.BuildFilter<FaVPractice>().And(x => x.GeoLocations.Where(n=>n.WithinDistanceFrom(location, radius)));

Thanks in advance!

Viewing all 6894 articles
Browse latest View live