Themes and the look of the site
On this page
The public side of AIO Video is drawn by a theme. Two come with the script, and both read the same settings, home page blocks and footer, so you can change theme at any time.
| Theme | Folder | What it looks like |
|---|---|---|
| AIO Classic | themes/default | The look the script ships with: the side menu on the left, a roomy video grid, dark or light. Other themes fall back on it for anything they do not draw. |
| YouTube | themes/youtube | Looks and works like YouTube: pill search with a voice button, a side guide that folds to a mini guide, category chips, and a YouTube-Studio style area for a member's own pages. |
Admin → Themes
Each theme is a card with its picture, version and author. The one the site uses carries the In use badge.
- Activate makes the theme the site's theme for everybody.
- Preview shows you the site in that theme, while every visitor keeps seeing the current one. A dark bar at the foot of the screen says Previewing … – only you can see it, with Use this theme and Stop.
- Settings opens the theme's own options.
- Delete removes a theme that is not in use. AIO Classic can never be deleted, because everything falls back on it.
The theme settings
AIO Classic has nothing of its own to set: it follows the colour and the logo under Admin → Settings → General. The YouTube theme offers:
| Setting | What it does |
|---|---|
| Accent colour | The logo mark, the progress bars and the red marks. YouTube's own is #ff0000. |
| Word beside the logo | When typed, the theme draws its red play mark with this word. Ignored when a logo image is uploaded in Settings. |
| Side menu when a page opens | Full menu or Mini menu (icons only). Visitors can still open and close it; their choice is remembered. |
| Category chips on the home page | The row of category buttons above the videos. |
| Featured and trending shelves | The rows of videos above the main grid on the first page. |
| Smallest card width (pixels) | 220 to 480. Wider means fewer videos in a row; YouTube uses about 320. |
| Voice search button | The microphone beside the search box (Chrome, Edge). |
| Notification bell | The bell in the top bar. |
| Subscribed channels in the side menu | The channels a member follows. |
| Page links at the bottom of the side menu | The footer links, repeated under the menu. |
Logo, colour, light and dark
Admin → Settings → General → Look holds what both themes use:
- Brand colour for buttons, links and highlights.
- Logo and Favicon. Until you upload your own logo, the logo the script ships with is shown.
- Default channel banner, shown on every channel without a banner of its own (2560 × 423 looks best).
- Default mode for the site: Dark or Light. AIO Classic follows it; the YouTube theme opens in light by itself.
Visitors switch between light and dark with the button in the top bar (AIO Classic) or Appearance in the account menu (YouTube), and the browser remembers it. The admin panel keeps its own choice, Default mode for this panel.
The home page blocks
Admin → Settings → Home page decides what the front page shows, in both themes. Each row is a block:
- drag it, or use ▲ ▼, to move it; untick it to hide it;
- the number box says how many videos it shows;
- a title of your own replaces the block's name.
The built-in blocks are Category chips, Featured, Trending now, A row for each category (with Categories to show) and The main grid, which always shows. Plugins add their own rows while they are on (Shorts, Live, Movies), marked plugin.
+ Add a block makes a row of your own. Takes its videos from: Newest videos, Most viewed, Trending, A random pick, Featured videos, One category, One tag, One channel (its @username) or Videos matching words. Laid out as: a grid or one row. A new block goes in above the main grid; Delete removes it again.
Under Scrolling, Load more videos as you scroll lets the main grid grow by itself; switched off, page numbers show. Press Save the home page.
With the YouTube theme, its own chips and shelves switches must be on too for those rows to appear.
The menus
The side menu builds itself, so there is nothing to keep up to date:
- Home and Trending, then Blog (when the blog is on), What's new (when that page is shown with Link to it in the site menu ticked), Support (when tickets are on) and Contact (when the Contact page is on).
- The entries plugins add, such as Shorts, Live or Movies.
- For a signed-in member: Subscriptions, History, Watch later, Liked videos and Playlists. AIO Classic also lists the first twelve categories.
There is no menu editor: for links of your own, use the footer links below. The Create button in the top bar and the menu behind the member's picture are built the same way, from what the member may do.
The footer and the credit
Admin → Settings → General → Footer:
- Footer line: your copyright line. Empty shows
© year Site name. - A few words about the site: a short line beside the logo.
- Footer links, one a line as
Label | address, for exampleAbout us | page/aboutor a fullhttps://address. Left empty, the pages ticked Show it in the footer under Admin → Pages are used. A What's new link is added when that page is set to show in the footer. - "Designed & Developed by" on the site: The same as this panel uses the credit your licence carries, with the faruk.bd mark. My own lets you change the words, the link or the picture. HTML is allowed, scripts are removed, and
{site_url}and{year}are filled in. A preview shows it on light and on dark. The credit at the foot of the admin panel always comes from the licence.
Your own CSS and tags go under Settings → Your code (see Settings).
Adding or making a theme
Add a theme on the Themes page takes a ZIP holding one folder, named after the theme, with theme.json directly inside it. Tick Replace it if it is already installed (an update) to update one. Only code, style, picture, font and text files are copied. A theme can run code, so only add one you trust. Without PHP's ZIP support on the server, upload the folder to themes/ by FTP instead.
To make your own, copy a theme folder under themes/, give it a new name (small letters, digits and dashes) and change what you like:
| File | Purpose |
|---|---|
theme.json | Name, version, author, and the settings it offers |
style.css, script.js | Loaded after the site's own stylesheet and script |
functions.php | Hooks, run on every public page |
parts/*.php | topbar, sidebar, footer, video_card, video_card_compact |
pages/*.php | home, watch, channel, studio, search: a whole page |
screenshot.svg or .png | The picture on the Themes page |
Anything a theme does not draw comes from the site's own templates, so a theme can be as small as one stylesheet.