Skip to content
- Theme directory:
design/themes/kv_hearth (child of responsive), delivered by the add-on kv_theme_hearth.
The add-on copies var/themes_repository/kv_hearth into design/themes on install; never edit the copy in
var/themes_repository.
- Styles:
styles/data/<Style>.less (Theme editor variables + @kv_* kit tokens + @he_* Hearth tokens), the skin in
css/skin/skin.less. Own CSS classes use the he- prefix.
- Templates added by the theme (all render the stock output, or nothing, without the licensed design):
blocks/products/kv_he_grid.tpl, blocks/products/kv_he_look.tpl
blocks/categories/kv_he_rooms.tpl, blocks/categories/kv_he_cats.tpl
addons/banners/blocks/kv_he_hero.tpl, addons/banners/blocks/kv_he_promos.tpl
addons/blog/blocks/kv_he_posts.tpl, blocks/vendor_list_templates/kv_he_makers.tpl, blocks/wrappers/kv_he_shop.tpl
- hook files of the add-on: product grid card (
products:product_multicolumns_list override with the card partial
addons/kv_theme_hearth/partials/kv_he_card.tpl), product page (products:main_info_title pre,
products:product_detail_bottom pre, products:product_tabs post), store reviews (discussion:items_list_row
override for the block with the user class he-revs-block), index:html_tag pre, index:scripts pre.
- Data:
app/addons/kv_theme_hearth/func.php (“hearth-data”): $product.he from gather_additional_products_data_post
(material, colour, delivery, days, assembly, dimensions, seat height, New flag, swatches, main category), $he from
dispatch_before_display (room photos for the mega menu, frequently bought together), vendor facts from
get_companies_post / get_company_data_post. Every handler returns at once unless the storefront runs the licensed
design. Catalogue data only: safe with the block cache and the full page cache.
- Script:
js/addons/kv_theme_hearth/theme.js on the Kavio kit API (Tygh.kvTheme): hero slider, mega menu tiles,
colour dots, lens zoom, delivery dates, bundle totals. It reads only the page and Tygh.kv_hearth.
- Features are found by code (
HE_*) or by name; see Usage.
- Hooks you can use in your own add-on stay untouched: the theme never overrides core templates.