{"id":371572,"date":"2026-09-24T21:35:19","date_gmt":"2026-09-24T21:35:19","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/stayem-availability-calendar\/"},"modified":"2026-09-24T22:39:24","modified_gmt":"2026-09-24T22:39:24","slug":"stayem-availability-calendar","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/stayem-availability-calendar\/","author":23569362,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"7.1.2","requires":"6.3","requires_php":"7.4","requires_plugins":null,"header_name":"Stayem Availability Calendar","header_author":"Stayem","header_description":"Show your holiday rental's live availability from Stayem on your site, and make it readable by search engines and AI assistants.","assets_banners_color":"e2dbb8","last_updated":"2026-09-24 22:39:24","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/stayem.com\/integration","header_author_uri":"https:\/\/stayem.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":41,"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":"incubiq","date":"2026-09-24 22:39:24","revision":3712137}},"upgrade_notice":{"1.0.0":"<p>First release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3712053,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3712053,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3712053,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3712053,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":{"stayem\/calendar":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"stayem\/calendar","version":"1.0.0","title":"Stayem availability calendar","category":"widgets","icon":"calendar-alt","description":"Your holiday rental's live availability from Stayem.","keywords":["availability","calendar","booking","holiday rental","vacation rental"],"textdomain":"stayem-availability-calendar","attributes":{"property":{"type":"string","default":""},"view":{"type":"string","enum":["monthly","yearly"],"default":"monthly"},"height":{"type":"number","default":720}},"supports":{"html":false,"align":["wide","full"]},"editorScript":"file:.\/editor.js"}},"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3712137,"resolution":"1","location":"assets","locale":"","width":1280,"height":932},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3712137,"resolution":"2","location":"assets","locale":"","width":1280,"height":932},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3712137,"resolution":"3","location":"assets","locale":"","width":1280,"height":932},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3712137,"resolution":"4","location":"assets","locale":"","width":1280,"height":932}},"screenshots":{"1":"Your real availability on your own page, synced from Airbnb, Booking.com and Vrbo, so nobody has to email you to ask whether a week is still free.","2":"Add the calendar with the block: choose the property, the view and the height in the sidebar, and the editor previews the real thing.","3":"Settings &gt; Stayem: paste the link from your Stayem property, press Check connection, and that is the whole setup.","4":"Your open dates are also published as schema.org structured data, rendered by your server, so search engines and AI assistants can read them without running JavaScript."}},"plugin_section":[],"plugin_tags":[1274,275,261650,7103,6467],"plugin_category":[],"plugin_contributors":[282579],"plugin_business_model":[],"class_list":["post-371572","plugin","type-plugin","status-publish","hentry","plugin_tags-availability-calendar","plugin_tags-booking-calendar","plugin_tags-holiday-rental","plugin_tags-ical","plugin_tags-vacation-rental","plugin_contributors-incubiq","plugin_committers-incubiq"],"banners":{"banner":"https:\/\/ps.w.org\/stayem-availability-calendar\/assets\/banner-772x250.png?rev=3712053","banner_2x":"https:\/\/ps.w.org\/stayem-availability-calendar\/assets\/banner-1544x500.png?rev=3712053","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/stayem-availability-calendar\/assets\/icon-128x128.png?rev=3712053","icon_2x":"https:\/\/ps.w.org\/stayem-availability-calendar\/assets\/icon-256x256.png?rev=3712053","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/stayem-availability-calendar\/assets\/screenshot-1.png?rev=3712137","caption":"Your real availability on your own page, synced from Airbnb, Booking.com and Vrbo, so nobody has to email you to ask whether a week is still free."},{"src":"https:\/\/ps.w.org\/stayem-availability-calendar\/assets\/screenshot-2.png?rev=3712137","caption":"Add the calendar with the block: choose the property, the view and the height in the sidebar, and the editor previews the real thing."},{"src":"https:\/\/ps.w.org\/stayem-availability-calendar\/assets\/screenshot-3.png?rev=3712137","caption":"Settings &gt; Stayem: paste the link from your Stayem property, press Check connection, and that is the whole setup."},{"src":"https:\/\/ps.w.org\/stayem-availability-calendar\/assets\/screenshot-4.png?rev=3712137","caption":"Your open dates are also published as schema.org structured data, rendered by your server, so search engines and AI assistants can read them without running JavaScript."}],"raw_content":"<!--section=description-->\n<p>Stayem keeps one master calendar for your holiday rental, synced with Airbnb, Booking.com, VRBO and any other platform that speaks iCal. This plugin puts that calendar on your own website, so visitors always see your real availability and can book with you directly.<\/p>\n\n<ul>\n<li><strong>Always up to date.<\/strong> The calendar shows what Stayem knows: bookings from every platform, your own stays, and blocked dates.<\/li>\n<li><strong>Readable by search engines and AI assistants.<\/strong> The plugin adds your open dates to the page as schema.org structured data (JSON-LD), rendered by your server, so crawlers that don't run JavaScript still see them.<\/li>\n<li><strong>Booking requests.<\/strong> If you accept booking requests in Stayem, visitors can pick free dates on the calendar and send you an enquiry.<\/li>\n<li><strong>Block and shortcode.<\/strong> Use the \"Stayem availability calendar\" block, or <code>[stayem_calendar]<\/code> in the classic editor and page builders.<\/li>\n<li><strong>In your visitor's language.<\/strong> Month names and labels follow the visitor's browser language.<\/li>\n<\/ul>\n\n<p>The calendar and the structured data are free on every Stayem plan.<\/p>\n\n<h4>What you need<\/h4>\n\n<p>A Stayem account with your property added and \"Embed on your own site\" turned on in the property's settings. <a href=\"https:\/\/stayem.com\/login?callbackUrl=%2Fapp%2Fdashboard&amp;utm_source=wordpress.org&amp;utm_medium=plugin-directory&amp;utm_campaign=listing\">Create a free account<\/a>, no credit card required.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin connects to Stayem (https:\/\/stayem.com), the calendar service that holds your property's availability. It does nothing until you enter a Stayem property, and it sends no data about your site's visitors beyond what their browsers send when loading the calendar.<\/p>\n\n<ul>\n<li><strong>The calendar<\/strong>, <code>https:\/\/stayem.com\/embed\/calendar\/&lt;your-property&gt;<\/code>, is loaded in an iframe by each visitor's browser on pages that show it. Stayem receives the usual request information from the visitor's browser (IP address, browser user agent, language, and the address of your site as the referrer), handled as described in Stayem's Privacy Policy. Stayem also records which website showed the property's calendar and when, to measure how the calendar is used; that record holds your site's address only, no visitor data.<\/li>\n<li><strong>The structured data<\/strong>, <code>https:\/\/stayem.com\/embed\/schema\/&lt;your-property&gt;.json<\/code>, is fetched by your server when a page with a calendar is viewed: at most once an hour per property, or every five minutes while Stayem cannot be reached. The request carries only your property's Stayem slug in the URL, plus WordPress's standard user agent, which includes your site's address.<\/li>\n<li><strong>The connection check<\/strong>, <code>https:\/\/stayem.com\/api\/public\/availability\/&lt;your-property&gt;<\/code>, is fetched by your server only when an administrator clicks \"Check connection\".<\/li>\n<\/ul>\n\n<p>Stayem Terms of Use: https:\/\/stayem.com\/terms\nStayem Privacy Policy: https:\/\/stayem.com\/privacy<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install and activate the plugin.<\/li>\n<li>In Stayem, open your property's settings and turn on \"Embed on your own site\". Copy the property link it shows.<\/li>\n<li>In WordPress, go to Settings &gt; Stayem, paste the link as your default property, save, and click \"Check connection\".<\/li>\n<li>Add the \"Stayem availability calendar\" block to a page, or the shortcode <code>[stayem_calendar]<\/code>.<\/li>\n<\/ol>\n\n<p>Shortcode options: <code>[stayem_calendar property=\"your-property\" view=\"yearly\" height=\"900\"]<\/code>. <code>view<\/code> is <code>monthly<\/code> (two months, the default) or <code>yearly<\/code> (a 24-month strip).<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"the%20calendar%20says%20nothing%2C%20or%20the%20connection%20check%20can%27t%20find%20my%20property\"><h3>The calendar says nothing, or the connection check can't find my property<\/h3><\/dt>\n<dd><p>In Stayem, open the property's settings and check that \"Embed on your own site\" is on. If you changed the property's link (its slug) in Stayem, paste the new link into the plugin settings.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20elementor%2C%20divi%20and%20other%20page%20builders%3F\"><h3>Does it work with Elementor, Divi and other page builders?<\/h3><\/dt>\n<dd><p>The calendar does: add the <code>[stayem_calendar]<\/code> shortcode in a shortcode or text widget. The structured data is added only for calendars in the page's main content, so some page-builder layouts won't include it.<\/p><\/dd>\n<dt id=\"can%20i%20show%20calendars%20for%20several%20properties%3F\"><h3>Can I show calendars for several properties?<\/h3><\/dt>\n<dd><p>Yes. Give each block or shortcode its own property link. Calendars without one use the default property.<\/p><\/dd>\n<dt id=\"can%20i%20hide%20%22powered%20by%20stayem%22%3F\"><h3>Can I hide \"Powered by Stayem\"?<\/h3><\/dt>\n<dd><p>It is hidden by default. You can turn it on under Settings &gt; Stayem.<\/p><\/dd>\n<dt id=\"how%20quickly%20do%20changes%20show%3F\"><h3>How quickly do changes show?<\/h3><\/dt>\n<dd><p>The calendar shows your Stayem calendar as it is when the page loads. Bookings made on Airbnb, Booking.com or VRBO reach Stayem at its next hourly sync. The structured data is cached on your site for up to an hour.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>First release: availability calendar block and shortcode, server-side JSON-LD, connection check.<\/li>\n<\/ul>","raw_excerpt":"Show your holiday rental&#039;s live availability, synced with Airbnb, Booking.com and VRBO, and make your open dates readable by search engines and AI.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/371572","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=371572"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/incubiq"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=371572"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=371572"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=371572"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=371572"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=371572"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=371572"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}