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.

Commons Booking


This plugin gives associations, groups and individuals the ability to share items (e.g. cargobikes, tools) with users. It is based on the idea of Commons and sharing resources for the benefit of the community.

It was developed for the “commons cargo bike” movement across Germany and Austria, but it can use it for any kind items.

Unique features:

  • Items, locations and timeframes: No need for a “centralised storage”, items can be assigned to different locations for the duration of a timeframe, each with their own contact information.
  • Simple booking process: A booking is at least one full day, just pick the date on the calendar.
  • Auto-accept bookings: A registered user can book items without the need for administration.
  • Codes: The plugin automatically generates booking codes, which are used at the station to validate the booking.
  • Users can leave booking comments (e.g. what they use the item for).

Use cases:

  • You/your associations owns special tools that are not in use every day, and you want to make them available to a local group.
  • You own a cargo bike that you want to share with the community, and it will be placed at different locations throughout the year.

Plugin websites


  • Booking calendar
  • Items list
  • Booking confirmation
  • User bookings list


Using The WordPress Dashboard

  1. Navigate to the ‘Add New’ in the plugins dashboard
  2. Search for ‘commons-booking’
  3. Click ‘Install Now’
  4. Activate the plugin on the Plugin dashboard

Uploading in WordPress Dashboard

  1. Navigate to the ‘Add New’ in the plugins dashboard
  2. Navigate to the ‘Upload’ area
  3. Select from your computer
  4. Click ‘Install Now’
  5. Activate the plugin in the Plugin dashboard

Using FTP

  1. Download
  2. Extract the commons-booking directory to your computer
  3. Upload the commons-booking directory to the /wp-content/plugins/ directory
  4. Activate the plugin in the Plugin dashboard


Installation Instructions

Using The WordPress Dashboard

  1. Navigate to the ‘Add New’ in the plugins dashboard
  2. Search for ‘commons-booking’
  3. Click ‘Install Now’
  4. Activate the plugin on the Plugin dashboard

Uploading in WordPress Dashboard

  1. Navigate to the ‘Add New’ in the plugins dashboard
  2. Navigate to the ‘Upload’ area
  3. Select from your computer
  4. Click ‘Install Now’
  5. Activate the plugin in the Plugin dashboard

Using FTP

  1. Download
  2. Extract the commons-booking directory to your computer
  3. Upload the commons-booking directory to the /wp-content/plugins/ directory
  4. Activate the plugin in the Plugin dashboard
Where can i find help/report bugs?


Great piece of software!

We are using the software to lend our cargobike for free to people for free in our city and it works well. We also get good support by the developers! Thanks for making this possible!
Read all 2 reviews

Contributors & Developers

“Commons Booking” is open source software. The following people have contributed to this plugin.


“Commons Booking” has been translated into 1 locale. Thank you to the translators for their contributions.

Translate “Commons Booking” into your language.

