Twitter Cards

April 03, 2013

Twitter Cards Plugin

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.

Filters

  • twitter_cards_properties – act on an array of properties before they are output to the page
  • twitter_cards_htmlxml – override the default treatment of html with xml. XML will self-close the meta void element ( “” vs. “” )

Screenshots

  1. Twitter Card display on desktop

    Twitter Card display on desktop

  2. Twitter Card display on mobile

    Twitter Card display on mobile

FAQ

Why don’t you support feature X?

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.

How do I add my Twitter account?

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.

You forgot to include a trailing slash on meta elements

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.

Changelog

1.0.5

  • Update Twitter Cards PHP library to support extending the plugin for new app, gallery, or product Twitter Card types.

1.0.4

  • Treat post format of “image” as a Twitter photo card.

1.0.3

  • Simplify the description generator. Based on the Open Graph protocol description generator in the Facebook plugin.
  • Update bundled version of Twitter Cards PHP, fixing description property treated as a required property for photo card type.

1.0.2

  • Change attribute from value to content to match current Twitter documentation.

1.0.1

  • Improve automatic excerpt generator and scrubber

1.0

  • Initial release

Details

  • Version: 1.0.5
  • Active installations: 400
  • WordPress Version: 3.3
  • Tested up to: 3.5.2

Ratings


5 Stars
4 Stars
3 Stars
2 Stars
1 Stars