PHPackages                             symbiote/silverstripe-interactives - 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. symbiote/silverstripe-interactives

ActiveSilverstripe-vendormodule[Utility &amp; Helpers](/categories/utility)

symbiote/silverstripe-interactives
==================================

A simple mechanism for implementing tracked interactive elements

5.7.0(4y ago)34.6k6[1 issues](https://github.com/nyeholt/silverstripe-interactives/issues)[1 PRs](https://github.com/nyeholt/silverstripe-interactives/pulls)BSD-3-ClausePHPCI failing

Since Feb 16Pushed 3y ago1 watchersCompare

[ Source](https://github.com/nyeholt/silverstripe-interactives)[ Packagist](https://packagist.org/packages/symbiote/silverstripe-interactives)[ Docs](https://github.com/nyeholt/silverstripe-interactives)[ RSS](/packages/symbiote-silverstripe-interactives/feed)WikiDiscussions master Synced yesterday

READMEChangelog (7)Dependencies (3)Versions (41)Used By (0)

SilverStripe Interactives Management module
===========================================

[](#silverstripe-interactives-management-module)

A simple module to manage dynamic, interactive elements (including advertisements) on pages.

Maintainer Contact
------------------

[](#maintainer-contact)

Marcus Nyeholt

&lt;marcus (at) symbiote (dot) com (dot) au&gt;

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

[](#requirements)

SilverStripe **4.x**

See the 1.x branch for SilverStripe 3 compatible code

Documentation
-------------

[](#documentation)

Add

```
PageController:
  extensions:
    - Symbiote\Interactives\Extension\InteractiveControllerExtension

```

to your project's configuration yml file.

Note that interactives are inherited hierarchically, so setting ads on the Site Config will mean those ads are used across all pages unless specified for a content tree otherwise.

- Navigate to the "Interactives" section
- Create an Interactive Campaign
- Configure the campaign - "Use items as" refers to how items are displayed, based on
    - Always random - every time the campaign is displayed, one item is chosen randomly
    - Sticky random - the first time the campaign is displayed, one item is chosen randomly and always shown to that user on subsequent loads
    - All - all items are returned and displayed (think a multi-item ad list)
- For the campaign site options, you can choose to display on the whole site, specific pages, or choose the whole site and exclude specific URLs
- Once configured at the top level, add the interactive items themselves.

### Interactives

[](#interactives)

A single interactive has a few options with how it is displayed.

- Automatically generated link (Do not enter anything in the "HTMLContent" text area). If an image is attached to the interactive, this image is linked, otherwise the text in the Title field is linked
- Custom entered HTML (provide in the HTMLContent field)
- Binding to existing DOM nodes (only applicable if **Location in / near element** is set to "Existing content")

Target URLs for the interactive can be set as a fully qualified link, or an internal page object

- Relative Element is a jquery selector for inserting the interactive against; the "Location in" option provides the relative positioning to that element
- Display frequency allows for displaying to only a subset of users (ie to display to 20 percent of people, set this value to 5)
- The "Completion Element" is another jquery selector indicating the element on the target page that, if clicked, triggers a "complete" event for the given interactive. The usecase here being an interactive pointing to a userdefined form page, by setting this to the form submit button (eg *\#UserForm\_Form\_action\_process*) the submit of the form will be tracked
- If HTMLContent is filled out, this is used as the content of the interactive.

### Elements

[](#elements)

To use elements as the content source, add the following to your project config

```
Symbiote\Interactives\Model\Interactive:
  extensions:
    - Symbiote\Interactives\Extension\InteractiveElementalExtension

```

###  Health Score

35

—

LowBetter than 79% of packages

Maintenance13

Infrequent updates — may be unmaintained

Popularity23

Limited adoption so far

Community15

Small or concentrated contributor base

Maturity75

Established project with proven stability

 Bus Factor1

Top contributor holds 96% of commits — single point of failure

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 ~38 days

Recently: every ~77 days

Total

36

Last Release

1724d ago

Major Versions

2.1.2 → 3.0.02018-08-31

3.1.2 → 4.1.02019-09-12

3.x-dev → 4.2.02020-01-30

4.3.0 → 5.0.12020-02-09

3.3.0 → 5.1.02020-03-03

### Community

Maintainers

![](https://www.gravatar.com/avatar/25cb1c56a7ab949d1e6b28a2a04862ce1cffe1799a291e1797f8dfd33cd83716?d=identicon)[nyeholt](/maintainers/nyeholt)

---

Top Contributors

[![nyeholt](https://avatars.githubusercontent.com/u/161730?v=4)](https://github.com/nyeholt "nyeholt (97 commits)")[![lekoala](https://avatars.githubusercontent.com/u/250762?v=4)](https://github.com/lekoala "lekoala (1 commits)")[![simonexmachina](https://avatars.githubusercontent.com/u/261804?v=4)](https://github.com/simonexmachina "simonexmachina (1 commits)")[![spekulatius](https://avatars.githubusercontent.com/u/8433587?v=4)](https://github.com/spekulatius "spekulatius (1 commits)")[![stephenmcm](https://avatars.githubusercontent.com/u/2093185?v=4)](https://github.com/stephenmcm "stephenmcm (1 commits)")

---

Tags

silverstripeadvertisementsad campaigninteractives

### Embed Badge

![Health badge](/badges/symbiote-silverstripe-interactives/health.svg)

```
[![Health](https://phpackages.com/badges/symbiote-silverstripe-interactives/health.svg)](https://phpackages.com/packages/symbiote-silverstripe-interactives)
```

PHPackages © 2026

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