Using Social Meta Data Filter

We recently had an issue where a customer converted to https but wanted to retain non https open graph social metadata.

To enable this, we’ve added a filter that allows you to modify the open graph metadata programmatically.

The New Filter:

We’ve added this filter to our codebase on all themes:

$meta = apply_filters('tha_social_meta', $meta);

$meta is an array of metadata as constructed as follows:-

$meta = array( //uniqueID => meta 'og:type' => array( //attribute -> value 'property' => 'og:type', 'content' => $page_type, ), 'og:url' => array( 'property' => 'og:url', 'content' => $current_url,), 'twitter:card' => array( 'name' => 'twitter:card', 'content' => 'summary_large_image' ) );

Example of How to Filter the Open Graph MetaData:

If you’re running a child theme you can add the following code in functions.php. Alternatively, if you’re not running a child theme, then we recommend you create this as a separate plugin so your changes aren’t overwritten on theme update.

Sample Code for this Filter

This example overrides the og:url meta:

add_filter("tha_social_meta", "modify_og_url"); function modify_og_url($meta) { $url = 'your custom url'; $meta['og:url']['content'] = $url; return $meta; }

This filter will allow you to do things like:

  • Modify the social meta protocol to retain previously built social meta signals

  • Make any other changes that you require to the social metadata parameters

Was this article helpful?

Related Articles

>