Add Twitter Card markup to individual posts. Supports summary, photo, and player types.
Generate inline content previews on Twitter.com and Twitter clients by including Twitter Card HTML meta elements for individual posts.
All cards are a Twitter Card summary by default. Tap into the twitter_card_properties
filter to reference the Twitter accounts of your site or author.
Test your site’s Twitter Card display through Twitter’s card preview tool.
twitter_cards_properties
– act on an array of properties before they are output to the pagetwitter_cards_htmlxml
– override the default treatment of html
with xml
. XML will self-close the meta void element ( “” vs. “” )I wrote this plugin for my own site, NiallKennedy.com, added some slight flexibility through filters, and released the plugin on GitHub as a PHP library with a WordPress plugin wrapper. I use summary cards for my site’s articles. If you would like to add better support for photos, galleries, videos, apps, or products exposed to Twitter you can fork my work and optionally send some code in a pull request.
First you need to hook into the filter from code in your theme or site plugin(s). You can add this code to your theme’s functions.php
file or create a new file in wp-content/mu-plugins/twitter-cards.php
or something similar.
add_filter( 'twitter_cards_properties', 'twitter_custom' );
Next you need to modify the array passed to the filter with your own values.
function twitter_custom( $twitter_card ) { if ( is_array( $twitter_card ) ) { $twitter_card['creator'] = '@niall'; $twitter_card['creator:id'] = '1085'; } return $twitter_card; }
The values generated by the plugin are passed to your new function for manipulation before output.
The Twitter API function users/show is a good way to lookup your account information. Copy the screen_name
and id_str
to creator
and creator:id
array values respectively in your filter function referenced above.
https://api.twitter.com/1/users/show.json?screen_name=niall
Your Twitter screenname may change but your Twitter ID will remain the same. Grab both while you are setting up your site to provide Twitter with the best data.
The plugin outputs HTML-style void elements without a trailing slash by default. Add XML-style trailing slashes by returning a value of xml
on the twitter_cards_htmlxml
filter.