Interested in development?

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


  • FIXED: Closed days are now correctly rendered on the calendar, and non-bookable.

  • FIXED: Re-added screenshots & updated WP plugin directory description.

  • FIXED: Yoast SEO campatibility
  • FIXED: Jetpack Compatibility #146

  • FIXED: a typo in email registration settings

  • FIXED: Location information is now displayed correctly.

  • CHANGE: Plugin directory structure flattened

  • CHANGE: Editors now have access to the CB Menu. (capability: publish_pages)
  • FIX: Closed days where not correctly rendered

  • FIX: Javascript validation no longer failing if week day row is activated


  • FEATURE: Set sender name and email address for booking confirmation emails.

  • Updated profile cleanup styles for standard WordPress & “Theme My Login”
  • Updated settings intro text to be translateable
  • Consolidated the two setting options under “Advanced” into “Customize Login and Registration pages”, since one doesn´t make sense without the other.


  • FIX: Issue #131: Booking comments are now restricted to max 140 characters.
  • ENHANCEMENT: Compatibility with Theme my Login & Kasimir WordPress-Theme
  • FIX: No more Javscript errors if no timeframe configured. Bookingbar is hidden.
  • ENHANCEMENT: User Widget formatting


  • FEATURE: Category WordPress Widget – List all item categories
  • FEATURE: User WordPress Widget – User funtions (Login/Logout, Registration, “My Bookings”)
  • FEATURE: New Setting: Themes (now included: “standard” & kasimir”)
  • FEATURE: New Setting: Show Day Name Row (Mon, Tue, Wed…) above the calendar
  • FEATURE: New Setting: Closed days count. Now you can set how the system counts any number of closed days (0 or 1). See Issue #116
  • FIX Issue #120: Bulk delete in Bookings table
  • FIX: The first overbookable day was not correctly marked in calendar selection.
  • FIX Issue #134: Extra user fields are now visible in backend

  • FIX: /Languages/ folder removed from svn, translations should be applied now.

  • FIX: Booking comments now displayed regardless of DB Prefix (again, this should do it).
  • FIX: CSS Styling of rows with only one item.
  • FIX: Removed PHP shorthand tag causing errors on some servers.

  • FIX: Booking comments now displayed regardless of DB Prefix.

  • FIX Issue #120: Bookings can be deleted, correct Ids are printed in the bookings table.
  • FIX Translation strings for the booking table.
  • FIX: Removed button borders in css
  • FIX: Logout-Button has button styling now.
  • ENHANCEMENT Bookings table filter dropdown: Now sorted alphabetically.
  • FEATURE: Added optional row of weekdays.

  • Removed language files & functions.

  • Repackaging so the german translation gets picked up.


  • FEATURE: Added print button to edit timeframes screen and custom print styles.
  • ENHANCEMENT: Instead of code ids, the codes are now shown in the bookings table.
  • FIX: All locations/items are visible in the filter dropdown again.
  • FIX: Users sometimes could not access their bookings in
  • Cleanup of language files (Removed Whitespaces in strings, etc.)

