magdev 602549208f Fix MD012 linting warning in CLAUDE.md
Remove duplicate blank line between session history sections.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-03 16:03:40 +01:00
2026-01-31 13:15:13 +01:00
2026-01-31 13:15:13 +01:00
2026-01-31 13:15:13 +01:00
2026-01-31 13:15:13 +01:00
2026-01-31 13:15:13 +01:00
2026-01-31 13:15:13 +01:00

WP BnB Management

A comprehensive Bed & Breakfast management system for WordPress. Manage buildings, rooms, bookings, and guests all within your WordPress admin.

Description

WP BnB Management enables WordPress to act as a full management system for B&B hosts. It handles multiple buildings with multiple rooms each, bookings, and guest data required for room rentals.

Key Features

  • Multi-Property Support: Manage multiple buildings, each with multiple rooms
  • Flexible Pricing: Configure short-term (nights), mid-term (weeks), and long-term (months) pricing
  • Seasonal Pricing: Set price modifiers for high/low seasons
  • Booking Management: Track reservations from inquiry to checkout
  • Guest Management: Store guest information securely with GDPR compliance
  • Data Encryption: Sensitive guest data (ID/passport) encrypted at rest
  • Additional Services: Offer extras like breakfast, parking, or tours
  • Frontend Integration: Gutenberg blocks, widgets, and shortcodes
  • Auto-Updates: Automatic update checks and installation from license server
  • Development Mode: License bypass for local development environments
  • Contact Form 7 Integration: Accept booking requests through forms (planned)

Requirements

  • WordPress 6.0 or higher
  • PHP 8.3 or higher
  • Valid license key

Installation

  1. Download the latest release from the releases page
  2. Upload the plugin to your /wp-content/plugins/ directory
  3. Activate the plugin through the 'Plugins' menu in WordPress
  4. Go to WP BnB → Settings → License to enter your license key
  5. Configure your business settings under WP BnB → Settings

Configuration

License Activation

  1. Navigate to WP BnB → Settings → License
  2. Enter your License Server URL
  3. Enter your License Key (from purchase confirmation)
  4. Enter the Server Secret (from purchase confirmation)
  5. Click Activate License

General Settings

  • Business Name: Your B&B business name
  • Currency: Select your preferred currency (CHF, EUR, USD, GBP)
  • Business Address: Street, city, postal code, country
  • Contact Information: Email, phone, website
  • Social Media: Facebook, Instagram, X (Twitter), LinkedIn, TripAdvisor

Update Settings

  • Update Notifications: Enable/disable update notifications in WordPress
  • Automatic Updates: Enable/disable automatic plugin updates
  • Check Frequency: How often to check for updates (1-168 hours)

Development Mode

The plugin automatically detects local development environments and bypasses license validation. Supported environments:

  • localhost, 127.0.0.1, ::1
  • Domains ending in .local, .test, .localhost, .dev, .ddev.site
  • Private IP ranges (10.x.x.x, 172.16-31.x.x, 192.168.x.x)

Usage

Managing Buildings

  1. Go to WP BnB → Buildings
  2. Click Add New
  3. Enter building details (name, address, description)
  4. Add featured image
  5. Publish

Managing Rooms

  1. Go to WP BnB → Rooms
  2. Click Add New
  3. Select the parent building
  4. Configure room details and pricing
  5. Add amenities and room type
  6. Publish

Managing Bookings

  1. Go to WP BnB → Bookings
  2. View and manage all reservations
  3. Update booking status as guests progress

Managing Guests

  1. Go to WP BnB → Guests
  2. View guest records and booking history
  3. Manage guest information

Shortcodes

Display buildings and rooms on your site using shortcodes:

[bnb_buildings]                    - List all buildings (grid/list layout)
[bnb_rooms building="123"]         - List rooms, optionally filtered by building
[bnb_room_search]                  - Interactive room search form
[bnb_building id="123"]            - Display a single building
[bnb_room id="456"]                - Display a single room with availability

Shortcode Attributes

[bnb_buildings] and [bnb_rooms]:

  • layout - "grid" or "list" (default: grid)
  • columns - 1-4 columns (default: 3)
  • limit - Number of items (default: 12)
  • orderby - title, date, price, capacity (default: title)
  • order - ASC or DESC (default: ASC)

[bnb_rooms] additional attributes:

  • building - Building ID to filter by
  • room_type - Room type slug to filter by
  • amenities - Comma-separated amenity slugs

Gutenberg Blocks

The following blocks are available in the block editor:

  • Building - Display a single building with details
  • Room - Display a single room with availability form
  • Room Search - Interactive search form with filters
  • Buildings List - Display buildings grid/list
  • Rooms List - Display rooms grid/list with filters

Widgets

Available sidebar widgets:

  • Similar Rooms - Show rooms from same building or room type
  • Building Rooms - List all rooms in a building
  • Availability Calendar - Mini calendar showing booking status

Hooks and Filters

Developers can customize behavior using these hooks:

// Modify price calculation
add_filter( 'wp_bnb_calculate_price', function( $price, $room_id, $dates ) {
    // Custom pricing logic
    return $price;
}, 10, 3 );

// Before booking creation
add_action( 'wp_bnb_before_booking_create', function( $booking_data ) {
    // Custom validation or logging
} );

Frequently Asked Questions

Do I need a license to use this plugin?

Yes, a valid license is required to use the frontend features in production. The admin functionality works without a license for evaluation purposes. Local development environments (localhost, .local, .test, .dev domains) automatically bypass license validation.

Can I manage multiple properties?

Yes, you can create unlimited buildings and rooms.

Is the plugin GDPR compliant?

Yes, guest data can be exported and deleted on request, and consent is tracked appropriately.

Does it integrate with WooCommerce?

WooCommerce integration for payments is planned for a future release.

How is guest data secured?

Sensitive guest data like passport/ID numbers are encrypted using AES-256-CBC encryption before storage. The encryption key is derived from your WordPress AUTH_KEY, ensuring data is secure at rest.

Changelog

See CHANGELOG.md for a detailed list of changes.

Support

For support, please create an issue at: https://src.bundespruefstelle.ch/magdev/wp-bnb/issues

Author

Marco Graetsch

License

GPL-2.0-or-later

This plugin is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or any later version.

Description
WordPress BnB Management tool
Readme 1.1 MiB
2026-02-03 22:40:11 +00:00
Languages
PHP 84.2%
JavaScript 8.7%
CSS 7.1%