How does the JReviews Theme Engine work
JReviews uses a php templating system. This means you can mix html with php code, which provides a lot of flexibility to create conditionals and add snippets of php code.
Location of JReviews themes is in this folder: /components/com_jreviews/views/themes/ and the theme files have the .thtml extension.
In that folder you'll find several themes:
- /components/com_jreviews/views/themes/default/
- /components/com_jreviews/views/themes/default_02/
- /components/com_jreviews/views/themes/default_dark/
You will notice that /default_02 and /default_dark theme folders contain much less files than the /default theme folder.
The /default folder contains all the theme, css and image files, while /default_02 and /default_dark are variations of the default theme and contain only "modified" files and images. Files that don't exist in those folders are used from the /default theme folder.
This is because the /default theme should always be intact to make JReviews upgrades easier. All theme modifications should be done in a separate folder (like default_02 and default_dark).
Creating your own theme
- Read the Default theme overview to learn the file structure
- Create a new folder for your theme
- Copy the /theme_images folder with all its images from the default theme folder into your theme, because they are always read from the currently theme and not from the default one
- Copy the /theme_css/images folder also
- Copy the files you want to modify into your theme folder (other files leave in the default theme folder)
- After your theme is done, to use it go to JReviews Configuration, tab 'General' and select it from the dropdown
- Important: For JReviews to recognize new files, you must click on 'Clear File Registry' link in JReviews Administration
Having all modified theme files in a separated folder simplifies JReviews upgrades. When new version of JReviews comes out with updated theme files, you can quickly update only the ones you modified.
With JReviews Code Overrides feature you can move your theme outside the com_jreviews folder, so you won't have to backup the theme when you upgrade JReviews.