Search limits

This topic contains 4 replies, has 2 voices, and was last updated by nazar nazar 5 years, 4 months ago.

Viewing 5 posts - 1 through 5 (of 5 total)
  • Author
    Posts
  • #11831
    nazar
    nazar
    Participant

    Hey Ernest,

    I’m trying to make some sense with General Options > Limits settings.
    Right now I have all options set to defaults, so all live search ones are set to 10 (I’m only using live search ATM).

    Now, with the above setup it looks like the plugin will “do it’s best” to pull the minimum of 10 results. Please, have a look at the home page of the website I provided.
    Let’s search for “pasadena” – all search results will be tax terms, so it’ll give 4 results. But try “california” – it starts returning CPT posts. Yes, they are in California (it’s Listify theme, all geolocation and geocoding happens in custom fields). One one side, there’s no sign of “california” in titles, on the other side there’s a lot more posts in California if it’s somehow trying to “be smart” or something.

    P.S. That said, I’m not sure if this behavior actually has anything to do with search limits, it’s just my wild guess.

    Any ideas? 🙂

    #11839
    Ernest Marcinko
    Ernest Marcinko
    Keymaster

    Hi,

    For the regular engine and the non-CPT search scripts the limit does not change anything at all. It’s basically just a number that tells where to stop the query, and cut the results list. In these cases there will be no difference in results, no matter how big or small the number is.

    In one special case however this has an effect: Index table + Custom field filters

    The index table in general works differently. It would be hard to explain the exact method, but basically there is a general limit set to 20 000 rows per search. After that this raw row data is processed and ordered multiple times, then cut at the user defined limit.

    However if custom field filtering is introduced, it very much affects the performance of the query, and the general limit must be lowered. The exact calculation of it is 400xUser Limit. So in case of 10 results it’s 4000. Meaning that the after the search only the first 4000 raw keyword matches are considered. The lower the user limit is, the lower the number of the general matching gets. This is usually more than enough is every case I have ever seen, and affects the performance very positively.

    Things to look out for
    1. !!! Search cache !!! -> You have it enabled, and it does not automatically clear every time you save the plugin options. When experimenting, I highly recommend turning it off, otherwise you might get the same results every time for the same keyword.
    2. Keyword logic -> This affects the search results greatly. A more restrictive logic will yield much less results. Using a more restrictive logic as primary, and a less restrictive as secondary usually is the best idea. However for the best performance I recommend using only a primary logic.
    Example 1, AND primary, fill with OR: https://i.imgur.com/rYvxGyh.png
    Example 2, AND primary, no secondary (better performance): https://i.imgur.com/65vTDsY.png
    Example 3, AND exact + AND, very strict, very precise (lower performance): https://i.imgur.com/fXIbWuV.png

    Best,
    Ernest Marcinko

    If you like my products, don't forget to rate them on codecanyon :)


    #11840
    nazar
    nazar
    Participant
    You cannot access this content.
    #11845
    nazar
    nazar
    Participant
    You cannot access this content.
    #11846
    nazar
    nazar
    Participant
    You cannot access this content.
Viewing 5 posts - 1 through 5 (of 5 total)

You must be logged in to reply to this topic.