agentsclimarketplace

Jsf overview

Skill Lonsdale201/wp-agent-skills/jetsmartfilter/jsf-overview

Map a JetSmartFilters integration to the correct filter, provider, query ID, listing, frontend event, or extension API. Use when planning or reviewing JSF compatibility, diagnosing a filter that targets the wrong listing, choosing between JSF Listing hooks and a custom provider, or encountering JetSmartFilters, JetSmartFilterSettings, jsf-listing, content_provider, or jet-smart-filters hooks without knowing which layer owns the behavior.From its SKILL.md

Install
npx -y skills add Lonsdale201/wp-agent-skills --skill jsf-overview

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 21 stars21 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

4.1 KB, 762 tokens by cl100k_base, as published. Nobody here has run it

JetSmartFilters integration map

Use this as the router for JetSmartFilters work. Keep a single identity pair, provider/queryId, from the filter controls through the request and the rendered listing.

Mental model

filter control -> filter group (provider/queryId) -> parsed query args
               -> provider renders content -> frontend replaces/inserts DOM
LayerOwnsUse
FilterUser input and query-variable mappingExisting JSF filter types and their settings
Filter groupAll controls targeting one provider/query IDFrontend state, AJAX, pagination, active filters
ProviderLocating and re-rendering the target HTML/dataBuilt-in provider or a registered custom provider
QueryTurning filter values into query argumentsListing-specific filters or JSF query hooks
ListingInitial query, item card, pagination statisticsJSF Listing, JetEngine Listing Grid, Woo archive, or another supported renderer
Frontend eventsLoading state and post-render compatibilityjsf-frontend-events

Choose the narrowest extension point

  • Configure a normal JSF Listing: use jsf-listing-integration.
  • Run JavaScript when AJAX starts or finishes: use jsf-frontend-events.
  • Modify which records a listing returns: use jsf-query-hooks.
  • Expose an unsupported renderer or data source: use jsf-custom-provider-query.
  • Do not create a custom provider merely to add one query condition. Providers own DOM replacement; query hooks own record selection.

Identity rules

  • A provider ID identifies a renderer, not a specific widget. The native JSF Listing provider is jsf-listing.
  • The query ID identifies one instance of that provider. JSF defaults missing IDs to default.
  • Every filter, pagination control, active-filter control, and listing intended to work together must resolve to the same pair.
  • Two listings using the same provider need distinct query IDs. Otherwise requests, stored defaults, props, and frontend groups can collide.
  • Scope PHP and JavaScript integrations by both values whenever both are available.

Compatibility workflow

  1. Record the plugin version and the target renderer.
  2. Inspect the listing's provider and query ID in rendered attributes and window.JetSmartFilterSettings.
  3. Verify the filter's content provider, query ID, apply type, and query variable.
  4. Confirm the initial query works before testing AJAX.
  5. Inspect the jet_smart_filters request and JSON response.
  6. Verify DOM replacement, pagination props, empty results, rapid changes, and browser history.
  7. Re-test source-derived hooks after a JSF upgrade; the frontend event bus is shipped in a minified bundle and is not a WordPress core API.

Source-verified boundaries

The public frontend script is enqueued only when a filter marks JSF as used. JetSmartFilterSettings then contains provider selectors, default queries, provider settings, and pagination props. A companion script must therefore feature-detect window.JetSmartFilters and should load only on pages that use filters.

References

Verified against JetSmartFilters 3.8.3.1 source:

  • jet-smart-filters.php:151-219,225-299
  • includes/filters/manager.php:22-112
  • includes/data.php:198-228
  • includes/providers/manager.php:78-146
  • includes/providers/jsf-listing.php:33-220
  • assets/js/public.js

What ships with it: 1 file

286 B alongside SKILL.md

agents/

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.