
msCatalyst
Faceted filter, search and catalog sync for miniShop2 and MiniShop3
- MODX 2
- MODX 3
- miniShop2
- miniShop3
- PHP 7.2


Before version 1.2.0 the component was called msFacets.
mscatalyst_search_log setting (on by default) turns the log off.MsCatalyst::markStale($modx) for imports outside MODX.table mode index files are written to a temporary file and renamed, so nobody reads a half written file.memory index older than mscatalyst_cache_lifetime is rebuilt in the background like a stale one. An index the MODX cache refuses (Memcached 1 MB limit) goes to files with a warning in the log. Waiting for another request's build lasts twice the last build time, 60 to 300 seconds.connector.php takes parents, facets and searchFields only with the new mscatalyst_rest_params setting, and only miniShop2 categories as resource. lang must be a site language. Search uses the first 8 words, live search the first 100 characters. The public demo admin builds test indexes only with the search fields and catalogs of the site.Retry-After pauses last 30 seconds at most, two starts of one profile at the same moment create one run, a rollback in progress blocks new runs.mscatalyst_sync_keep_days (90) are deleted, the three latest runs of a profile stay.mscatalyst_search_log_days (365) are deleted.mscatalyst_cache_lifetime seconds.&lang, the Localizator URL or the context culture (Babel). It is part of the index cache key and is passed to AJAX requests.&langStrict=`0` shows products without a translation with their original fields.mscatalyst_value_<key>_<value>.|title= in the call.&hideUnavailable (on by default) hides values and groups without products.&scrollOnUpdate and &scrollOffset: turn off the scroll to the results after "Show results" and page links, or set the top offset for a sticky header. The default offset is 16px instead of 100px.mscatalyst_seo_mode = native) cover the whole visit: the address bar, pagination, remove icons, "Clear all", Back and Forward show /catalog/vendor-nike/color-red/. GET filters and values in another order get a 301 to the one URL. A catalog on the start page and Localizator language prefixes work too.mscatalyst_seo_index_max selected values (2 by default) stay indexable. Ranges, search, sorting and more values get noindex.mscatalyst.canonical placeholder holds the full URL with scheme and host, ready for <link rel="canonical">./catalog/white-sneakers/) for filter combinations with their title, H1, description and HTML above and below the products. Old friendly paths and GET filters get a 301 to the own URL, the sitemap lists it.{color}, {color.title}, {total}, case and letter case modifiers, conditions {?size}…{/size}.:gen, :dat, :acc, :ins, :pre, :about, :plural_gen and others) plus :where, :to, :from. A hand-written nominative form replaces the stored value.:gen gives "буровых установок", :pre gives "буровых установках". Vendor names keep their nouns as they are.noindex) and the mscatalyst_seo_empty setting for pages without products.&catalog it works on any page of the site. Placeholders mscatalyst.intro and mscatalyst.text, AJAX updates [data-msc-intro] and [data-msc-text].sfLink, sfMenu and sfSitemap calls in templates, chunks and resources are rewritten to msCatalyst snippets after a preview. The original text is kept and can be put back.mscatalyst_seofilter_placeholders setting: sf.title, sf.h1, sf.description, sf.text and other sf.* placeholders on filtered pages, so templates built for SeoFilter keep working. The import turns it on.msCatalystSitemap with &catalogs: one sitemap for every catalog the site has rendered, placed on any page.msCatalystSync snippet for cron.msCatalystDemoAdmin public demo admin.Server-Timing header.filter, page, live, live+page, a search snippet with suggestions.memory, table, auto.