now you can run cli
php cmd.php lutish-staticthemecloud:run
or
php cmd.php lutish-staticthemecloud:run <style_id>
or create css for special style id some less.
php cmd.php lutish-staticthemecloud:run 1 --template=app.less
php cmd.php lutish-staticthemecloud:run 1,2,3 -t=forum_list.less
Demo:
https://lutish.com
Built exclusively for XenForo 2 forums, it helps you easily achieve CSS staticization, eliminate cumbersome loading, and speed up your website—solving the core pain point of slow forum style loading!
Previously, the style files (CSS) of your XenForo 2 forum needed to be dynamically loaded via CSS.PHP. This not only occupied your server’s PHP resources but also slowed down page loading speed. The lag issue became even more obvious when your forum had complex styles and multiple variations.
The core function of the Lutish Static Theme Cloud add-on is to directly generate static files from these originally dynamically loaded CSS contents, completely getting rid of the reliance on PHP dynamic parsing. This doubles the loading speed of your forum styles and provides visitors with a smoother browsing experience.
In addition, we help you solve all the troubles of style compilation without occupying your local server resources:
Automatically creates static theme files: it includes fonts (only fonts were included in the 2.2.x version), generates CSS files into the data/csscache folder, and imports the static files to your website.
Disables css.php for XenForo.
Disables insert and select operations on the xf_css_cache table.
Not all hosting services running XenForo support Redis or other caching extensions, such as all cPanel hosting. Therefore, file caching will be highly efficient with direct access.
Default XenForo workflow: apache/nginx/ → PHP → cache → css content
With this add-on: apache/nginx/ → css file; apache/nginx/ → CDN → css file
Now 3 Merge code demo
before:
HTML:
<link data-template-name="public:helper_js_global::head" rel="stylesheet" href="/css.php?css=public%3Anormalize.css%2Cpublic%3Afa.css%2Cpublic%3Avariations.less%2Cpublic%3Acore.less%2Cpublic%3Aapp.less&s=1&l=1&d=1780649783&k=c1e59557120287fe5bc5abe8c8d30cd42370076a" />
<link rel="stylesheet" href="/css.php?css=public%3Alutish_forumstats_stats.less&s=1&l=1&d=1780649783&k=6b8875705d093ca194408172ffa45422ccd63449" />
<link rel="stylesheet" href="/css.php?css=public%3Anode_list.less&s=1&l=1&d=1780649783&k=5c5a7d385f08a635fb7b4ab853fe405c06a9be55" />
<link rel="stylesheet" href="/css.php?css=public%3Arating_stars.less&s=1&l=1&d=1780649783&k=d01dfd7f5d96c14648f2e0575535a62ab49de649" />
<link rel="stylesheet" href="/css.php?css=public%3Ashare_controls.less&s=1&l=1&d=1780649783&k=449833a592fe4b1ed0b01ec30266ec232f075067" />
<link rel="stylesheet" href="/css.php?css=public%3Aextra.less&s=1&l=1&d=1780649783&k=309d83cc6614c9984e69fa2f6d1d65fd02c2cdd3" />
Merge All CSS Disabled Status:
Code:
<link rel="stylesheet" href="/data/csscache/Pub/36/merge.css?_v=1780716804" />
<link rel="stylesheet" href="/data/csscache/Pub/36/lutish_forumstats_stats.css?_v=1780716804" />
<link rel="stylesheet" href="/data/csscache/Pub/36/node_list.css?_v=1780716804" />
<link rel="stylesheet" href="/data/csscache/Pub/36/notices.css?_v=1780716804" />
<link rel="stylesheet" href="/data/csscache/Pub/36/ozzmodz_badges.css?_v=1780716804" />
<link rel="stylesheet" href="/data/csscache/Pub/36/share_controls.css?_v=1780716804" />
<link rel="stylesheet" href="/data/csscache/Pub/36/th_unco_user_name_style_cache.css?_v=1780716804" />
<link rel="stylesheet" href="/data/csscache/Pub/36/extra.css?_v=1780716804" />
Merge All CSS All In One Status:
only
Code:
<link rel="stylesheet" href="/data/csscache/Pub/36/allinone.css?_v=1780716804" />
Merge All CSS Part Css Status:
Code:
<link rel="stylesheet" href="/data/csscache/Pub/36/bulk/merge.css?_v=1780716804" />
<link rel="stylesheet" href="/data/csscache/Pub/36/forum?_v=1780716804" />
Css Status:
local
CSS:
<link data-template-name="public:helper_js_global::head" rel="stylesheet" href="/data/csscache/Pub/1/merge.css?_v=1770707429" />
<link rel="stylesheet" href="/data/csscache/Pub/1/dbtech_ecommerce.css?_v=1770707429" />
<link rel="stylesheet" href="/data/csscache/Pub/1/dbtech_ecommerce_product_grid.css?_v=1770707429" />
<link rel="stylesheet" href="/data/csscache/Pub/1/member.css?_v=1770707429" />
<link rel="stylesheet" href="/data/csscache/Pub/1/node_list.css?_v=1770707429" />
<link rel="stylesheet" href="/data/csscache/Pub/1/rating_stars.css?_v=1770707429" />
<link rel="stylesheet" href="/data/csscache/Pub/1/structured_list.css?_v=1770707429" />
<link rel="stylesheet" href="/data/csscache/Pub/1/extra.css?_v=1770707429" />
<script src="/js/xf/preamble.min.js?_v=7732a165"></script>
Multi CDN domain
CSS:
<link data-template-name="public:helper_js_global::head" rel="preconnect" href="https://cdn1.1test.com/" crossorigin />
<link rel="dns-prefetch" href="https://cdn1.1test.com/" />
<link rel="preconnect" href="https://cdn2.1test.com/" />
<link rel="dns-prefetch" href="https://cdn2.1test.com/" />
<link rel="stylesheet" href="https://cdn1.1test.com/data/csscache/Pub/1/merge.css?_v=1770713350" />
<link rel="stylesheet" href="https://cdn1.1test.com/data/csscache/Pub/1/dbtech_ecommerce.css?_v=1770713350" />
<link rel="stylesheet" href="https://cdn1.1test.com/data/csscache/Pub/1/dbtech_ecommerce_product_grid.css?_v=1770713350" />
<link rel="stylesheet" href="https://cdn1.1test.com/data/csscache/Pub/1/member.css?_v=1770713350" />
<link rel="stylesheet" href="https://cdn1.1test.com/data/csscache/Pub/1/node_list.css?_v=1770713350" />
<link rel="stylesheet" href="https://cdn1.1test.com/data/csscache/Pub/1/rating_stars.css?_v=1770713350" />
<link rel="stylesheet" href="https://cdn1.1test.com/data/csscache/Pub/1/structured_list.css?_v=1770713350" />
<link rel="stylesheet" href="https://cdn1.1test.com/data/csscache/Pub/1/extra.css?_v=1770713350" />
Multi CDN domain
CSS:
<link data-template-name="public:helper_js_global::head" rel="preconnect" href="https://cdn.1test.com/" crossorigin />
<link rel="dns-prefetch" href="https://cdn.1test.com/" />
<link rel="stylesheet" href="https://cdn.1test.com/data/csscache/Pub/1/merge.css?_v=1770713350" />
<link rel="stylesheet" href="https://cdn.1test.com/data/csscache/Pub/1/dbtech_ecommerce.css?_v=1770713350" />
<link rel="stylesheet" href="https://cdn.1test.com/data/csscache/Pub/1/dbtech_ecommerce_product_grid.css?_v=1770713350" />
<link rel="stylesheet" href="https://cdn.1test.com/data/csscache/Pub/1/member.css?_v=1770713350" />
<link rel="stylesheet" href="https://cdn.1test.com/data/csscache/Pub/1/node_list.css?_v=1770713350" />
<link rel="stylesheet" href="https://cdn.1test.com/data/csscache/Pub/1/rating_stars.css?_v=1770713350" />
<link rel="stylesheet" href="https://cdn.1test.com/data/csscache/Pub/1/structured_list.css?_v=1770713350" />
<link rel="stylesheet" href="https://cdn.1test.com/data/csscache/Pub/1/extra.css?_v=1770713350" />
<script src="https://cdn.1test.com/js/xf/preamble.min.js?_v=7732a165"></script>
External Communications & Cloud API Notice
This add-on connects to our remote server (api.lutish.com) solely for license validation and user-initiated cloud features.
On-Demand Only: Data is transmitted only when actively triggered (e.g., license activation or when using a cloud service).
Minimal Data: Only the license key, site URL, and basic version info are sent. No user content or forum data is ever collected.
Graceful Degradation: If our server is unreachable, your forum continues to operate normally with no impact on stability or performance.