WP Strava


This plugin uses the Strava API to embed maps and activity for athletes and clubs on your WordPress site. Included are several widgets and shortcodes for showing maps and activity summaries.


[activity id=NUMBER] – add to any page or post. Shows a summary of the activity plus a map if a google maps key has been added.

Also takes the following optional parameters:

  • som – english/metric (system of measure – override from default setting).
  • map_width – width (width of image in pixels).
  • map_height – height (height of image in pixels).
  • athlete_token – specify a different athlete (you can copy this value from https://www.strava.com/settings/api or the wp-strava settings page at /wp-admin/options-general.php?page=wp-strava-options).

[ride] is an alias for [activity] and will accept the same parameters (kept for backwards compatibility).


Strava Latest Activity List – shows a list of the last few activities.

Strava Latest Map – shows map of latest activity with option to limit latest map to activities of a certain minimum distance.


The best there is, but room for improvement

Strava’s own facility to embed activities is rubbish, due to the fact that it’s not responsive.

This plugin is partially responsive and can be made fully responsive with a bit of tweaking.

Firstly, a little CSS:

.wp-strava-ride-container img {
  max-width: none;
  width: 100% !important;

Then ftp to wp-content/plugins/wp-strava/lib/RideShortcode.class.php

Download the file and then edit it. Inside you’ll see the markup for the information table.

Copy it and paste it twice, you will then have three identical tables. Then remove the bottom three rows from the second table and the top three rows from the third table.

You will now have a normal six column table and two three column tables.

Wrap the first table in a div and invent a class (e.g. <div class=”mobhide”>)

Wrap the second two tables in another div (e.g. <div class=”mobshow”>)

Then add some CSS to your stylesheet like this (change according to the widths of your site)

@media (max-width: 800px) {
@media (min-width: 800px) {

The map will now always be full width and when the page gets too narrow, the columns will split into two rows, so the content wont overflow, as it currently does.

The plugin generates an image for the map, which is great because you can’t style the map or interact with it. Adding those features would significantly improve the plugin, but credit has to be given to the devs for making the only Strava plugin that has the potential to work responsively.

Read all 5 reviews

Contributors & Developers

“WP Strava” is open source software. The following people have contributed to this plugin.


Translate “WP Strava” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



Added multi-athlete configuration.
Additional transitions from Ride -> Activity.
Updated setup instructions to reflect latest Strava API set up process.
Backwards Compatibility – removed PHP 5.3+ specific operator (should work with PHP 5.2 now – versions 1.1 and 1.1.1 don’t).
Reworked error reporting and formatting.


Changes to better support translations through https://translate.wordpress.org.
Cleaned up formatting.


Added [activity] shortcode to deprecate [ride] in the future.
Fixed static method call error in shortcode.
Added title to Strava Latest Map Widget.
Added Lance Willett to contributors.
Added target=”_blank” to widget hrefs.
Added Google Maps Key to settings (required for map images).
Added cache clear option to remove transient & image data.
Cleaned up formatting.


Change to Strava API V3.
Switch ride shortcode to use static map.


Use WordPress HTTP API for all remote calls.
Use WordPress Settings API for settings page.


Refactor some code.
Fixed several bugs.
Added feature to show athlete name/link to the widget if the search option is by club.


Added option to select unit of measurements on the widget.


Initial version.