Search Improvements

Search Improvements 2.13.1

No permission to download
  • Fix "Push "View X by others" option being disabled would cause some user information to not be indexed, which had the implicit "rebuild search index" if this setting was then enabled.
    • This fixed conversation search when using Conversation Improvements v2.4.x+
    • Requires a re-index of at least conversations/conversation messages to re-add the missing information.
    • For most sites, disabling the "Push "View X by others" check into XFES" option is not recommended
  • Fix error "Object of class XF\Mvc\Reply\View could not be converted to string" when a user is denied search tries to use search
  • Workaround XF bug where a search type parameter was not validated as being allowed for a search handler
  • Workaround XF bug where a search could be constructed which targeted the parent (ie thread) content type and not the child (ie post) content type resulting in potentially degraded search results
  • Replace search/member search with a redirect to a standard search with the appropriate parameters entered. Stock XF member searches are slightly specialized and the general search is missing several features to support normal search being a strict super-set of member search.
    • XF lacked a "search only X" per search tab that this add-on injects
    • XF would target the parent type and didn't figure out the child type
  • Force a search without a query string to render it as * which allows member searches to be edited/refined
  • Redirect to XFES configuration page if XFES isn't configured instead of the search index list
  • Show basic statistics on the search index list page
  • Fix additional XFES index page would show even when XFES was not installed/active
Thanks to @NamePros for sponsoring this update.
This add-on is now available on atelieraphelion.com

This update will require a full search rebuild, truncating the index before re-indexing.
  • Require Standard Library by Xon v1.18.0+
  • Workaround for XF bug where the search URL did not contain the various query string arguments, causing issues when the URL was shared
  • Workaround for XF bug where the search ownership check wasn't strict enough
  • Workaround for XF bug where a user's recent content had a "view more" link which rendered even if the visitor didn't have permission to search
  • Move some permission handling code into StandardLib so it has a common hook point
  • Fix edge case where XFES is installed by not enabled causing XFES-only code-paths to be triggered
  • Fix reporting search terms without phrases on the results page return false positives
  • Fix various search result terms missing phrases, bad rendering of links
  • Fix pushing viewable ticket category constraints into ElasticSearch for NixFifty's Tickets add-on
  • Search result terms are now sorted to pull known important bits first
  • Add various helper functions & template macros for writing search criteria
  • Improvements which require ElasticSearch (aka Xenforo Enhanced Search)
    • Support for ElasticSearch Essential's "container only" search term result criteria
    • Tickets:
      • Search by min/max number of replies, sort by number of replies
      • Search by ticket participants
  • Fix searching by member without a keyword for a guest
Thanks @NamePros for sponsoring this update
  • Fix cached search results would be unexpectedly be viewable to anyone if they guessed the search result URL.
    • Affected versions; v2.8.1
    • These search URLs expire after a day
  • Fix search term on search result pages leaking information for non-viewable content
    • Affected version; v2.7.4, v2.7.5 and v2.8.1
    • Fix leaking thread title when using "In thread" search area, and rendering a bad phrase if the thread doesn't exist
    • Fix linking to non-active user profiles when searching by members
  • Workaround for an XF bug where the cached search results for a member search could be directly shared with a guest
    • Non-visible items on the result page where not rendered, but this does leak that there are hits in not viewable to guests areas.
  • Like
Reactions: vwts
Thanks @NamePros for sponsoring this update
  • Fix "before" search result term would print an integer instead of a human readable yyyy-mm-dd formatted string
  • Change 'no results found' handling to display search terms on the relevent page
    • If using ElasticSearch Essentials, recommend updating to v3.13.0+ as this change may impact some options which display on no results found.
  • Fixes for search term on results page
    • Add missing "With X thread" search term
    • Fix "Users" search term could fail to render the list of usernames
    • Add the 'content type' search term
  • Like
Reactions: imno007 and VBX Co
  • Remove usage of utf8_* function(s), and use native php multi-byte functions instead.
  • Fix HTML markup error in svPushViewOtherCheckIntoXFES option description
  • Fix bug where 'weight by content type' feature didn't work as expected in general search
  • Thanks to @NamePros for sponsoring this update.
  • Display various search term constraints on the search results form.
    For developers to implement support in 3rd party add-ons:
    • Each search constraint needs a svSearchConstraint. prefixed phrase.
      Arrays are mapped to phrases by adding a _ for each sub-array/key as such; c[warning][points][lower] => svSearchConstraint.warning_points_lower
    • Each search order needs a svSearchOrder. prefixed phrase.
    • Extend XF\Entity\Search::getSpecializedSearchConstraintPhrase(string $key, $value) to provide custom phrase handling (ie node names)
    • Extend XF\Entity\Search::formatConstraintValue(string $key, $value) to provide custom formatting.
    • Extend XF\Entity\Search::setupConstraintFields to populate $svDateConstraint/$svUserConstraint/$svIgnoreConstraint properties which control formatting
  • Use the debug option "List all unphrased search constraints" which will dump unmapped contraints to search results page.
Top Bottom