At present, Jetpack doesn’t use shortlinks when visitors share your content through the built-in Sharing module. With length-limited services like Twitter, this can be a problem. Take, for example, http://ethitter.com/2013/05/using-shortlinks-with-jetpack-sharing/ versus http://eth.pw/s; the latter frees up many more precious characters.
Thankfully, the folks who built the Sharing module provided a filter to override the link used with the sharing buttons.
Add this snippet of code to your theme’s functions.php
file, or a file in your site’s wp-content/mu-plugins
directory, and your visitors will be sharing with shortlinks in no time.
/** * Force Jetpack's Sharing module to use a shortlink rather than full permalink * * From http://eth.pw/s * * @param string $url * @param int $post_id * @uses wp_get_shortlink * @filter sharing_permalink * @return string */ function eth_sharedaddy_shortlink( $url, $post_id ) { return wp_get_shortlink( $post_id ); } add_filter( 'sharing_permalink', 'eth_sharedaddy_shortlink', 10, 2 );
Note that the Publicize module, which handles automatically sharing your content to your own connected social media accounts, does use shortlinks already; therefore, the code snippet above won’t have any impact on Publicize.
Also, I opted not to make this a plugin in anticipation of Jetpack making the switch to shortlinks at some point.