{"id":49013,"date":"2025-08-11T12:24:28","date_gmt":"2025-08-11T12:24:28","guid":{"rendered":"https:\/\/crocoblock.com\/knowledge-base\/?post_type=article&#038;p=49013"},"modified":"2025-11-14T13:35:14","modified_gmt":"2025-11-14T13:35:14","slug":"creating-custom-single-page-for-cpt-based-booking","status":"publish","type":"article","link":"https:\/\/crocoblock.com\/knowledge-base\/jetbooking\/creating-custom-single-page-for-cpt-based-booking\/","title":{"rendered":"How to Create a Custom Single Page for CPT-Based Booking"},"content":{"rendered":"\n<p>This tutorial focuses on creating a custom single post page for booking with <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/how-to-create-a-custom-post-type-based-on-jetengine-plugin\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Custom Post Types<\/strong><\/a> for <em>JetBooking <\/em>using the<em> JetThemeCore <\/em>and <em>JetEngine <\/em>WordPress plugins. This layout lets you display detailed booking information and interactive forms tailored to each service.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"creating-the-single-page-template\">Creating the Single Page Template<\/h2>\n\n\n\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\"><div class=\"wp-block-group__inner-container\">\n<p>In this tutorial, we will show you how to set up a <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetthemecore\/how-to-add-a-single-post-page-template-with-elementor\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Single Post Page Template<\/strong><\/a> using the <em>JetThemeCore <\/em>plugin.&nbsp;<br>So, navigate to <strong><em>WordPress Dashboard &gt; Crocoblock &gt; Theme Builder <\/em><\/strong>&gt; scroll down to the \u201c<strong>CPT Single<\/strong>\u201d (\u201cProperties Single\u201d in this tutorial), and click the plus-shaped icon.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/template-builder-page.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/template-builder-page-1024x640.webp\" alt=\"template builder page\" class=\"wp-image-49014\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/template-builder-page-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/template-builder-page-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/template-builder-page-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/template-builder-page-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/template-builder-page-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/template-builder-page.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>In the newly opened pop-up, the conditions for the template should be set up.&nbsp;<\/p>\n\n\n\n<p>Pick the \u201cInclude\u201d option in the first dropdown, then move to the second, where the \u201cSingular\u201d option should be selected. In the next dropdown, select the <strong>CPT <\/strong>\u2014 in this case, \u201cTour\u201d. In the \u201cSelect\u201d field type \u201cAll\u201d.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/conditions-applied-to-the-template.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/conditions-applied-to-the-template-1024x640.webp\" alt=\"conditions applied to the template\" class=\"wp-image-49015\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/conditions-applied-to-the-template-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/conditions-applied-to-the-template-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/conditions-applied-to-the-template-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/conditions-applied-to-the-template-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/conditions-applied-to-the-template-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/conditions-applied-to-the-template.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Click the \u201c<strong>Create<\/strong>\u201d button.&nbsp;<\/p>\n\n\n\n<p>Then, we are redirected to the page with the newly created template. Type the name for the template. Then click the \u201c<strong>+<\/strong>\u201d icon next to the \u201c<strong>Overwrite theme body<\/strong>\u201d input and select the \u201cCreate Template\u201d option. You can choose the template from the library if you have one, but here we guide a step-by-step template creation process.&nbsp;<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/create-template-button-for-the-single-page.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/create-template-button-for-the-single-page-1024x640.webp\" alt=\"create template button for the single page\" class=\"wp-image-49016\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/create-template-button-for-the-single-page-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/create-template-button-for-the-single-page-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/create-template-button-for-the-single-page-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/create-template-button-for-the-single-page-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/create-template-button-for-the-single-page-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/create-template-button-for-the-single-page.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>In the newly appeared pop-up, choose the <strong>Template Content Type<\/strong> (\u201cElementor\u201d in this case), and enter the <strong>Template Name<\/strong>. Then, click the \u201c<strong>Create<\/strong>\u201d button.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/create-a-template-popup.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/create-a-template-popup-1024x640.webp\" alt=\"create a template popup\" class=\"wp-image-49017\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/create-a-template-popup-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/create-a-template-popup-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/create-a-template-popup-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/create-a-template-popup-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/create-a-template-popup-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/create-a-template-popup.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n<\/div><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"displaying-the-data-about-the-service\">Displaying the Data about the Service<\/h2>\n\n\n\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\"><div class=\"wp-block-group__inner-container\">\n<p>As the Elementor<em> <\/em>editor opens, you will be able to add all the needed widgets and style the template according to your needs. You can use <em>JetEngine <\/em>widgets to display dynamic content, such as meta fields or repeaters, on the Single Post page.<\/p>\n\n\n\n<p>Let\u2019s have a closer look at displaying the info about the service.&nbsp;<\/p>\n\n\n\n<p>First of all, we will display the title of the service.&nbsp;<\/p>\n\n\n\n<p>To do this, add the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/dynamic-field-widget-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Dynamic Field<\/strong><\/a> widget to the page. Keep the \u201cPost\/Term\/User\/Object\u201d option for the <strong>Source<\/strong>. Then select the \u201cTitle\u201d from the <strong>Object Field<\/strong> dropdown.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/displaying-title-with-dynamic-field.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/displaying-title-with-dynamic-field-1024x640.webp\" alt=\"displaying title with dynamic field\" class=\"wp-image-49018\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/displaying-title-with-dynamic-field-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/displaying-title-with-dynamic-field-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/displaying-title-with-dynamic-field-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/displaying-title-with-dynamic-field-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/displaying-title-with-dynamic-field-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/displaying-title-with-dynamic-field.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>When you need to display <a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/meta-field-types-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>meta fields<\/strong><\/a> from the post, add another <strong>Dynamic Field<\/strong> widget.&nbsp;<\/p>\n\n\n\n<p>Choose the \u201cMeta Data\u201d for the <strong>Source <\/strong>and select the needed<strong> Meta Field<\/strong> from the dropdown.<\/p>\n\n\n\n<p>If you need some extra text, you can enable the <strong>Customize field output<\/strong> toggle and add the required text to the newly appeared field. Ensure that the \u201c%s\u201d value is kept as it replaces the value of the field.&nbsp;<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/displaying-meta-fields-with-dynamic-field.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/displaying-meta-fields-with-dynamic-field-1024x640.webp\" alt=\"displaying meta fields with dynamic field\" class=\"wp-image-49019\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/displaying-meta-fields-with-dynamic-field-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/displaying-meta-fields-with-dynamic-field-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/displaying-meta-fields-with-dynamic-field-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/displaying-meta-fields-with-dynamic-field-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/displaying-meta-fields-with-dynamic-field-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/displaying-meta-fields-with-dynamic-field.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>You can also use a <a href=\"https:\/\/crocoblock.com\/widgets\/headline\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Headline<\/strong><\/a>, <strong>Heading<\/strong>, or <strong>Text Editor <\/strong>widget with the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/dynamic-tags-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Dynamic Tag<\/strong><\/a> to display the meta fields\u2019 values. <span style=\"box-sizing: border-box; margin: 0px; padding: 0px;\">We used the\u00a0<strong>Headline\u00a0<\/strong>widget of the\u00a0<a href=\"https:\/\/crocoblock.com\/plugins\/jetelements\/\" target=\"_blank\" rel=\"noopener\"><em>JetElements<\/em><\/a>\u00a0plugin to enter the description for<\/span> the\u00a0<strong>First part<\/strong>\u00a0and get the\u00a0<strong>Second Part<\/strong>\u00a0from the meta field using the\u00a0<strong>Dynamic Tag<\/strong>\u00a0icon and choosing the field from the dropdown.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/displaying-meta-field-with-headline.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/displaying-meta-field-with-headline-1024x640.webp\" alt=\"displaying meta field with headline\" class=\"wp-image-49020\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/displaying-meta-field-with-headline-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/displaying-meta-field-with-headline-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/displaying-meta-field-with-headline-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/displaying-meta-field-with-headline-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/displaying-meta-field-with-headline-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/displaying-meta-field-with-headline.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>In the same way, we display a couple more meta fields.&nbsp;<\/p>\n\n\n\n<p>Now, let\u2019s add the post\u2019s thumbnail using the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/jetengine-dynamic-image-widget-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Dynamic Image<\/strong><\/a> widget. By default, the \u201cPost thumbnail\u201d is chosen as a <strong>Source<\/strong>. If you need to display the thumbnail, keep the settings as they are. To display an image from a custom meta field, click the dropdown and select the field name you need.\u00a0<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/thumbnail-is-added-with-the-dynamic-image.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/thumbnail-is-added-with-the-dynamic-image-1024x640.webp\" alt=\"thumbnail is added with the dynamic image\" class=\"wp-image-49021\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/thumbnail-is-added-with-the-dynamic-image-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/thumbnail-is-added-with-the-dynamic-image-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/thumbnail-is-added-with-the-dynamic-image-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/thumbnail-is-added-with-the-dynamic-image-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/thumbnail-is-added-with-the-dynamic-image-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/thumbnail-is-added-with-the-dynamic-image.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>However, in this tutorial, we will display not one image as a thumbnail, but a <a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/meta-field-types-overview\/#gallery\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>gallery field<\/strong><\/a>. For that, add the <a href=\"https:\/\/crocoblock.com\/widgets\/product-gallery-slider\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Gallery Slider<\/strong><\/a> widget and choose the \u201cManual Select\u201d for the <strong>Source<\/strong>. In the newly appeared field, click the <strong>Dynamic Tag<\/strong> icon and select the needed gallery field from the dropdown.&nbsp;<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/gallery-slider-set-up.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/gallery-slider-set-up-1024x640.webp\" alt=\"gallery slider set up\" class=\"wp-image-49022\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/gallery-slider-set-up-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/gallery-slider-set-up-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/gallery-slider-set-up-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/gallery-slider-set-up-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/gallery-slider-set-up-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/gallery-slider-set-up.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>To display the \u201cTour Details\u201d, \u201cTour Plan\u201d, and \u201cDestination\u201d, we used the <strong>Dynamic Field<\/strong> widgets and <strong>Headings<\/strong>.&nbsp;<\/p>\n\n\n\n<p>To display the additional information about the service in the container on the right side, we used the <strong>Icon Box<\/strong> widgets.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/icon-box-widget-settings.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/icon-box-widget-settings-1024x640.webp\" alt=\"icon box widget settings\" class=\"wp-image-49023\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/icon-box-widget-settings-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/icon-box-widget-settings-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/icon-box-widget-settings-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/icon-box-widget-settings-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/icon-box-widget-settings-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/icon-box-widget-settings.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>The <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetbooking\/how-to-create-a-booking-form\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Booking Form<\/strong><\/a> should also be added to the page. You can do it using the <a href=\"https:\/\/jetformbuilder.com\/features\/jetform-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>JetForm<\/strong><\/a><strong> <\/strong>widget. Once the widget is added, select the needed form from the <strong>Choose Form<\/strong> input.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/booking-form-added-to-the-page.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/booking-form-added-to-the-page-1024x640.webp\" alt=\"booking form added to the page\" class=\"wp-image-49024\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/booking-form-added-to-the-page-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/booking-form-added-to-the-page-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/booking-form-added-to-the-page-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/booking-form-added-to-the-page-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/booking-form-added-to-the-page-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/booking-form-added-to-the-page.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"displaying-the-booking-form-in-the-popup\">Displaying the booking form in the pop-up<\/h3>\n\n\n\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\"><div class=\"wp-block-group__inner-container\">\n<p>However, in this case, we add the \u201cBook Tour\u201d button to the page, which displays the form inside a pop-up and opens it when the button is clicked.\u00a0<\/p>\n\n\n\n<p>For this, some preparation is needed. Ensure you click the \u201c<strong>Publish<\/strong>\u201d button to avoid losing all the settings.<\/p>\n\n\n\n<p>So, ensure that the booking form is set up.&nbsp;<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/booking-form-set-up.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/booking-form-set-up-1024x640.webp\" alt=\"booking form set up\" class=\"wp-image-49025\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/booking-form-set-up-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/booking-form-set-up-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/booking-form-set-up-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/booking-form-set-up-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/booking-form-set-up-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/booking-form-set-up.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Then, proceed to the <strong><em>WordPress Dashboard &gt; JetPopup &gt; All Popups &gt;<\/em><\/strong> click the \u201c<strong>Create New Popup<\/strong>\u201d button. In the newly appeared pop-up, choose the <strong>Content Type<\/strong>, enter the <strong>Name<\/strong>, and choose the <strong>Preset<\/strong>. Then, click the \u201c<strong>Create<\/strong>\u201d button.&nbsp;<\/p>\n\n\n\n<p>When the Elementor edit page is opened, add the <strong>JetForm <\/strong>widget and select the booking form you created.&nbsp;<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/booking-form-in-the-popup.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/booking-form-in-the-popup-1024x640.webp\" alt=\"booking form in the pop-up\" class=\"wp-image-49026\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/booking-form-in-the-popup-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/booking-form-in-the-popup-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/booking-form-in-the-popup-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/booking-form-in-the-popup-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/booking-form-in-the-popup-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/booking-form-in-the-popup.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Click \u201c<strong>Publish<\/strong>\u201d once you are ready.&nbsp;<\/p>\n\n\n<div class=\"note-banner d-flex border-bold border-jetthemecore rounded overflow-hidden p-20\"><div class=\"mr-12\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M9 21C9 21.5 9.4 22 10 22H14C14.6 22 15 21.5 15 21V20H9V21ZM12 2C8.1 2 5 5.1 5 9C5 11.4 6.2 13.5 8 14.7V17C8 17.5 8.4 18 9 18H15C15.6 18 16 17.5 16 17V14.7C17.8 13.4 19 11.3 19 9C19 5.1 15.9 2 12 2Z\" fill=\"#F2D23C\"\/><\/svg><\/div><div class=\"d-flex flex-column\"><div class=\"text-900 mb-12\">Things to know<\/div><p class=\"m-0\">Ensure you set the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/popup-conditions-overview\/\" target=\"_blank\" rel=\"noopener\">conditions<\/a> according to your needs and press the \u201c<strong>Save Conditions<\/strong>\u201d button. Without the conditions applied, the pop-up will not be shown on the front.<\/p><\/div><\/div>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/conditions-set-for-the-dynamic-pop-up.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/conditions-set-for-the-dynamic-pop-up-1024x640.webp\" alt=\"conditions set for the dynamic pop-up\" class=\"wp-image-49027\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/conditions-set-for-the-dynamic-pop-up-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/conditions-set-for-the-dynamic-pop-up-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/conditions-set-for-the-dynamic-pop-up-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/conditions-set-for-the-dynamic-pop-up-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/conditions-set-for-the-dynamic-pop-up-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/conditions-set-for-the-dynamic-pop-up.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Then, let\u2019s move back to the single-page template. Open the <strong>Button\u2019s <\/strong>settings and proceed to the <strong>Advanced <\/strong>tab, and open the <strong>JetPopup <\/strong>section.\u00a0<\/p>\n\n\n\n<p>Select the <strong>Attached Popup<\/strong> you created, and in the <strong>Trigger Type<\/strong>, choose the \u201cClick on Widget\u201d option.\u00a0<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/popup-attached-to-the-button-set-up.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/popup-attached-to-the-button-set-up-1024x640.webp\" alt=\"pop-up attached to the button set up\" class=\"wp-image-49028\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/popup-attached-to-the-button-set-up-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/popup-attached-to-the-button-set-up-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/popup-attached-to-the-button-set-up-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/popup-attached-to-the-button-set-up-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/popup-attached-to-the-button-set-up-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/popup-attached-to-the-button-set-up.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n<\/div><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"setting-up-the-related-services\">Setting up the related services<\/h3>\n\n\n\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\"><div class=\"wp-block-group__inner-container\">\n<p>Additionally, we add a list of similar related services to ameliorate the user experience on the site.&nbsp;<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"creating-the-listing\">Creating the listing<\/h4>\n\n\n\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\"><div class=\"wp-block-group__inner-container\">\n<p>Following the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/how-to-create-a-listing-template-for-post-types\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>How to Create a Listing Template for Post Types in Elementor<\/strong><\/a> tutorial, we created a <strong>listing <\/strong>for the \u201cTours\u201d <strong>CPT<\/strong>.&nbsp;<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/listing-template-set-up.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/listing-template-set-up-1024x640.webp\" alt=\"listing template set up\" class=\"wp-image-49029\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/listing-template-set-up-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/listing-template-set-up-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/listing-template-set-up-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/listing-template-set-up-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/listing-template-set-up-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/listing-template-set-up.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>We added the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/dynamic-widgets-and-blocks\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Dynamic Widgets<\/strong><\/a> to display short information about the rooms.&nbsp;<\/p>\n\n\n\n<p>Click the \u201c<strong>Publish<\/strong>\u201d button once you are ready.&nbsp;<\/p>\n\n\n\n<p>To know more about displaying booking instances in the list, refer to our <strong>How to display Booking instances in a grid<\/strong> tutorial.&nbsp;<\/p>\n<\/div><\/div>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"setting-up-a-custom-query\">Setting up a custom query<\/h4>\n\n\n\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\"><div class=\"wp-block-group__inner-container\">\n<p>Following the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/macros-for-query-builder\/#display-posts-related-by-terms-on-the-single-post-page\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Macros for Query Builder<\/strong><\/a> tutorial, we set up the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/query-builder-posts-query-type\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Custom Posts Query<\/strong><\/a>.&nbsp;<\/p>\n\n\n\n<p>Proceed to the <strong><em>WordPress Dashboard &gt; JetEngine &gt; Query Builder &gt; <\/em><\/strong>click the \u201c<strong>Add New<\/strong>\u201d button.<\/p>\n\n\n\n<p>Enter the <strong>Query Name<\/strong> and select the \u201c<a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/query-builder-posts-query-type\/\" target=\"_blank\" rel=\"noreferrer noopener\">Posts Query<\/a>\u201d <strong>Query Type<\/strong>. Scroll down to the <strong>General <\/strong>tab and select the <strong>CPT <\/strong>you need to query in the <strong>Post Type<\/strong> field. Then, in the <strong>Tax Query <\/strong>tab, apply the following settings to get the posts related by terms on the single post page.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/custom-query-set-up.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/custom-query-set-up-1024x640.webp\" alt=\"custom query set up\" class=\"wp-image-49030\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/custom-query-set-up-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/custom-query-set-up-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/custom-query-set-up-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/custom-query-set-up-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/custom-query-set-up-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/custom-query-set-up.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Click the \u201c<strong>Add Query<\/strong>\u201d button once you are ready.&nbsp;<\/p>\n<\/div><\/div>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"displaying-the-related-services-on-a-single-page\">Displaying the related services on a single page<\/h4>\n\n\n\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\"><div class=\"wp-block-group__inner-container\">\n<p>Return to the single-page template and add the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/listing-grid-widget-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Listing Grid<\/strong><\/a> widget. Select the listing you created in the <strong>Listing <\/strong>input.\u00a0<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/listing-grid-added-to-the-page.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/listing-grid-added-to-the-page-1024x640.webp\" alt=\"listing grid added to the page\" class=\"wp-image-49031\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/listing-grid-added-to-the-page-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/listing-grid-added-to-the-page-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/listing-grid-added-to-the-page-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/listing-grid-added-to-the-page-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/listing-grid-added-to-the-page-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/listing-grid-added-to-the-page.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Then open the <strong>Custom Query<\/strong> tab and enable the toggle. In the newly appeared field, select the query you created.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/custom-query-is-applied-to-the-listing.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/custom-query-is-applied-to-the-listing-1024x640.webp\" alt=\"custom query is applied to the listing\" class=\"wp-image-49032\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/custom-query-is-applied-to-the-listing-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/custom-query-is-applied-to-the-listing-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/custom-query-is-applied-to-the-listing-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/custom-query-is-applied-to-the-listing-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/custom-query-is-applied-to-the-listing-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/custom-query-is-applied-to-the-listing.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Once you are ready, click the \u201c<strong>Publish<\/strong>\u201d button.<\/p>\n<\/div><\/div>\n<\/div><\/div>\n<\/div><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"checking-the-result\">Checking the Result<\/h2>\n\n\n\n<p>Now, proceed to the front end of any page from the services <strong>CPT <\/strong>(\u201cTours\u201d in this case). Here, the template we created is applied.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/template-is-applied-on-the-front.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/template-is-applied-on-the-front-1024x640.webp\" alt=\"template is applied on the front\" class=\"wp-image-49033\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/template-is-applied-on-the-front-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/template-is-applied-on-the-front-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/template-is-applied-on-the-front-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/template-is-applied-on-the-front-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/template-is-applied-on-the-front-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/template-is-applied-on-the-front.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>That\u2019s it. Now you know how to create a custom single post page for booking with <strong>Custom Post Types <\/strong>for <em>JetBooking <\/em>using the <em>JetThemeCore <\/em>WordPress plugin.&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Discover how to create a Custom Single Page for CPT-Based Booking for the WordPress JetBooking plugin with the help of the JetThemeCore and JetEngine plugins. <\/p>\n","protected":false},"author":20,"featured_media":0,"template":"","format":"standard","builder-category":[],"article-category":[580],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.9 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How to Create a Custom Single Page for CPT-Based Booking \u2014 JetBooking | Crocoblock<\/title>\n<meta name=\"description\" content=\"Discover how to create a Custom Single Page for CPT-Based Booking for the WordPress JetBooking plugin with the help of the JetThemeCore and JetEngine plugins.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/crocoblock.com\/knowledge-base\/jetbooking\/creating-custom-single-page-for-cpt-based-booking\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Create a Custom Single Page for CPT-Based Booking \u2014 JetBooking | Crocoblock\" \/>\n<meta property=\"og:description\" content=\"Discover how to create a Custom Single Page for CPT-Based Booking for the WordPress JetBooking plugin with the help of the JetThemeCore and JetEngine plugins.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/crocoblock.com\/knowledge-base\/jetbooking\/creating-custom-single-page-for-cpt-based-booking\/\" \/>\n<meta property=\"og:site_name\" content=\"Help Center\" \/>\n<meta property=\"article:modified_time\" content=\"2025-11-14T13:35:14+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/template-builder-page-1024x640.webp\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetbooking\/creating-custom-single-page-for-cpt-based-booking\/\",\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/jetbooking\/creating-custom-single-page-for-cpt-based-booking\/\",\"name\":\"How to Create a Custom Single Page for CPT-Based Booking \u2014 JetBooking | Crocoblock\",\"isPartOf\":{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/#website\"},\"datePublished\":\"2025-08-11T12:24:28+00:00\",\"dateModified\":\"2025-11-14T13:35:14+00:00\",\"description\":\"Discover how to create a Custom Single Page for CPT-Based Booking for the WordPress JetBooking plugin with the help of the JetThemeCore and JetEngine plugins.\",\"breadcrumb\":{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetbooking\/creating-custom-single-page-for-cpt-based-booking\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/crocoblock.com\/knowledge-base\/jetbooking\/creating-custom-single-page-for-cpt-based-booking\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetbooking\/creating-custom-single-page-for-cpt-based-booking\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/crocoblock.com\/knowledge-base\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Articles\",\"item\":\"https:\/\/crocoblock.com\/knowledge-base\/articles\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"How to Create a Custom Single Page for CPT-Based Booking\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/#website\",\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/\",\"name\":\"Help Center\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/crocoblock.com\/knowledge-base\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/#organization\",\"name\":\"Help Center\",\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/04\/invert-crocoblock-logo.svg\",\"contentUrl\":\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/04\/invert-crocoblock-logo.svg\",\"caption\":\"Help Center\"},\"image\":{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to Create a Custom Single Page for CPT-Based Booking \u2014 JetBooking | Crocoblock","description":"Discover how to create a Custom Single Page for CPT-Based Booking for the WordPress JetBooking plugin with the help of the JetThemeCore and JetEngine plugins.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/crocoblock.com\/knowledge-base\/jetbooking\/creating-custom-single-page-for-cpt-based-booking\/","og_locale":"en_US","og_type":"article","og_title":"How to Create a Custom Single Page for CPT-Based Booking \u2014 JetBooking | Crocoblock","og_description":"Discover how to create a Custom Single Page for CPT-Based Booking for the WordPress JetBooking plugin with the help of the JetThemeCore and JetEngine plugins.","og_url":"https:\/\/crocoblock.com\/knowledge-base\/jetbooking\/creating-custom-single-page-for-cpt-based-booking\/","og_site_name":"Help Center","article_modified_time":"2025-11-14T13:35:14+00:00","og_image":[{"url":"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/08\/template-builder-page-1024x640.webp"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/crocoblock.com\/knowledge-base\/jetbooking\/creating-custom-single-page-for-cpt-based-booking\/","url":"https:\/\/crocoblock.com\/knowledge-base\/jetbooking\/creating-custom-single-page-for-cpt-based-booking\/","name":"How to Create a Custom Single Page for CPT-Based Booking \u2014 JetBooking | Crocoblock","isPartOf":{"@id":"https:\/\/crocoblock.com\/knowledge-base\/#website"},"datePublished":"2025-08-11T12:24:28+00:00","dateModified":"2025-11-14T13:35:14+00:00","description":"Discover how to create a Custom Single Page for CPT-Based Booking for the WordPress JetBooking plugin with the help of the JetThemeCore and JetEngine plugins.","breadcrumb":{"@id":"https:\/\/crocoblock.com\/knowledge-base\/jetbooking\/creating-custom-single-page-for-cpt-based-booking\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/crocoblock.com\/knowledge-base\/jetbooking\/creating-custom-single-page-for-cpt-based-booking\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/crocoblock.com\/knowledge-base\/jetbooking\/creating-custom-single-page-for-cpt-based-booking\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/crocoblock.com\/knowledge-base\/"},{"@type":"ListItem","position":2,"name":"Articles","item":"https:\/\/crocoblock.com\/knowledge-base\/articles\/"},{"@type":"ListItem","position":3,"name":"How to Create a Custom Single Page for CPT-Based Booking"}]},{"@type":"WebSite","@id":"https:\/\/crocoblock.com\/knowledge-base\/#website","url":"https:\/\/crocoblock.com\/knowledge-base\/","name":"Help Center","description":"","publisher":{"@id":"https:\/\/crocoblock.com\/knowledge-base\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/crocoblock.com\/knowledge-base\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/crocoblock.com\/knowledge-base\/#organization","name":"Help Center","url":"https:\/\/crocoblock.com\/knowledge-base\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/crocoblock.com\/knowledge-base\/#\/schema\/logo\/image\/","url":"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/04\/invert-crocoblock-logo.svg","contentUrl":"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/04\/invert-crocoblock-logo.svg","caption":"Help Center"},"image":{"@id":"https:\/\/crocoblock.com\/knowledge-base\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/article\/49013"}],"collection":[{"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/article"}],"about":[{"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/types\/article"}],"author":[{"embeddable":true,"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/users\/20"}],"wp:attachment":[{"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/media?parent=49013"}],"wp:term":[{"taxonomy":"builder-category","embeddable":true,"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/builder-category?post=49013"},{"taxonomy":"article-category","embeddable":true,"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/article-category?post=49013"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}