Blog Sections Open

Speeding Up AJAX Teacher Filters in Evolution CMS with Cached TV Logic

How to make AJAX filters faster when multiple TV checks make the original listing too expensive.

TV-heavy AJAX filtering can become surprisingly expensive in Evolution CMS, especially when each request forces several TV reads across a medium-sized dataset. In the reported case, an AJAX teacher filter was taking far too long because every request rebuilt the output from scratch.

The eventual solution was practical: replace the expensive generic query with a more explicit resource loop, evaluate the relevant TV conditions directly, and cache the finished output by filter combination.

That is a good pattern whenever the filter space is relatively small but the frontend requests repeat often. Instead of paying the full selection cost on every request, you generate the HTML once for each filter pair and reuse it.

This is a strong Evolution CMS lesson because it shows when it is worth stepping outside the generic snippet path and owning the data loop yourself.

Newer post

Filtering getResources by a TV That Matches the Current Resource in Evolution CMS

How to filter getResources results by a TV value that should match data from the current resource, and why direct placeholder substitution can fail.

Older post

Sorting getResources by an Integer TV Value in Evolution CMS

How to make getResources sort numerically by a TV instead of treating numeric values as plain text.