Anybook Online Booking puts your Anybook booking widget on your WordPress site. Guests choose dates, times or a service, book and pay by card without leaving your website.
The plugin is a small connector. Prices, the calendar, bookings, payments and emails all stay on Anybook, so improvements to the widget reach your site without a plugin update.
You need an Anybook account. Anybook is a paid service; the plugin itself is free and has no locked features. See anybookapp.com for plans and prices.
Add the Anybook booking block anywhere in the block editor. In its sidebar choose what it shows (all your units, one unit, your appointments or one service, listed from your Anybook account), its colors (your theme’s palette is offered), the wording of the booking button and two headings, and whether it opens guests’ email links. Choose Availability overview to show which days are free in the weeks ahead instead; then choose the weeks shown (2 to 26, 12 if left alone), whether prices show, which units (all of them if none is ticked) and whether appointments have one row per service or one row per team member for one service. The overview uses the colors on the plugin’s settings page. A guest who clicks a free day gets the booking widget. The editor shows a preview card; the live widget shows on the published page. A Shortcode block holding [anybook ...] can be turned into the block, keeping its choices.
For the classic editor and page builders, [anybook] shows the same widget with the same choices:
show="all", show="unit", show="appointments" or show="service": what to show (all units if left out).unit="belle": one unit (its code in Anybook).service="cut": one service; services="yes" also means appointments.accent="#0b6e4f" and text="#1f2933": colors.guest_links="yes": this widget opens guests’ email links when a page has several.button_text="Book now", details_heading="About you", dates_text="Pick your dates": wording.The availability overview: [anybook show="overview"], with these choices:
weeks="12": how many weeks it shows, 2 to 26 (12 if left out).prices="yes": show prices.units="belle,kayak": only these units (their codes in Anybook, separated by commas); all units if left out.rows="people" service="...": one row per team member for that one service (its id or code in Anybook); otherwise one row per service.In Elementor, put the shortcode in a Shortcode widget; in Divi, in a Code or Text module. The plugin finds the shortcode in both, so the widget’s script loads in the page’s head and the settings page knows your booking page still holds the widget. With other page builders the widget works too, but its script loads at the end of the page; if a guest’s email link does not open the booking, put the shortcode in the page’s main content as well, or ask the builder’s support to call the anybook_page_has_widget filter.
This plugin connects your website to Anybook (https://anybookapp.com), the booking service that takes your bookings and payments. Without Anybook the plugin does nothing.
Your website contacts Anybook only after an administrator or editor has done one of these things:
Your visitors’ browsers contact Anybook as well:
The plugin loads remote scripts only on pages that show the widget or the availability overview, never in the WordPress admin, and only once a business is connected. They are part of the Anybook service and are the widget itself, so they are not in the plugin. They load over https from the booking site’s plain address, so changes to the widget reach your site without a plugin update.
Anybook terms of service: https://anybookapp.com/terms
Anybook privacy policy: https://anybookapp.com/privacy
Stripe terms: https://stripe.com/legal and privacy policy: https://stripe.com/privacy
The plugin adds no tracking and stores no booking, guest or payment details on your website. It suggests words for your privacy policy under Settings, Privacy.
The folder build/booking/ holds generated files, made from human-readable source that ships in this plugin.
blocks/booking/ is the source of everything in build/booking/, including the minified build/booking/index.js. Start with blocks/booking/index.js, edit.js, shortcode.js, editor.scss and block.json.package.json and package-lock.json, in the plugin’s main folder, list the exact tools and versions.@wordpress/scripts 30.27.0 (webpack and Sass), which npm ci installs.To rebuild the block, run these two commands in the plugin’s main folder:
npm ci
npm run build
npm run build runs `wp-scripts build --webpack-src-dir=blocks --output-path=build` and writes `build/booking/`. All the plugin's other files are plain PHP and need no build. The Anybook widget scripts are not part of this plugin: see External services.