Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

In CQ's cq:IncludeClientLib, what's the difference between theme and categories attributes?

Tags:

jcr

aem

According to the " rel="nofollow">docs:

categories

A list of comma-separated client lib categories. This will include all Javascript and CSS libraries for the given categories. The theme name is extracted from the request. Equivalent to: com.day.cq.widget.HtmlLibraryManager#writeIncludes

theme

A list of comma-separated client lib categories. This will include all theme related libraries (both CSS and JS) for the given categories. The theme name is extracted from the request. Equivalent to: com.day.cq.widget.HtmlLibraryManager#writeThemeInclude

I am new to CQ and this looks a bit vague to me. What's the difference between these attributes?

like image 704
TheFooProgrammer Avatar asked May 11 '26 09:05

TheFooProgrammer


1 Answers

Suppose you had the following in the JCR: - /etc/clientlibs/grid - /etc/clientlibs/forms - /etc/clientlibs/tables - /etc/clientlibs/tables/responsive - /etc/clientlibs/tables/inverse

categories should pull in a list of un-related Client Libraries. For instance <cq:includeClientLib categories="grid, forms, tables" />

themes should pull in distinct related Client Libraries. Or probably better described as sub-categories. For instance, <cq:includeClientLib categories="tables" themes="inverse, responsive" />

The difference is themes resides inside of a category. tables could contain but "sub-categories" (or themes), but you have a good reason for breaking them out. You want to use your general tables category on ALL your pages & designs, but certain pages would want an inverse display of the tables. Or only certain pages contain responsive tables.

I thought CQ5.5 had better examples in the code, but CQ5.6 doesn't appear to have much OOB anymore.

like image 151
IT Gumby Avatar answered May 15 '26 19:05

IT Gumby



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!