Title: Boat Position
Author: Niels Olsen
Published: <strong>മെയ്‌ 31, 2026</strong>
Last modified: ജൂൺ 23, 2026

---

Search plugins

![](https://ps.w.org/boat-position/assets/banner-772x250.png?rev=3555344)

This plugin **hasn’t been tested with the latest 3 major releases of WordPress**.
It may no longer be maintained or supported and may have compatibility issues when
used with more recent versions of WordPress.

![](https://ps.w.org/boat-position/assets/icon-256x256.png?rev=3555344)

# Boat Position

 By [Niels Olsen](https://profiles.wordpress.org/pcio/)

[Download](https://downloads.wordpress.org/plugin/boat-position.1.2.0.zip)

 * [Details](https://ml.wordpress.org/plugins/boat-position/#description)
 * [Reviews](https://ml.wordpress.org/plugins/boat-position/#reviews)
 *  [Installation](https://ml.wordpress.org/plugins/boat-position/#installation)
 * [Development](https://ml.wordpress.org/plugins/boat-position/#developers)

 [Support](https://wordpress.org/support/plugin/boat-position/)

## Description

Boat Position turns your WordPress site into a live tracking and logbook service
for your boat.

The plugin is designed around the Teltonika RUTX50 router (*), a compact Linux-based
5G router with built-in GPS.
 A shell script on the router sends a position to your
site every minute. The plugin stores each position, runs a state machine to group
positions into trips and legs, and serves three public pages:

 * **Live map** (`/boat-position/map`) — shows the current position on an OpenStreetMap/
   OpenSeaMap map with a rotating arrow icon when underway and an idle indicator
   when stopped. Visible voyage plans are drawn as dashed green routes with flag
   markers.
 * **Logbook** (`/boat-position/history`) — calendar sidebar with trip history. 
   Click any day to see the full route on the map. Logged-in editors can label harbour
   names and merge incorrectly split trips.
 * **Voyage plans** (`/boat-position/plans`) — plan future voyages as ordered lists
   of waypoints with optional ETAs. Multiple plans are supported; each plan can 
   be toggled visible/hidden on the map independently.

The plugin also adds a **boat log** built on ordinary WordPress posts: place a post
in the _Boat Log_ category, give it coordinates (or default to the boat’s latest
known position), and it appears as a marker on the live map. Your theme handles 
all writing and display, and the `[boat_log_map_link]` shortcode links a post back
to the map and animates to its location.

Over 150 Danish harbours are included as seed data so harbour names are detected
automatically from GPS coordinates.

No third-party services or API keys are required beyond your own WordPress site.
Maps are rendered using the free Leaflet.js library with OpenStreetMap and OpenSeaMap
tiles.

(*) There are other alternatives to using the RTUTX50 router, any device that has
access to a GPS and the internet can be configured as the source of position data.

E.g. a linux machine like Rasberry PI connected to either its own GPS or the boat
NMEA data.

## Screenshots

[⌊Live map — current boat position with directional arrow on OpenSeaMap.⌉⌊Live map—
current boat position with directional arrow on OpenSeaMap.⌉[

Live map — current boat position with directional arrow on OpenSeaMap.

[⌊Logbook — calendar sidebar, trip list, and route drawn on the map.⌉⌊Logbook — 
calendar sidebar, trip list, and route drawn on the map.⌉[

Logbook — calendar sidebar, trip list, and route drawn on the map.

## Installation

 1. Upload the `boat-position` directory to `/wp-content/plugins/`.
 2. Activate the plugin in **Plugins** in the WordPress admin.
 3. Go to **Settings  Boat Position** to set a secret API key and find the router configuration
    instructions.
 4. Follow the router setup guide in **Plugins  Boat Position  About** to configure
    your router’s `sendgps.sh` script and cron job.
 5. Send a test position from a command prompt to verify the endpoint is working before
    installing on the boat.

After activation, if `/boat-position/map` returns a 404, go to **Settings  Permalinks**
and click **Save Changes** to flush the rewrite rules.

## FAQ

### How do I use this plugin?

Install and activate the plugin, then go to **Settings  Boat Position**. Set a secret
API key, then follow the router configuration guide in the About page to set up 
your router’s cron job.

### Does it only work with the RUTX50 router?

No. Any device that can send an HTTP POST request with `lat`, `lon`, `speed`, `course`,
and `gps_time` fields to the REST endpoint will work. The About page documents the
exact format.

### Where are the public pages?

The plugin registers three pages automatically — no WordPress pages or shortcodes
are needed:

 * Live map: `https://yoursite.com/boat-position/map`
 * Logbook: `https://yoursite.com/boat-position/history`
 * Voyage plans: `https://yoursite.com/boat-position/plans`

### Can I avoid storing the secret key in the database?

Yes. Define the key as a constant in `wp-config.php`:

define( ‘PCIO_BOAT_POSITION_API_KEY’, ‘your-secret-key-here’ );

When this constant is present, the database option is ignored and the settings field
is shown as read-only.

### The logbook is empty — no trips appear.

Check that the router is sending data by looking at your database’s `wp_boat_positions`
table. If rows are present but no trips appear, the trip engine may not have processed
them yet — visit the ingest endpoint directly or check the About page for the manual
trigger curl command.

## Reviews

ഈ പ്ലഗിന് റിവ്യൂകൾ ഒന്നുമില്ല.

## Contributors & Developers

“Boat Position” is open source software. The following people have contributed to
this plugin.

Contributors

 *   [ Niels Olsen ](https://profiles.wordpress.org/pcio/)

[Translate “Boat Position” into your language.](https://translate.wordpress.org/projects/wp-plugins/boat-position)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/boat-position/), check
out the [SVN repository](https://plugins.svn.wordpress.org/boat-position/), or subscribe
to the [development log](https://plugins.trac.wordpress.org/log/boat-position/) 
by [RSS](https://plugins.trac.wordpress.org/log/boat-position/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.2

 * **Boat log** — write voyage journal entries as ordinary WordPress posts (so your
   theme / Divi handles all writing and display).
    - Posts placed in the **Boat Log** category appear as markers on the live map.
    - Location meta box in the post editor with a mini map: set coordinates manually
      or click **Use current boat position**.
    - Boat-log posts with no location default automatically to the boat’s latest
      known position on save.
    - New `[boat_log_map_link]` shortcode links a post back to the live map and 
      animates to its location.
    - Public REST feed `GET /wp-json/boat-position/v1/blog-posts` exposes the boat-
      log markers.
    - **Blog** toggle on the live map to show or hide boat-log markers.
    - The _Boat Log_ category is created automatically on activation.

#### 1.1

 * **Voyage plans** (`/boat-position/plans`) — new page for planning future voyages.
    - Create and manage multiple named plans, each with an optional description.
    - Add waypoints with names, coordinates and optional ETAs (expected arrival 
      dates).
    - Drag-and-drop to reorder waypoints; inline editing of name and ETA per row.
    - Rebase tool: shift all ETAs from a chosen waypoint onwards by a number of 
      days.
    - Delete individual waypoints or entire plans.
    - Editable plan title and notes directly from the waypoint view.
    - Eye icon toggle per plan: **visible** (blue) or **hidden** (grey).
       Logged-
      in users save their choice to the database; anonymous visitors store it in
      browser localStorage.
    - All visible plans are drawn on the live map as dashed green routes with flag
      markers.
    - Clicking empty water on the map allows editors to add a waypoint directly 
      to the active plan.
    - Quick-pick datalist when adding waypoints: suggests all known harbours and
      existing plan waypoints.
 * Harbour management on the live map: all known harbours are shown as markers. 
   Logged-in editors can click any harbour to rename or delete it, and can click
   empty water to add a new harbour at that location.

#### 1.0

 * Initial release with tracking and history logbook.

## Meta

 *  Version **1.2.0**
 *  Last updated **6 ദിവസങ്ങൾ ago**
 *  Active installations **Fewer than 10**
 *  വേർഡ്പ്രസ്സ് പതിപ്പ് ** 6.2 അല്ലെങ്കില്‍ അതിലും ഉയര്‍ന്നത് **
 *  Tested up to **6.0.12**
 *  PHP പതിപ്പ് ** 8.1 അല്ലെങ്കില്‍ അതിലും ഉയര്‍ന്നത് **
 *  Language
 * [English (US)](https://wordpress.org/plugins/boat-position/)
 * Tags
 * [Boat](https://ml.wordpress.org/plugins/tags/boat/)[gps](https://ml.wordpress.org/plugins/tags/gps/)
   [logbook](https://ml.wordpress.org/plugins/tags/logbook/)[map](https://ml.wordpress.org/plugins/tags/map/)
   [tracking](https://ml.wordpress.org/plugins/tags/tracking/)
 *  [Advanced View](https://ml.wordpress.org/plugins/boat-position/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/boat-position/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/boat-position/reviews/)

## Contributors

 *   [ Niels Olsen ](https://profiles.wordpress.org/pcio/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/boat-position/)

## Donate

Would you like to support the advancement of this plugin?

 [ Donate to this plugin ](https://www.paypal.com/donate/?hosted_button_id=DFM2JV8JKTTM6)