SEO: Create a description meta tag based on Jetpack’s Open Graph Meta tags

Jetpack includes Open Graph Meta tags. We add these tags whenever you activate the Sharing module or the Publicize module.

These tags allow Social Networks like Facebook, LinkedIn, Google+, or Pinterest to gather information about a post and build a post preview. Without those tags, Social Networks like Facebook will in some cases reject a post that’s been posted via an app, like Publicize.

We also add Twitter Meta Cards tags, since Twitter requires its own set of tags.

These Social Networks do not rely on the description meta tag, though. That’s why we didn’t add it to the list of tags added by Jetpack. Since this tag is mostly useful for Search Engines, it’s often included in Search Engine Optimization plugins, like Yoast SEO. If you’re interested in adding the tag to your site, you could use this plugin.

Another alternative would be to extend Jetpack’s default list of tags, and add your own, based on the existing og:description tag. To do so, you can paste the following in your theme’s functions.php file, or in a functionality plugin:

/**
 * Add a new tag, named description, matching the existing og:description tag.
 *
 * If og:description doesn't exist for a post/page, do not add any new tag.
 *
 * @filter jetpack_open_graph_tags
 * @uses isset
 */
function jeherve_custom_desc_tag( $tags ) {
	if ( isset( $tags['og:description'] ) ) {
		$tags['description'] = $tags['og:description'];
	}
	return $tags;
}
add_filter( 'jetpack_open_graph_tags', 'jeherve_custom_desc_tag' );

/**
 * Replace property="description" by name="description" in the new tag.
 *
 * Jetpack uses property="thing" as template for its Meta tags,
 * because it's built to output OG Tags. However, we we want to output a general tag here.
 *
 * @filter jetpack_open_graph_output
 * @uses str_replace
 */
function jeherve_desc_tag_output( $og_tag ) {

	// Replace property="description" by name="description"
	$og_tag = str_replace( 'property="description"', 'name="description"', $og_tag );

	return $og_tag;
}
add_filter( 'jetpack_open_graph_output', 'jeherve_desc_tag_output' );
This entry was posted in Code snippets and tagged , , , , , . Bookmark the permalink.

Have a note to contribute?

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Relied on by millions of WordPress professionals worldwide.

Install Free   See Pricing

Created by Automattic: bringing the power of WordPress.com to every WordPress site.