{"id":276591,"date":"2026-04-11T16:42:29","date_gmt":"2026-04-11T16:42:29","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/hotel-booking-manager\/"},"modified":"2026-04-14T16:19:13","modified_gmt":"2026-04-14T16:19:13","slug":"tarikul-hotel-booking-manager","status":"closed","type":"plugin","link":"https:\/\/es.wordpress.org\/plugins\/tarikul-hotel-booking-manager\/","author":23068298,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"6.7.5","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"Tarikul Hotel Booking Manager","header_author":"Syed Tarikul Islam","header_description":"A complete hotel booking management system for WordPress","assets_banners_color":"1a2744","last_updated":"2026-04-14 16:19:13","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/tarikul.top\/","header_plugin_uri":"https:\/\/tarikul.top\/tarikul-hotel-booking-manager","header_author_uri":"https:\/\/tarikul.top","rating":0,"author_block_rating":0,"active_installs":0,"downloads":123,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"riko910","date":"2026-04-14 16:19:13"}},"upgrade_notice":{"1.0.0":"<p>First stable release. Install WooCommerce before going live if you need online payments.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3504092,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128}},"assets_banners":{"banner-772x250.png":{"filename":"banner-772x250.png","revision":3504092,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3504090,"resolution":"1","location":"assets","locale":"","width":1384,"height":919},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3504090,"resolution":"2","location":"assets","locale":"","width":1374,"height":873},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3504090,"resolution":"3","location":"assets","locale":"","width":1720,"height":911},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3504090,"resolution":"4","location":"assets","locale":"","width":1376,"height":643},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3504090,"resolution":"5","location":"assets","locale":"","width":1592,"height":799},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3504090,"resolution":"6","location":"assets","locale":"","width":1631,"height":901}},"screenshots":{"1":"<strong>Hotel Booking \u2192 Dashboard<\/strong> \u2014 At-a-glance stats and recent bookings (React).","2":"<strong>Bookings<\/strong> \u2014 Filterable list with status and detail views.","3":"<strong>Calendar<\/strong> \u2014 Month or timeline view with legend and room filter.","4":"<strong>Settings<\/strong> \u2014 Tabs for general, booking, payment, pricing, email, and display options.","5":"<strong>Booking wizard<\/strong> \u2014 Search dates, pick a room, guest details, summary, and WooCommerce checkout.","6":"<strong>Room search<\/strong> \u2014 Grid of bookable rooms with filters and pricing."}},"plugin_section":[],"plugin_tags":[269,4488,1475,1582,286],"plugin_category":[40],"plugin_contributors":[239633],"plugin_business_model":[],"class_list":["post-276591","plugin","type-plugin","status-closed","hentry","plugin_tags-booking","plugin_tags-hotel","plugin_tags-reservations","plugin_tags-rooms","plugin_tags-woocommerce","plugin_category-calendar-and-events","plugin_contributors-riko910","plugin_committers-riko910"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/tarikul-hotel-booking-manager_1a2744.svg","icon_2x":false,"generated":true},"screenshots":[{"src":"https:\/\/ps.w.org\/tarikul-hotel-booking-manager\/assets\/screenshot-1.png?rev=3504090","caption":"<strong>Hotel Booking \u2192 Dashboard<\/strong> \u2014 At-a-glance stats and recent bookings (React)."},{"src":"https:\/\/ps.w.org\/tarikul-hotel-booking-manager\/assets\/screenshot-2.png?rev=3504090","caption":"<strong>Bookings<\/strong> \u2014 Filterable list with status and detail views."},{"src":"https:\/\/ps.w.org\/tarikul-hotel-booking-manager\/assets\/screenshot-3.png?rev=3504090","caption":"<strong>Calendar<\/strong> \u2014 Month or timeline view with legend and room filter."},{"src":"https:\/\/ps.w.org\/tarikul-hotel-booking-manager\/assets\/screenshot-4.png?rev=3504090","caption":"<strong>Settings<\/strong> \u2014 Tabs for general, booking, payment, pricing, email, and display options."},{"src":"https:\/\/ps.w.org\/tarikul-hotel-booking-manager\/assets\/screenshot-5.png?rev=3504090","caption":"<strong>Booking wizard<\/strong> \u2014 Search dates, pick a room, guest details, summary, and WooCommerce checkout."},{"src":"https:\/\/ps.w.org\/tarikul-hotel-booking-manager\/assets\/screenshot-6.png?rev=3504090","caption":"<strong>Room search<\/strong> \u2014 Grid of bookable rooms with filters and pricing."}],"raw_content":"<!--section=description-->\n<p><strong>Hotel Booking Management System<\/strong> (Tarikul Hotel Booking Manager) is a full-lifecycle hotel booking plugin for WordPress. It combines a custom <strong>Rooms<\/strong> catalog, a <strong>bookings database<\/strong>, <strong>smart pricing<\/strong>, <strong>availability rules<\/strong>, and <strong>WooCommerce<\/strong> so guests pay through your existing store while staff manage everything from a dedicated dashboard.<\/p>\n\n<h4>Why this plugin<\/h4>\n\n<ul>\n<li><strong>One place for rooms and revenue<\/strong> \u2014 Create room types with photos, amenities, capacity, and nightly rates; link each room to inventory and bookings.<\/li>\n<li><strong>Checkout you already trust<\/strong> \u2014 When WooCommerce is active, each room can sync to a <strong>hidden variable product<\/strong> (Standard \/ Weekend rate variations). Orders drive confirmation, payment, and cancellation flows.<\/li>\n<li><strong>Modern UI<\/strong> \u2014 The public booking journey and room search run in <strong>React<\/strong> with a cohesive design; the admin area uses <strong>React<\/strong> for dashboard, bookings list, calendar, and settings.<\/li>\n<li><strong>API-first<\/strong> \u2014 A structured REST API under <code>hbm\/v1<\/code> powers the React apps and can support custom integrations.<\/li>\n<\/ul>\n\n<h4>Core features<\/h4>\n\n<p><strong>Rooms &amp; content<\/strong><\/p>\n\n<ul>\n<li>Custom post type <code>hbm_room<\/code> with archive support (pretty URLs under <code>rooms<\/code> by default).<\/li>\n<li>Taxonomies for <strong>room types<\/strong> and <strong>amenities<\/strong>.<\/li>\n<li>Rich room editor, featured image, gallery meta, and a dedicated <strong>single room<\/strong> layout with optional gallery modal and \u201cContinue to booking\u201d form.<\/li>\n<\/ul>\n\n<p><strong>Bookings &amp; availability<\/strong><\/p>\n\n<ul>\n<li>Custom tables for <strong>bookings<\/strong>, <strong>per-day availability<\/strong>, <strong>pricing rules<\/strong>, <strong>extra services<\/strong>, and <strong>booking\u2013service<\/strong> links.<\/li>\n<li>Availability checks across date ranges; support for multiple units per room type where configured.<\/li>\n<li>Guest and logged-in booking flows; settings for <strong>guest booking<\/strong>, <strong>required phone<\/strong>, and <strong>cancellation windows<\/strong> before check-in.<\/li>\n<li><strong>Manual bookings<\/strong> for staff via the REST API (admin capability).<\/li>\n<\/ul>\n\n<p><strong>Pricing<\/strong><\/p>\n\n<ul>\n<li>Base and weekend rates per room; optional <strong>pricing rules<\/strong> by date range; <strong>tax<\/strong> and <strong>long-stay discounts<\/strong> (weekly \/ monthly) via settings.<\/li>\n<li>Server-side <strong>pricing<\/strong> endpoint so the booking summary matches what the server calculates (no hard-coded tax on the client).<\/li>\n<\/ul>\n\n<p><strong>WooCommerce<\/strong><\/p>\n\n<ul>\n<li>On room save, sync a <strong>catalog-hidden variable product<\/strong> with Standard \/ Weekend variations tied to room meta.<\/li>\n<li>Booking records linked to <strong>order ID<\/strong>; payment complete \/ processing \/ completed statuses confirm stays; cancelled \/ failed \/ refunded paths update booking state.<\/li>\n<li>Emails can include a <strong>Pay now<\/strong> link when a booking awaits payment (order pay URL).<\/li>\n<\/ul>\n\n<p><strong>Admin experience<\/strong><\/p>\n\n<ul>\n<li>Top-level <strong>Hotel Booking<\/strong> menu: Welcome, Dashboard, Bookings, Calendar, Settings.<\/li>\n<li><strong>Setup wizard<\/strong> on first run (hotel basics, booking rules, notifications); optional <strong>WooCommerce install<\/strong> helper when the store plugin is missing.<\/li>\n<li><strong>Calendar<\/strong>: month and timeline-style views, room filter, booking density, and per-day management when a room is selected.<\/li>\n<li><strong>Reports<\/strong> REST endpoints: dashboard stats, revenue, bookings, occupancy, room performance, guest analytics, CSV export.<\/li>\n<\/ul>\n\n<p><strong>Guest experience<\/strong><\/p>\n\n<ul>\n<li>Shortcode-driven React apps: full <strong>booking wizard<\/strong> (search \u2192 room \u2192 guest \u2192 summary \u2192 checkout), <strong>room search \/ grid<\/strong>, and <strong>my bookings<\/strong> (logged-in users).<\/li>\n<li>Deep links to the booking page with <code>hbm_room<\/code> and date query args (post type uses <code>query_var<\/code> disabled so these URLs stay on your page).<\/li>\n<\/ul>\n\n<p><strong>Security &amp; roles<\/strong><\/p>\n\n<ul>\n<li>Custom capability <code>manage_hotel_bookings<\/code> (assigned to administrators on activation).<\/li>\n<li>REST routes use nonces and appropriate permission callbacks for public vs. admin operations.<\/li>\n<\/ul>\n\n<h4>Technical snapshot<\/h4>\n\n<ul>\n<li><strong>Text domain:<\/strong> <code>tarikul-hotel-booking-manager<\/code> (translate with Loco Translate, WPML, or standard <code>.po<\/code> \/ <code>.mo<\/code> files).<\/li>\n<li><strong>REST namespace:<\/strong> <code>hbm\/v1<\/code> (e.g. <code>\/wp-json\/hbm\/v1\/rooms<\/code>, <code>\/bookings<\/code>, <code>\/settings<\/code>, <code>\/pricing<\/code>, <code>\/reports\/...<\/code>, <code>\/calendar\/...<\/code>).<\/li>\n<li><strong>Database tables (prefix +):<\/strong> <code>hbm_bookings<\/code>, <code>hbm_pricing_rules<\/code>, <code>hbm_availability<\/code>, <code>hbm_extra_services<\/code>, <code>hbm_booking_services<\/code>.<\/li>\n<\/ul>\n\n<h4>Requirements<\/h4>\n\n<ul>\n<li>WordPress <strong>5.8+<\/strong><\/li>\n<li>PHP <strong>7.4+<\/strong><\/li>\n<li><strong>WooCommerce<\/strong> recommended for production checkout (the plugin is built around it).<\/li>\n<\/ul>\n\n<h3>Privacy<\/h3>\n\n<p>The plugin stores booking data you collect from guests (name, email, phone, dates, party size, optional notes) in the WordPress database and may associate records with WooCommerce <strong>order IDs<\/strong>. Treat this data according to your privacy policy and applicable law (GDPR, etc.). Email delivery uses WordPress\u2019 <code>wp_mail()<\/code> facilities.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>tarikul-hotel-booking-manager<\/code> folder to <code>\/wp-content\/plugins\/<\/code>, or upload the ZIP via <strong>Plugins \u2192 Add New \u2192 Upload Plugin<\/strong>.<\/li>\n<li>Activate <strong>Ultimate Hotel Management System<\/strong> through the <strong>Plugins<\/strong> screen.<\/li>\n<li>Complete the onboarding flow under <strong>Hotel Booking \u2192 Welcome<\/strong> (and install\/activate WooCommerce if prompted).<\/li>\n<li>Visit <strong>Hotel Booking \u2192 Settings<\/strong> to confirm currency, check-in\/out times, tax, email, and booking rules.<\/li>\n<li>Add rooms under <strong>Hotel Rooms<\/strong> (custom post type in the admin menu).<\/li>\n<li>Place shortcodes on pages as needed (see below). On first activation, the plugin may create default pages for booking, search, and \u201cMy bookings\u201d if they do not already exist.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"which%20shortcodes%20are%20available%3F\"><h3>Which shortcodes are available?<\/h3><\/dt>\n<dd><ul>\n<li><code>[hbm_booking_form]<\/code> \u2014 Mounts the multi-step booking React app (<code>#hbm-booking-root<\/code>).<\/li>\n<li><code>[hbm_room_search]<\/code> \u2014 Room search and results grid (<code>#hbm-search-root<\/code>).<\/li>\n<li><code>[hbm_my_bookings]<\/code> \u2014 Lists the current user\u2019s bookings (<code>#hbm-mybookings-root<\/code>); for logged-in users only.<\/li>\n<\/ul><\/dd>\n<dt id=\"where%20do%20guests%20pay%3F\"><h3>Where do guests pay?<\/h3><\/dt>\n<dd><p>Through <strong>WooCommerce<\/strong>. After a booking is created, checkout follows your store\u2019s cart and payment gateways. Ensure WooCommerce is installed, configured, and that pages like Cart and Checkout exist.<\/p><\/dd>\n<dt id=\"what%20url%20is%20used%20for%20single%20rooms%3F\"><h3>What URL is used for single rooms?<\/h3><\/dt>\n<dd><p>Rooms use the <code>hbm_room<\/code> post type; permalinks default to the <code>rooms<\/code> rewrite slug (e.g. <code>yoursite.com\/rooms\/deluxe-king\/<\/code>). Visit <strong>Settings \u2192 Permalinks<\/strong> and click <strong>Save<\/strong> if links 404 after install.<\/p><\/dd>\n<dt id=\"can%20i%20block%20dates%20or%20override%20prices%3F\"><h3>Can I block dates or override prices?<\/h3><\/dt>\n<dd><p>Yes. Use the <strong>Calendar<\/strong> in admin (per room) and the availability \/ pricing data model. Closed days and overrides are stored in the <code>hbm_availability<\/code> table.<\/p><\/dd>\n<dt id=\"is%20guest%20checkout%20supported%3F\"><h3>Is guest checkout supported?<\/h3><\/dt>\n<dd><p>Yes, when enabled in settings. You can also require a phone number or restrict booking to logged-in users.<\/p><\/dd>\n<dt id=\"how%20do%20i%20translate%20the%20plugin%3F\"><h3>How do I translate the plugin?<\/h3><\/dt>\n<dd><p>Use the text domain <strong><code>tarikul-hotel-booking-manager<\/code><\/strong>. Generate or edit language files with <a href=\"https:\/\/wordpress.org\/plugins\/loco-translate\/\">Loco Translate<\/a> or Poedit, then place MO files under <code>wp-content\/languages\/plugins\/<\/code>.<\/p><\/dd>\n<dt id=\"does%20uninstall%20remove%20data%3F\"><h3>Does uninstall remove data?<\/h3><\/dt>\n<dd><p>Deactivating does not drop custom tables by default. For a clean removal, use a migration\/backup plan or remove booking-related data manually if you need a full reset after testing.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial public release.<\/li>\n<li>Custom post type and taxonomies for rooms.<\/li>\n<li>Bookings, availability, pricing rules, and extra-services schema.<\/li>\n<li>WooCommerce variable product sync (Standard \/ Weekend) and order-status driven booking lifecycle.<\/li>\n<li>REST API <code>hbm\/v1<\/code> for React admin and public apps.<\/li>\n<li>React admin: welcome\/setup, dashboard, bookings, calendar, settings.<\/li>\n<li>React public: booking form, room search, my bookings; server-side pricing endpoint.<\/li>\n<li>Email notifications for pending payment (with pay link), confirmation, and cancellation.<\/li>\n<li>Single-room template styling and assets.<\/li>\n<\/ul>","raw_excerpt":"Turn your WordPress site into a modern hotel booking stack: rooms, availability, pricing, WooCommerce checkout, and a React-powered admin and guest ex &hellip;","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/es.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/276591","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/es.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/es.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/es.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=276591"}],"author":[{"embeddable":true,"href":"https:\/\/es.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/riko910"}],"wp:attachment":[{"href":"https:\/\/es.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=276591"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/es.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=276591"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/es.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=276591"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/es.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=276591"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/es.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=276591"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/es.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=276591"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}