Extensions:Theme Manager

From Lorekeeper Wiki
Jump to navigation Jump to search
Theme Manager
Description Custom CSS themes for LK websites
Author(s) Preimpression
Status Testing
Github extension/theme-manager
Contains a Migration



This is on the Develop branch and therefore requires both Laravel 8 and Php 7.4

Install custom themes on your Lorekeeper site. These are primarily CSS edits plus a custom header per theme - any hard code edits should be made in the actual blades. There is no "templating" such as in most forum softwares and you will have to upload full css files in order to edit them. The extension "cheats" the cache by creating false variables with the hash every time a theme is updated, so you won't have to fight with Cloudflare to update your cache for images or css if you have that set up for your site.

Installation

Screenshot of Generic Dark Mode theme by Preimpression.
Example of a theme (Generic Dark Mode by Preimpression) in action.

- Pull/Merge in the branch

- Run php artisan migrate

- Run php artisan update-extension-tracker

Configuration

The following file types can be header images: gif, png, jpeg, jpg, svg. It's advised that you either hard-code in your game's logo into the header box in app.blade.php or otherwise include it in each custom header image.

Your site may have one Default Theme at a time. Default themes will be the default for guests and users who have not selected themes in their user settings panel. If no theme is set as default, it will appear as if the Theme Manager is not installed - aka it will be classic Lorekeeper or whatever custom css you have placed.

The code does not adjust any blades in a meaningful way, though it does make a tiny adjustment to comment code because I noticed that it looked super weird. Eventually I will PR that change into v.2.0.0 :)

Creating Themes

There will soon be a theme creation tutorial, though honestly it's mostly just sitting down with what you have and fiddling. I've created a nifty dark mode theme (no header image) that you can see, using a large number of CSS variables. CSS variables are ideal because you can edit them at the top of the file and they will propagate over wherever they're used.

To access theme creation, there is a page in your admin panel called Theme Manager underneath File Manager.

Free Use Themes

Troubleshooting

No known issues however if you wish for custom.css code to be maintained regardless of theme, open app.blade.php and move the custom css code to below the theme css code.

See Also

For any questions and custom theme commissions, contact Uri on Discord: Uri#2154.