pixelopen / sulu-plausiblebundle
This bundle allows you to integrate Plausible analytics statistics into the Sulu administration interface via an embedded iframe.
Installs: 17
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
Type:sulu-bundle
Requires
- php: ^8.2
- sulu/sulu: ^2.6
- symfony/framework-bundle: ^6.4
This package is not auto-updated.
Last update: 2025-06-29 14:51:23 UTC
README
Plausible Bundle for Sulu
This bundle allows you to integrate Plausible analytics statistics into the Sulu administration interface via an embedded iframe.❤️ Features
- ✅ Display Plausible statistics in Sulu admin
- ✅ Configuration via environment variables
- ✅ Support for custom Plausible instances
- ✅ Interface integrated with Sulu design
- ✅ Responsive and optimized for administration
- ✅ Multilingual support (English/French)
- ✅ Translation system using Sulu standards
🚀 Installation
- Install the bundle with composer
composer require pixelopen/sulu-plausiblebundle
- Create the file plausible.yaml in the config/packages folder
plausible: domain: '%env(PLAUSIBLE_DOMAIN)%' base_url: '%env(default:plausible_default_url:PLAUSIBLE_BASE_URL)%' auth_key: '%env(PLAUSIBLE_AUTH_KEY)%' parameters: plausible_default_url: 'https://plausible.io'
- Configure the environment variables in your
.env
file:
# Plausible Configuration
PLAUSIBLE_DOMAIN=your-domain.com
PLAUSIBLE_BASE_URL=https://plausible.io
PLAUSIBLE_AUTH_KEY=your-auth-key
- Add the plausible.js file to the assets/admin folder located in the vendor/pixelopen/sulu-plausiblebundle/src/Resources/js/plausible.js folder.
- Add plausible script on app.js to the asset/admin folder :
import './plausible';
- Install all npm dependencies and build the admin UI (see all options):
cd assets/admin
npm install
npm run build
⚙️ Configuration
Environment Variables
PLAUSIBLE_DOMAIN
: The domain configured in Plausible (required)PLAUSIBLE_BASE_URL
: The base URL of your Plausible instance (default: https://plausible.io)PLAUSIBLE_AUTH_KEY
: Authentication key for shared links (optional but recommended)
Advanced Configuration
You can customize the configuration in config/packages/plausible.yaml
:
plausible: domain: 'my-site.com' base_url: 'https://analytics.my-domain.com' auth_key: '%env(PLAUSIBLE_AUTH_KEY)%'
📖 Usage
- Log in to the Sulu administration
- Add permission from User roles
- Click on "Statistics" in the navigation menu
- Statistics are displayed in an integrated iframe
✅ Requirements
- Sulu CMS ^2.6
- PHP ^8.2
- A Plausible account with a configured domain
- Public sharing enabled in Plausible for your site
🏳️ Translations
The bundle includes full translation support:
Supported Languages
- English (
admin.en.json
) - French (
admin.fr.json
)
Translation Keys
plausible.statistics
- Main navigation titleplausible.configuration_missing
- Error message for missing configplausible.domain_not_configured
- Domain configuration errorplausible.check_env_variable
- Environment variable check messageplausible.domain
- Domain labelplausible.statistics_for
- Iframe title with domain interpolation
Adding New Languages
To add support for additional languages, create new translation files:
src/Resources/translations/admin.{locale}.json
📝 Notes
- Ensure that public sharing is enabled in your Plausible settings
- The iframe uses the parameters:
embed=true&theme=light&background=transparent
- The bundle automatically integrates into the administration navigation
- All user-facing text uses Sulu's translation system for internationalization support