PHPackages                             lerni/silverstripe-canonical - 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. lerni/silverstripe-canonical

AbandonedArchivedSilverstripe-module[Utility &amp; Helpers](/categories/utility)

lerni/silverstripe-canonical
============================

A SilverStripe module to add canonical tag in SilverStripe 3

01.1kPHP

Since Apr 8Pushed 6y ago1 watchersCompare

[ Source](https://github.com/lerni/canonical)[ Packagist](https://packagist.org/packages/lerni/silverstripe-canonical)[ RSS](/packages/lerni-silverstripe-canonical/feed)WikiDiscussions master Synced 2d ago

READMEChangelogDependenciesVersions (1)Used By (0)

silverstripe-canonical
======================

[](#silverstripe-canonical)

Adds a simple rel=canonical tag to SilverStripe 3.x

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

[](#requirements)

SilverStripe 3.6.x &lt; 4

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

[](#installation)

- Install the code with `composer require lerni/silverstripe-canonical`
- Run a `dev/build?flush` to update your project

Config
------

[](#config)

You need to set the extensions in your config.

```
Page:
  extensions:
    - CanonicalExtension
SiteConfig:
  extensions:
    - CanonicalSiteConfigExtension

```

Usage
-----

[](#usage)

This module adds a simple canonical tag to your pages to allow for the specification of the default domain or a specific tag per Page. The canonical tag allows you to signal to search engines like Google which is the authoritative version of the page to help reduce duplicate content issues caused by non-www versions, pages with different protocols, etc.

###  Health Score

20

—

LowBetter than 14% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity14

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity34

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% 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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/e68b89567976eada21fddc5e776f4adcbe15ad846150cbcde6eb24bc185a8e5f?d=identicon)[lerni](/maintainers/lerni)

---

Top Contributors

[![lerni](https://avatars.githubusercontent.com/u/472115?v=4)](https://github.com/lerni "lerni (1 commits)")

### Embed Badge

![Health badge](/badges/lerni-silverstripe-canonical/health.svg)

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

###  Alternatives

[symfony/flex

Composer plugin for Symfony

4.2k182.7M875](/packages/symfony-flex)[phpcompatibility/phpcompatibility-paragonie

A set of rulesets for PHP\_CodeSniffer to check for PHP cross-version compatibility issues in projects, while accounting for polyfills provided by the Paragonie polyfill libraries.

1031.3M10](/packages/phpcompatibility-phpcompatibility-paragonie)[lifo/php-ipc

Simple PHP Inter Process Communication (IPC) library

285.5k](/packages/lifo-php-ipc)[lamoda/enum-bundle

Utility wrapper around PHP-enum

101.6k](/packages/lamoda-enum-bundle)

PHPackages © 2026

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