WP Seasonal Logo Rotator (Auto-Scan Hack)

WP Seasonal Logo Rotator (Auto-Scan Hack) 1.0.0

No permission to download
XF Compatibility
  1. 2.3.x
Short Description
A lightweight WP Seasonal Logo Rotator template hack for automatic logo rotation without add-ons or maintenance. Ideal for seasonal branding with just image uploads in a folder. No filename editing needed. Installation steps included.
WP Seasonal Logo Rotator (Auto-Scan Hack)

A lightweight template hack to automatically rotate forum logos for seasons, events, or subtle brand refreshes simply by dropping images into a folder.

No add-ons.
No filename editing.
No maintenance.

What This Does
Scans a logo folder automatically
Selects one image at random on each page load
Updates instantly when images are added or removed
Ideal for seasonal or event-based branding

Installation

1. Create a logo folder

Create this folder on your server:
/styles/season_logos/
2. Add list.php

Create list.php inside the same folder.
PHP:
<?php
header('Content-Type: application/json');
$allowed = ['webp', 'png', 'jpg', 'jpeg', 'gif', 'svg'];
$files = [];
foreach (scandir(__DIR__) as $file) {
    if ($file === '.' || $file === '..' || $file === 'list.php') continue;
    if (in_array(strtolower(pathinfo($file, PATHINFO_EXTENSION)), $allowed, true)) {
        $files[] = $file;
    }
}
echo json_encode($files);
Optional check:
3. Add CSS

Admin Panel → Appearance → Styles → Templates → extra.less
CSS:
.p-header-logo {
    position: relative;
    width: 350px;
    height: 300px;
}
.p-header-logo img {
    visibility: hidden;
}
.p-header-logo::before {
    content: "";
    position: absolute;
    inset: 0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
Adjust width/height to match your logo.



4. Add JavaScript

Admin Panel → Appearance → Templates → PAGE_CONTAINER
Paste after {$ldJsonHtml|raw}
Code:
<script>
(async function () {
    const folderPath = '/styles/season_logos/';
    try {
        const res = await fetch(folderPath + 'list.php');
        if (!res.ok) return;
        const logos = await res.json();
        if (!logos.length) return;
        const logo = logos[Math.floor(Math.random() * logos.length)];
        const style = document.createElement('style');
        style.textContent = `
            .p-header-logo::before {
                background-image: url("${folderPath}${logo}");
            }
        `;
        document.head.appendChild(style);
    } catch (e) {}
})();
</script>
Notes
  • Logo changes on each page load
  • Clear browser cache after setup
  • Mobile sizing may need adjustment in extra.less
  • list.php exposes image filenames only



Disclaimer
This is a simple template hack, not an add-on.
Use only if you are comfortable exposing logo filenames via list.php.
  • Like
Reactions: l1admin689
Author
axtona
Views
309
Extension type
rar
File size
489 bytes
First release
Last update
Ratings 0.00 star(s) 0 ratings
Link was Broken? Send message to the Website Team and we will assist you quickly!
Support Developer If you are satisfied with the test or your project has earned you money, Click the More Information button to support the developer by purchasing.

More resources from axtona

Relevio.ai A
Relevio.ai 1.0.0
This is the XenForo add-on for Relevio, a unique context‑aware, rule‑driven moderation engine
AI ForumBot A
AI ForumBot 1.1.1
ForumBot gives you a bot trained on your forum's own content
Persona - Personalise Your Forum Identity A
Persona gives every member on your forum the tools to make their presence their own.

Similar resources

German translation for [021] ChatGPT Autoresponder W
the german translation Deutsch (Du) for the [021] ChatGPT Autoresponder add-on
Back
Top