studiothick / silverstripe-opengraph
Automatically generates Open Graph data for a Silverstripe page.
Installs: 2 431
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 1
Type:silverstripe-module
pkg:composer/studiothick/silverstripe-opengraph
Requires
This package is not auto-updated.
Last update: 2025-11-01 00:14:57 UTC
README
This module is a work in progress. Bug reports or feature requests welcome.
This module adds a getOpenGraph method to the Page class to be used in
templates. Calling $OpenGraph in a template will return a series of
automatically generated tags corresponding to the standard open graph
attributes.
-
og:title: from$Title -
og:type: hardcoded to"website" -
og:image: absolute URL. tries$HeroImage,$PostImage,$Image, then$FeaturedImage -
og:image:width: width, asog:image -
og:image:height: height, asog:image -
og:url: absolute URL of page (Director::protocolAndHost() . $this->Link) -
og:description: from$MetaDescription -
og:locale: fromi18n::get_locale() -
og:site_name: from$SiteConfig.Title -
og:determiner: unused -
og:locale:alternate: unused -
og:audio: unused -
og:video: unused
All of the above can be overridden in Page.php or a given subclass according
to the naming convention getOpenGraph_attribute, with og removed and :s
replaced with spaces. For example, getOpenGraph_image_width().
To override the image selection behaviour (for example, to return a static
image, or to return a field that is not in the list that the extension searches
for), simply implement getOpenGraphImage() to return a SilverStripe Image
object.
Installation
Install via composer require studiothick/silverstripe-opengraph.
Usage
Example:
<head> <title>$SiteConfig.Title | $Title</title> $OpenGraph </head>