External Services

The External Services feature allows routes to be linked to multiple external platforms such as Strava, Garmin Connect, Ride with GPS, Komoot, and more. This replaces the previous single "Strava URL" field with a flexible multi-service system.

Overview

Key features of the external services system:


Supported Platforms

The following platforms are automatically detected from URLs:

Platform URL Pattern Icon
Strava strava.com Strava logo (orange)
Ride with GPS ridewithgps.com Route icon (green)
Komoot komoot.com Map marker (lime green)
Garmin Connect garmin.com Heartbeat icon (blue)
MapMyRide mapmyride.com External link icon
Wahoo wahoo.com External link icon
TrainingPeaks trainingpeaks.com External link icon
Wikiloc wikiloc.com External link icon
PlotARoute plotaroute.com External link icon
AllTrails alltrails.com External link icon

Any URL that doesn't match a known platform will be displayed as "External Link" with a generic external link icon.



How Links Are Displayed

On Route Pages

External services appear in the route information table with:

Icon Colours

💡 Dark Mode: Colours are automatically adjusted in dark mode to ensure they remain legible against dark backgrounds.

Send to RideWithGPS

A separate, one-click feature from the manual External Services links above: a "Send to RideWithGPS" button on a route's page lets a visitor push that route's GPX directly into their own RideWithGPS account, without downloading and re-uploading it themselves.

How it works

Setup

  1. Register a free OAuth application at RideWithGPS's API clients page.
  2. On this plugin's Setup page, under Third-Party Services, paste in the Client ID and Client Secret RideWithGPS gives you.
  3. That same section shows the exact Redirect URI to paste back into RideWithGPS's application settings - it must match exactly.
  4. Turn the feature on for visitors from the Config page's Main Page tab ("Send to RideWithGPS").
💡 Why only RideWithGPS? Of the platforms this plugin's routes link to, RideWithGPS was the only one found to offer a free, self-serve way to do this that treats a pushed file as an actual route rather than a recorded activity. Garmin, Strava, Wahoo, and Komoot were all investigated and ruled out for the time being - see the plugin's development notes if that changes.

Migration from Strava URL

If you previously used the old single "Strava URL" field, your data will be automatically migrated:

Automatic Migration

When a route is viewed or edited:

  1. The system checks if external_ride_links is empty
  2. If empty, it looks for an old strava_url value
  3. If found, the URL is copied to the new field
  4. The old field is then cleared

Google Sheets Import

When importing routes from Google Sheets:

⚠️ Note: No manual migration is required. The system handles migration transparently when routes are viewed or edited.