* FIX:  Double Bookings (two pending bookings on the same day could be both finalised) are no longer possible.

  • FIX: Address field now printed out correctly
  • FIX: Now correctly calculating the date difference to enable/disable booking cancel button.
  • ENHANCEMENT: Better structure of variables in SASS Files
  • ENHANCEMENT: Design updates.
  • ENHANCEMENT: Better display of the table filter if no items/timeframes/codes have been created.
  • FIX: Flushing rewrite rules should no longer be necessary on first installation.

  • FIX: Booking is now possible when using custom db prefixes.

  • Sanitizing extra user profile fields

  • Re-packeged plugin. Should fix “can not confirm or cancel” error
  • FIX: Address was not printed on calendar. Issue #106
  • ENHANCEMENT: Address now added to timeframes-compact template.

  • FIX: Show no error message if one of the location address fields are empty

  • FIX: When using the plugin Yoast SEO, login/user-bar was shown multiple times
  • FIX Issue #98 : enabled pagination on item pages


  • FEATURE: Redesigned Calendar with better representation of pickup/return/booking over weekends and helpful tooltips
  • FEATURE: Redesigned item lists
  • FEATURE: Redesigned timeframes.
  • FEATURE: Bookings list & booking Detail now have a handy navigation bar.
  • FEATURE: Added CRON job: Pending bookings will be deleted after one day.
  • FEATURE: Booking Comments. Users can add a comment on the booking review screen, which will be shown in the calendar tooltip. Uses the WordPress comments feature, so
  • Behaviour of the calendar date picker. Now, you have to select the days in sequence.
  • REMOVED: User Profile/Registration/Forgot Password functionality. I recommend installing “Theme my Login”.
  • FIX: Now correctly jumping to selected timeframe anchor when “Book here” was clicked in item list
  • FIX: Issue with javascript de/selection sometimes behaving strange
  • FIX: Javascript validation bug when booking over multiple days
  • FIX: Server-side booking validation (closed days are now correctly counted)
  • FIX: Fix: Registration page extra fields were not properly defined ( if $_POST didn´t exist)
  • FIX: User meta data was not saved when editing the profile.
  • FIX: Unchecked Checkboxes in settings don´t throw errors anymore.
  • FIX: Bookings that are “pending” are no longer shown on the User Bookings page.
  • FIX: Codes table pagination
  • FIX: Bookings table pagination
  • FIX: Pagination table
  • FIX: Fixed ambiguous (wrong) message after hitting “Save and generate codes” on the Timeframes edit screen when no changes were made.
  • FIX: Plugin localization string in cb-timeframes-edit.php
  • FIX: Items List: If no item short description provided, show a message.
  • Fix: URL to booking in booking confirmation email now compatible with WordPress non-pretty Permalinks (?page=X)
  • FIX: Double bookings are no longer possible. (compare function (booked days != selected days) did not work).
  • FIX: Users can´t cancel bookings from the past (booking end date < current date)
  • FIX: HTML structure, items without a timeframe now have a proper end < div > ending-tag
  • FIX: Item Timeframes: If no timeframe present, display message
  • FIX: Booking over closed days php validation now correctly throws an error when javascript is tricked.
  • ENHANCEMENT: Daily Cron job deletes all pending bookings older than one day
  • ENHANCEMENT: Output of location address can now be formatted (Localisation in translation file)
  • ENHANCEMENT: Adding new timeframes from the item edit screen: Added a link to navigate back to the item.
  • ENHANCEMENT: Timeframe Edit Screen: First location/Item is pre-selected in dropdown menu. Provides better behaviour if using the plugin with just one location.
  • ENHANCEMENT: Timeframe Edit Screen: Added More meaningful message if no locations/items available.
  • ENHANCEMENT: Booking Review & Booking Confirmation are now separate pages (so you can add your own texts).
  • ENHANCEMENT: Bookings Table is now sortable
  • ENHANCEMENT: Opening hours are now shown on the calendar pages.

  • Fix Issue #96: Login redirect not working


  • added missing translation strings
  • Fix user names / first_name / last_name in Email template
  • Fixed status string: canceled bookings are shown as canceled on the user page
  • Issue #74, Issue #71 Fix: A day that was booked couldn´t be booked again.
  • Fix: Replaced user_name with first_name & last_name

  • fixed missing translation strings (“Confirm Booking” & “Cancel”)
  • Now printing the address fields in item single view as comma-seperated


  • Removed login page backend setting & creation by plugin (all handled by user page)


  • New translation file (Thanks, Albert!)
  • Enhancement: Added link to WP Passwort recovery page.
  • Enhancement: If registration submit was not successful, the following page will include the form now.
  • Fix: Removed dummy tooltip message
  • Fix: for an issue when the code generation module picked only elements with upper case “S”.
  • Fix: a bug where days with multi-page bookings were not correctly rendered as “non-bookable” if the booking start date had passed
  • Fix: No emails will be send if there are any errors in the registration process
  • Fix: Fixed a bug where days with multi-page bookings were not correctly rendered as “non-bookable” if the booking start date had passed.
  • Fix: Pagination in codes table: offset is calculated correctly now.

  • removed “info/more” button (normal WP page content is rendered now)

  • Fixed div tag not closed


  • Feature: Issue #34 Shortcode for items implemented
  • Feature: Days to show: Set the days to
  • Feature: Single Items: “More…” button is only shown if description is entered (item edit main text field)
  • Fix: User info (first & last name) now correctly displayed in booking admin table.
  • Fix: Issue #31: content will now display on functional pages
  • Fix: Compatibility with Page Builder
  • Fix: Calendar was not rendered
  • Fix: Backend tables now show 30 entries instead of 5
  • Fix: Datepicker now showing correctly
  • Fix: HTML Tags on pages were filtered by plugin
  • Fix: Issue #30 renamed css class to solve the issue that calendar was not rendered in wordpress themes with bootstrap-tooltip.
  • Fix: #36 fixed the issue that the timeframes with a start date later than today weren´t shown correctly in the item edit screen.
    • many more…


  • Added German translation

  • Fix: Now compatible with PHP Version 5.3.26


  • Fix: Timeframes starting on sundays now correctly indented
  • Fix: If only a single timeframe was configured, it was not shown at the item edit screen

0.4. “Surfin´Safari”

  • Auto-Setup: All necessary Settings fields will be set on activation
  • Added form input sanitization
  • New animations for the booking bar
  • If timeframe note is empty, hide the “-” delimiter
  • Now checking for date validity
  • Codes list: Titles of songs by the Beach Boys


  • Disable the settungs import/export function (not working right now)


  • Fixed dependecies

0.3 “Aloha”

  • A fresh new look
  • Major cleanup (functions and files)
  • User page
  • Custom registration page
  • Custom Login page
  • Feature: Users can cancel bookings

0.2 “Fab Four”

  • Codes list: Titles of songs by the Beatles
  • Booking calendar
  • Mailing functionality
  • Settings for messages and mail
  • Template-tags for messages and mails


  • Basic booking functionality
  • Timeframes
  • Bookings
  • Custom post types