Adds Open Graph metadata to your posts and pages so that they look great when shared on sites like Facebook and Twitter.
The Open Graph protocol enables any web page to become a rich object in a social graph. Most notably, this allows for these pages to be used with Facebook's Like Button and Graph API as well as within Twitter posts.
The Open Graph plugin inserts the Open Graph metadata into WordPress posts and pages, and provides a simple extension mechanism for other plugins and themes to override this data, or to provide additional Open Graph data.
This plugin does not directly add social plugins like the Facebook Like Button to your pages (though they're pretty simple to add). It will however make your pages look great when shared using those kinds of tools.
You don't; there's nothing to configure and there is no admin page. By default, it will use whatever standard WordPress data it can to populate the Open Graph data. There are very simple yet powerful filters you can use to modify or extend the metadata returned by the plugin, described below.
There are two main ways to provide Open Graph metadata from your plugin or theme. First, you can implement the filter for a specific property. These filters are of the form opengraph_{name}
where {name} is the unqualified Open Graph property name. For example, if you have a plugin that defines a custom post type named "movie", you could override the Open Graph 'type' property for those posts using a function like:
function my_og_type( $type ) {
if ( get_post_type() == "movie" ) {
$type = "movie";
}
return $type;
}
add_filter( 'opengraph_type', 'my_og_type' );
This will work for all of the core Open Graph properties. However, if you want to add a custom property, such as 'fb:admin', then you would need to hook into the opengraph_metadata
filter. This filter is passed an associative array, whose keys are the qualified Open Graph property names. For example:
function my_og_metadata( $metadata ) {
$metadata['fb:admin'] = '12345,67890';
return $metadata;
}
add_filter( 'opengraph_metadata', 'my_og_metadata' );
Note that you may need to define the RDFa prefix for your properties. Do this using the opengraph_prefixes
filter.
The plugin populates the meta 'name' attribute alongside the 'property' attribute by default. Because both, the og:*
and twitter:*
names, are actually registered at https://wiki.whatwg.org/wiki/MetaExtensions, this stays compliant with the HTML5 spec. If you want to use a more strict way anyways, you can enable the scrict mode by adding the following line to your config.php
define( 'OPENGRAPH_STRICT_MODE', true );
Project maintained on github at pfefferle/wordpress-opengraph.
<img>
tags<meta name="fediverse:creator" />
card
handlingog:image
to use the full size of image (props @torenord)article:author
propertyarticle:modified_time
article:section
get_the_archive_title
and get_the_archive_description
(new in WordPress 4.1)$post->post_title
with get_the_title()
(see #17 for details)