PHPackages                             wyatts97/flarum-ext-ad-management - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. wyatts97/flarum-ext-ad-management

ActiveFlarum-extension[Utility &amp; Helpers](/categories/utility)

wyatts97/flarum-ext-ad-management
=================================

Comprehensive ad management system for Flarum with zones, analytics, and ad owner self-service.

v1.6.2(2mo ago)042MIT

Since May 18Compare

[ Source](https://github.com/wyatts97/flarum-ext-ad-management)[ Packagist](https://packagist.org/packages/wyatts97/flarum-ext-ad-management)[ RSS](/packages/wyatts97-flarum-ext-ad-management/feed)WikiDiscussions Synced 3w ago

READMEChangelogDependencies (1)Versions (28)Used By (0)

Ad Management — Flarum Extension
================================

[](#ad-management--flarum-extension)

> **Note:** This is a fork of [wyatts97/flarum-ext-ad-management](https://github.com/wyatts97/flarum-ext-ad-management) updated for Flarum 2.0 compatibility.

A comprehensive ad management system for [Flarum](https://flarum.org) forums. Supports image banners, HTML/JS ads, and Google AdSense with zones, analytics, an approval workflow, and a user self-service portal.

Features
--------

[](#features)

- **Ad Zones** — Named positions (`header`, `below_header`, `between_posts`, `sidebar`, `above_footer`, `footer`, `custom`) with optional dimension constraints
- **Ad Types** — Image banners, raw HTML/JS, and Google AdSense units
- **Mobile/Desktop Content** — Per-ad alternate mobile creative that switches automatically based on viewport width (&lt;= 768px)
- **Rotation** — One random ad per zone per page load (randomized each visit)
- **Analytics** — Per-ad impression and click tracking with daily breakdowns and CTR
- **Approval Workflow** — User-submitted ads queue for admin review before going live; optional approval for image changes
- **Email Notifications** — Expiration reminders and performance reports via cron, with customizable templates
- **Admin Notifications** — Instant email alert when a user submits an ad for review
- **Rate Limiting** — Anti-fraud protection on click and impression tracking endpoints
- **Group Visibility** — Show ads only to specific member groups; hide ads for premium groups
- **Post Shortcodes** — Embed any zone inline in discussion posts: `{myadvertisements[zone_name]}`
- **Image Processing** — Automatic resizing to zone dimensions; optional compression via PHP GD or reSmush.it API
- **GDPR Compliance** — Purge old click records with the built-in console command

Requirements
------------

[](#requirements)

- Flarum `^2.0.0-rc.1`
- PHP `^8.3` with GD extension (for image resizing/compression)
- PHP `curl` extension (optional, for reSmush.it API compression)

Links
-----

[](#links)

- [wyatts97](https://wyatts97.com)
- [Github](https://github.com/wyatts97/flarum-ext-ad-management)
- [Packagist](https://packagist.org/packages/wyatts97/flarum-ext-ad-management)

Installation
------------

[](#installation)

```
composer require wyatts97/flarum-ext-ad-management
```

Then enable it in your Flarum admin panel under **Extensions**.

Quick Start
-----------

[](#quick-start)

1. Go to **Admin → Ad Management → Zones** and create a zone (or use a built-in default zone).
2. Go to **Advertisements** and create your first ad.
3. Set up the cron job for email notifications: ```
    0 8 * * * php /var/www/flarum ad-management:send-notifications >> /dev/null 2>&1

    ```
4. (Optional) Grant the **Submit Advertisements** permission to allow forum members to submit ads for review.

Mobile Content
--------------

[](#mobile-content)

Each ad can have an optional mobile variant that is shown automatically when the visitor's viewport width is **768px wide or less**:

- **Image ads** — Set a separate mobile image URL, link URL, alt text, and dimensions.
- **HTML / AdSense ads** — Provide alternate mobile HTML/JS content.

If the mobile fields are left blank, the desktop content is used on all devices. The switch happens client-side at render time, so no server-side device detection is required.

To set mobile content, go to **Admin → Ad Management → Advertisements**, edit an ad, and fill in the **Mobile Content** section.

Console Commands
----------------

[](#console-commands)

CommandDescription`php flarum ad-management:send-notifications`Send expiration reminders and performance reports`php flarum ad-management:purge-clicks [days]`Delete click records older than N days (default: 90) for GDPR complianceDocumentation
-------------

[](#documentation)

See [ADMIN\_GUIDE.md](ADMIN_GUIDE.md) for full configuration and usage documentation.

License
-------

[](#license)

MIT — see [LICENSE](LICENSE).

###  Health Score

38

—

LowBetter than 83% of packages

Maintenance86

Actively maintained with recent releases

Popularity10

Limited adoption so far

Community2

Small or concentrated contributor base

Maturity44

Maturing project, gaining track record

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

27

Last Release

66d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/182544595?v=4)[wyatts97](/maintainers/wyatts97)[@wyatts97](https://github.com/wyatts97)

---

Tags

adsextensionadsenseAdvertisingflarumad management

### Embed Badge

![Health badge](/badges/wyatts97-flarum-ext-ad-management/health.svg)

```
[![Health](https://phpackages.com/badges/wyatts97-flarum-ext-ad-management/health.svg)](https://phpackages.com/packages/wyatts97-flarum-ext-ad-management)
```

###  Alternatives

[flarum-lang/russian

Russian language pack for Flarum.

12128.3k](/packages/flarum-lang-russian)[flarum-lang/french

French language pack to localize the Flarum forum software plus its official and third-party extensions.

1938.7k](/packages/flarum-lang-french)[fof/masquerade

User profile builder extension for your Flarum forum.

2025.4k6](/packages/fof-masquerade)[davwheat/flarum-ext-ads

Ads support for your Flarum forum.

1311.2k](/packages/davwheat-flarum-ext-ads)[flarum/gdpr

Features for GDPR, PII management

1338.8k22](/packages/flarum-gdpr)[fof/discussion-language

Specify the language a discussion is written in &amp; sort by language

1034.8k7](/packages/fof-discussion-language)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
