{"id":4601,"date":"2026-01-07T05:33:37","date_gmt":"2026-01-07T05:33:37","guid":{"rendered":"https:\/\/thedigitalsagency.com\/services\/digital-downloadable\/how-to-build-an-interactive-wordpress-theme-demo-with-playground-blueprints\/"},"modified":"2026-01-07T05:33:38","modified_gmt":"2026-01-07T05:33:38","slug":"how-one-can-construct-an-interactive-wordpress-theme-demo-with-playground-blueprints","status":"publish","type":"post","link":"https:\/\/thedigitalsagency.com\/services\/digital-downloadable\/how-one-can-construct-an-interactive-wordpress-theme-demo-with-playground-blueprints\/","title":{"rendered":"How one can Construct an Interactive WordPress Theme Demo with Playground Blueprints"},"content":{"rendered":"<p><\/p>\n<div id=\"wpblog-post-body\">\n<p>WordPress Playground shall we any person release a reside WordPress website in an instant \u2014 no website hosting or set up required. It\u2019s a handy guide a rough, hands-on technique to discover how a theme seems to be and behaves.<\/p>\n<p>You&#8217;ll open a contemporary WordPress example with a unmarried hyperlink and get started experimenting immediately.<\/p>\n<p>If a theme is to be had within the WordPress repository, you&#8217;ll preview it in Playground by means of including the theme\u2019s slug to the URL, for instance:<br \/><strong>?theme=kiosko<\/strong>.<\/p>\n<figure class=\"wp-block-image size-full\"><img fetchpriority=\"high\" decoding=\"async\" data-attachment-id=\"82821\" data-permalink=\"https:\/\/wordpress.com\/blog\/2026\/01\/05\/build-a-wordpress-theme-demo-with-playground-blueprints\/previewing-themes-in-wordpress-playground\/\" data-orig-file=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/previewing-themes-in-wordpress-playground.png\" data-orig-size=\"757,566\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Previewing themes in WordPress Playground\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/previewing-themes-in-wordpress-playground.png?w=300\" data-large-file=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/previewing-themes-in-wordpress-playground.png?w=757\" width=\"757\" height=\"566\" src=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/previewing-themes-in-wordpress-playground.png\" alt=\"Example of a WordPress theme demo.\" class=\"wp-image-82821\" style=\"box-shadow:var(--wp--preset--shadow--natural)\" srcset=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/previewing-themes-in-wordpress-playground.png 757w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/previewing-themes-in-wordpress-playground.png?w=150&amp;h=112 150w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/previewing-themes-in-wordpress-playground.png?w=300&amp;h=224 300w\" sizes=\"(max-width: 757px) 100vw, 757px\"\/><\/figure>\n<p>That mentioned, every Playground website begins with a blank WordPress set up, so issues load without a present pages or demo content material.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" data-attachment-id=\"82822\" data-permalink=\"https:\/\/wordpress.com\/blog\/2026\/01\/05\/build-a-wordpress-theme-demo-with-playground-blueprints\/creating-demo-themes-with-wordpress\/\" data-orig-file=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/creating-demo-themes-with-wordpress.png\" data-orig-size=\"1321,659\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Creating demo themes with WordPress\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/creating-demo-themes-with-wordpress.png?w=300\" data-large-file=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/creating-demo-themes-with-wordpress.png?w=1024\" width=\"1321\" height=\"659\" src=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/creating-demo-themes-with-wordpress.png\" alt=\"A clean WordPress installation.\" class=\"wp-image-82822\" style=\"box-shadow:var(--wp--preset--shadow--natural)\" srcset=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/creating-demo-themes-with-wordpress.png 1321w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/creating-demo-themes-with-wordpress.png?w=150&amp;h=75 150w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/creating-demo-themes-with-wordpress.png?w=300&amp;h=150 300w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/creating-demo-themes-with-wordpress.png?w=768&amp;h=383 768w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/creating-demo-themes-with-wordpress.png?w=1024&amp;h=511 1024w\" sizes=\"(max-width: 1321px) 100vw, 1321px\"\/><\/figure>\n<p>If you wish to have your theme to seem precisely as you\u2019ve designed it \u2014 with pattern content material, navigation, and settings \u2014 you&#8217;ll use <strong>Playground Blueprints<\/strong>.<\/p>\n<p>On this information, I\u2019ll display you how you can get began with Playground Blueprints and create an entire, interactive demo website to your theme.<\/p>\n<p class=\"has-primary-light-background-color has-background\">For this workout, you\u2019ll use a GitHub repository to retailer belongings, equivalent to .xml and blueprint.json information, to construct your demo.\u00a0For Playground to have get right of entry to, it must be a <strong>public <\/strong>repository.<\/p>\n<h2 class=\"wp-block-heading\">What are Playground Blueprints?<\/h2>\n<p>WordPress Playground Blueprints assist you to create preconfigured demo websites in JSON structure.<\/p>\n<p>Every Blueprint describes how the Playground example will have to be constructed \u2014 what theme to put in, what content material to import, which settings to permit, and extra.<\/p>\n<p class=\"has-primary-light-background-color has-background\">You&#8217;ll browse the whole documentation right here: WordPress Playground \u2192 Blueprints<\/p>\n<p>With Blueprints, you&#8217;ll percentage a unmarried hyperlink that launches a completely configured demo of your theme \u2014 entire with pages, patterns, and media \u2014 so guests can discover it immediately of their browser.<\/p>\n<p>Let\u2019s discover the method step-by-step.<\/p>\n<h2 class=\"wp-block-heading\">1. Create your demo site content material<\/h2>\n<p>First, <strong>construct a demo model of your theme in the neighborhood<\/strong> \u2014 entire with pages, posts, navigation, and settings \u2014 to turn the way it seems to be in an actual website.\u00a0<\/p>\n<p>You\u2019ll later export this content material and use it within Playground.<\/p>\n<p>If you happen to\u2019ve labored with the Web page Editor ahead of, this section will really feel acquainted. You know what mixture of pages, posts, navigation, pictures, and WordPress settings makes your theme shine.<\/p>\n<p class=\"has-primary-light-background-color has-background\">For this publish, I ready a demo website the usage of the Twenty Twenty-5 default theme, making use of one among its taste permutations and enhancing some templates.<\/p>\n<p>The instance mimics a trip weblog demo with a homepage, weblog web page, about web page, and instance templates and patterns:<\/p>\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"82824\" data-permalink=\"https:\/\/wordpress.com\/blog\/2026\/01\/05\/build-a-wordpress-theme-demo-with-playground-blueprints\/creating-a-demo-theme-with-wordpress\/\" data-orig-file=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/creating-a-demo-theme-with-wordpress.png\" data-orig-size=\"1600,1377\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Creating a demo theme with WordPress\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/creating-a-demo-theme-with-wordpress.png?w=300\" data-large-file=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/creating-a-demo-theme-with-wordpress.png?w=1024\" loading=\"lazy\" width=\"1600\" height=\"1377\" src=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/creating-a-demo-theme-with-wordpress.png\" alt=\"A travel blog demo homepage.\" class=\"wp-image-82824\" style=\"box-shadow:var(--wp--preset--shadow--natural)\" srcset=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/creating-a-demo-theme-with-wordpress.png 1600w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/creating-a-demo-theme-with-wordpress.png?w=150&amp;h=129 150w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/creating-a-demo-theme-with-wordpress.png?w=300&amp;h=258 300w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/creating-a-demo-theme-with-wordpress.png?w=768&amp;h=661 768w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/creating-a-demo-theme-with-wordpress.png?w=1024&amp;h=881 1024w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/creating-a-demo-theme-with-wordpress.png?w=1440&amp;h=1239 1440w\" sizes=\"auto, (max-width: 1600px) 100vw, 1600px\"\/><\/figure>\n<p>I\u2019ve additionally incorporated a 404 web page template:<\/p>\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"82825\" data-permalink=\"https:\/\/wordpress.com\/blog\/2026\/01\/05\/build-a-wordpress-theme-demo-with-playground-blueprints\/error-page\/\" data-orig-file=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/error-page.png\" data-orig-size=\"1161,886\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"error page\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/error-page.png?w=300\" data-large-file=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/error-page.png?w=1024\" loading=\"lazy\" width=\"1161\" height=\"886\" src=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/error-page.png\" alt=\"Example theme demo 404 error page.\" class=\"wp-image-82825\" style=\"box-shadow:var(--wp--preset--shadow--natural)\" srcset=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/error-page.png 1161w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/error-page.png?w=150&amp;h=114 150w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/error-page.png?w=300&amp;h=229 300w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/error-page.png?w=768&amp;h=586 768w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/error-page.png?w=1024&amp;h=781 1024w\" sizes=\"auto, (max-width: 1161px) 100vw, 1161px\"\/><\/figure>\n<p>In addition to an \u2018About Us\u2019 web page:<\/p>\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"82827\" data-permalink=\"https:\/\/wordpress.com\/blog\/2026\/01\/05\/build-a-wordpress-theme-demo-with-playground-blueprints\/demo-theme-about-us-page\/\" data-orig-file=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/demo-theme-about-us-page.png\" data-orig-size=\"1028,906\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Demo theme \u2013 about us page\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/demo-theme-about-us-page.png?w=300\" data-large-file=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/demo-theme-about-us-page.png?w=1024\" loading=\"lazy\" width=\"1028\" height=\"906\" src=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/demo-theme-about-us-page.png\" alt=\"Example About Us page.\" class=\"wp-image-82827\" style=\"box-shadow:var(--wp--preset--shadow--natural)\" srcset=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/demo-theme-about-us-page.png 1028w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/demo-theme-about-us-page.png?w=150&amp;h=132 150w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/demo-theme-about-us-page.png?w=300&amp;h=264 300w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/demo-theme-about-us-page.png?w=768&amp;h=677 768w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/demo-theme-about-us-page.png?w=1024&amp;h=902 1024w\" sizes=\"auto, (max-width: 1028px) 100vw, 1028px\"\/><\/figure>\n<p>And extra.<\/p>\n<h2 class=\"wp-block-heading\">2. Maintain pictures and patterns<\/h2>\n<p>Whilst you create your content material, you could use Patterns that include your theme.\u00a0<\/p>\n<p>Incessantly, pictures used are a part of the theme and saved within the theme\u2019s belongings folder.<\/p>\n<p>You would have to add the ones to the <strong>Media Library<\/strong> and pull them from there into your pages or posts \u2014 or substitute their URL references within the content material with relative hyperlinks pointing to:<\/p>\n<div class=\"wp-block-syntaxhighlighter-code \">\n<pre class=\"brush: plain; auto-links: false; gutter: false; title: ; quick-code: false; notranslate\" title=\"\">\n\/wp-content\/issues\/{yourtheme}\/belongings\/{filename}\n<\/pre>\n<\/div>\n<p>\u2026and take away the https:\/\/{area.ext} a part of the URL.<\/p>\n<p class=\"has-primary-light-background-color has-background\">It\u2019s absolute best to make use of WordPress gear to mechanically upload them to the <strong>Media Library <\/strong>to avoid wasting or from the picture block toolbar.<\/p>\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"82828\" data-permalink=\"https:\/\/wordpress.com\/blog\/2026\/01\/05\/build-a-wordpress-theme-demo-with-playground-blueprints\/adding-files-to-media-library\/\" data-orig-file=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/adding-files-to-media-library.png\" data-orig-size=\"581,161\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Adding files to Media Library\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/adding-files-to-media-library.png?w=300\" data-large-file=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/adding-files-to-media-library.png?w=581\" loading=\"lazy\" width=\"581\" height=\"161\" src=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/adding-files-to-media-library.png\" alt=\"Uploading a file to the WordPress Media Library.\" class=\"wp-image-82828\" style=\"box-shadow:var(--wp--preset--shadow--natural)\" srcset=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/adding-files-to-media-library.png 581w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/adding-files-to-media-library.png?w=150&amp;h=42 150w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/adding-files-to-media-library.png?w=300&amp;h=83 300w\" sizes=\"auto, (max-width: 581px) 100vw, 581px\"\/><\/figure>\n<p>This provides you with a self-contained content material document you&#8217;ll reuse with different issues or Playground circumstances.<\/p>\n<h2 class=\"wp-block-heading\">3. Export your content material<\/h2>\n<p>While you\u2019ve constructed the demo content material in your native website, export it the usage of the WordPress Export function:<\/p>\n<p>Cross to <strong>Equipment <\/strong>\u2192 <strong>Export,<\/strong> and make a selection <strong>All Content material <\/strong>(or make particular possible choices).<\/p>\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"82830\" data-permalink=\"https:\/\/wordpress.com\/blog\/2026\/01\/05\/build-a-wordpress-theme-demo-with-playground-blueprints\/exporting-files\/\" data-orig-file=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/exporting-files.png\" data-orig-size=\"1060,428\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Exporting files\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/exporting-files.png?w=300\" data-large-file=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/exporting-files.png?w=1024\" loading=\"lazy\" width=\"1060\" height=\"428\" src=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/exporting-files.png\" alt=\"WordPress Export screen.\" class=\"wp-image-82830\" style=\"box-shadow:var(--wp--preset--shadow--natural)\" srcset=\"https:\/\/en-blog.files.wordpress.com\/2025\/12\/exporting-files.png 1060w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/exporting-files.png?w=150&amp;h=61 150w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/exporting-files.png?w=300&amp;h=121 300w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/exporting-files.png?w=768&amp;h=310 768w, https:\/\/en-blog.files.wordpress.com\/2025\/12\/exporting-files.png?w=1024&amp;h=413 1024w\" sizes=\"auto, (max-width: 1060px) 100vw, 1060px\"\/><\/figure>\n<p class=\"has-primary-light-background-color has-background\">You&#8217;ll be told extra in regards to the Export function within the documentation.<\/p>\n<p>Sooner than uploading the .xml document into Playground, be certain that your pictures and different belongings are in a position.\u00a0<\/p>\n<p>You\u2019ll additionally want to replace the picture references for your content material document.<\/p>\n<h2 class=\"wp-block-heading\">4. Get ready your export for Playground<\/h2>\n<p>Sooner than uploading your exported .xml document, be certain that Playground can get right of entry to your media information and that every one symbol hyperlinks level to the proper places.<\/p>\n<p>To do that:<\/p>\n<ul class=\"wp-block-list\">\n<li>Add your demo pictures and belongings to a public GitHub repository (for instance, to a \/media folder).<\/li>\n<li>Replace the picture references for your .xml document so that they level to these GitHub URLs.<\/li>\n<\/ul>\n<h3 class=\"wp-block-heading\">Add your demo pictures and belongings<\/h3>\n<p>Playground makes use of the WordPress Importer plugin, which mechanically resizes pictures and updates URLs for the brand new website.\u00a0<\/p>\n<p>Alternatively, the importer tries to fetch pictures from their authentic URLs \u2014 and maximum internet servers block those requests as a result of Go-Starting place Useful resource Sharing (CORS) insurance policies.<\/p>\n<p>To mend that, host your demo belongings on <strong>GitHub<\/strong>.<\/p>\n<p>GitHub\u2019s <strong>uncooked.githubusercontent.com<\/strong> area bypasses those restrictions, making it splendid for serving demo media.<\/p>\n<p>Add all of your pictures to a \/media folder for your GitHub repository and stay their authentic filenames to hurry up the import procedure.<\/p>\n<h3 class=\"wp-block-heading\">Replace the picture references for your .xml document<\/h3>\n<p>Subsequent, substitute the picture references for your <strong>.xml <\/strong>document with the brand new GitHub URLs, below the <strong><attachment_url\/><\/strong> tag.<\/p>\n<p>Use this development:<\/p>\n<div class=\"wp-block-syntaxhighlighter-code \">\n<pre class=\"brush: plain; auto-links: false; gutter: false; title: ; quick-code: false; notranslate\" title=\"\">\nhttps:\/\/uncooked.githubusercontent.com\/{group}\/{reponame}\/{department}\/media\/{filename}\n<\/pre>\n<\/div>\n<p>For instance:<\/p>\n<p>And right here\u2019s what every section method:<\/p>\n<ul class=\"wp-block-list\">\n<li><strong>Group<\/strong>: your GitHub group (for instance, wptrainingteam)<\/li>\n<li><strong>Repository<\/strong>: your repo identify (for instance, tt5-demo-blueprint)<\/li>\n<li><strong>Department<\/strong>: primary<\/li>\n<li><strong>Folder<\/strong>: media<\/li>\n<li><strong>Filename<\/strong>: the unique document identify<\/li>\n<\/ul>\n<p>Seek your .xml document for <strong><attachment_url\/><\/strong> (conserving the <strong>&gt; tags intact) and substitute every reference with the proper GitHub URL.<\/strong><\/p>\n<p class=\"has-primary-light-background-color has-background\"><strong>Tip: <\/strong>Within the Twenty Twenty-5 demo website instance, there have been 17 replacements in overall.<\/p>\n<p>Your built-in building setting (IDE) most likely lets you in finding the specific string for your .xml document, regardless of how giant it&#8217;s. You may see different symbol references within the document whilst you use the similar symbol in numerous sizes.<\/p>\n<p>I added a small Bash script to the repo; you want to alter and use it at your personal chance.<\/p>\n<p>The WordPress Importer will resize the brand new pictures from the attachment URLs and substitute the references elsewhere. You handiest want to trade every symbol reference as soon as.<\/p>\n<h2 class=\"wp-block-heading\">5. Create your Blueprint<\/h2>\n<p>Now that your demo content material is in a position, it\u2019s time to configure your Playground website the usage of a Blueprint.<\/p>\n<p>A Blueprint defines how Playground units up your demo \u2014 which theme to put in, which content material to import, and which choices to use.<\/p>\n<h3 class=\"wp-block-heading\">Perceive the Blueprint construction<\/h3>\n<p>The Blueprint document has two primary portions:<\/p>\n<ul class=\"wp-block-list\">\n<li><strong>Settings<\/strong> \u2013 positioned within the root of the file.<\/li>\n<li><strong>Steps<\/strong> \u2013 movements indexed in an array that Playground runs so as.<\/li>\n<\/ul>\n<p class=\"has-primary-light-background-color has-background\">You&#8217;ll be told extra within the Blueprint documentation.<\/p>\n<p>Right here\u2019s an summary of a starter JSON document:<\/p>\n<div class=\"wp-block-syntaxhighlighter-code \">\n<pre class=\"brush: jscript; auto-links: false; gutter: false; title: ; quick-code: false; notranslate\" title=\"\">\n{\n\"$schema\": \"https:\/\/playground.wordpress.internet\/blueprint-schema.json\",\n\"login\": true,\n... extra settings,\n\n\"steps\": [\n\t{\n        \t\"step\":\"installTheme\" {\n            }\n    },\n\t{\n            \"step\":\"importWXR\" {\n            }\n    }\n\tmore steps... \n\t]\n}\n\n\n<\/pre>\n<\/div>\n<p>The primary line (<strong>$schema<\/strong>) is non-compulsory.<\/p>\n<p>Including it is helping your IDE validate syntax, counsel homes, and catch imaginable mistakes.<\/p>\n<h3 class=\"wp-block-heading\">Upload elementary settings<\/h3>\n<p>The primary atmosphere is \u201clogin\u201d: true.<\/p>\n<p>If you happen to don\u2019t want particular credentials, this shorthand mechanically provides guests admin get right of entry to at the demo website.<\/p>\n<p class=\"has-primary-light-background-color has-background\">If you happen to desire extra keep watch over, evaluation the Blueprint step documentation and the Blueprint Gallery for various situations.<\/p>\n<h3 class=\"wp-block-heading\">Blank the default WordPress content material<\/h3>\n<p>Every new WordPress set up contains pattern content material \u2014 a publish, a remark, and a web page \u2014 which will intrude together with your demo.<\/p>\n<p>You&#8217;ll upload a step to the Blueprint to take away the content material by means of executing a WP-CLI command:<\/p>\n<div class=\"wp-block-syntaxhighlighter-code \">\n<pre class=\"brush: php; auto-links: false; gutter: false; title: ; quick-code: false; notranslate\" title=\"\">\n      {\n        \"step\": \"wp-cli\",\n        \"command\": \"wp website empty --yes\"\n      },\n<\/pre>\n<\/div>\n<h3 class=\"wp-block-heading\">Import your demo content material<\/h3>\n<p>To import the content material in particular, leverage the importWxr step \u2014 the usage of the uncooked.githubusercontent.com area to indicate on your *.xml document.<\/p>\n<div class=\"wp-block-syntaxhighlighter-code \">\n<pre class=\"brush: php; auto-links: false; gutter: false; title: ; notranslate\" title=\"\">\n  {\n\u00a0\u00a0\u00a0\u00a0\u00a0\"step\": \"importWxr\",\n\u00a0\u00a0\u00a0\u00a0\u00a0\"document\": {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"useful resource\": \"url\",\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"url\": \"https:\/\/uncooked.githubusercontent.com\/wptrainingteam\/tt5-demo-blueprint\/primary\/playgroundcontent.xml\"\n    \u00a0\u00a0\u00a0\u00a0 }\n  }\n<\/pre>\n<\/div>\n<h3 class=\"wp-block-heading\">Set up and turn on the theme<\/h3>\n<p>Subsequent, set up and turn on the theme you wish to have to demo.<\/p>\n<p>It may possibly come from the WordPress repository, a ZIP document, or a listing of theme information.<\/p>\n<p>This case makes use of the default Twenty Twenty-5 theme:<\/p>\n<div class=\"wp-block-syntaxhighlighter-code \">\n<pre class=\"brush: php; gutter: false; title: ; notranslate\" title=\"\">\n    {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"step\": \"installTheme\",\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"themeData\": {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"useful resource\": \"wordpress.org\/issues\",\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"slug\": \"twentytwentyfive\"\n    },\n    \"choices\": {\n        \"turn on\": true\n\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0},\n<\/pre>\n<\/div>\n<h3 class=\"wp-block-heading\">Set Web page choices<\/h3>\n<p>You may additionally need to set a couple of Web page choices. You&#8217;ll use a step or the shorthand to setSiteOptions:<\/p>\n<ul class=\"wp-block-list\">\n<li>For the hyperlinks to class pages and navigation menus to paintings, you\u2019ll want to permit beautiful permalinks.<\/li>\n<li>You&#8217;ll additionally set values for the weblog identify and outline to make it extra attractive.<\/li>\n<li>To completely arrange your demo, you\u2019ll most likely additionally need to configure your entrance web page and weblog web page.<\/li>\n<\/ul>\n<p>The snippet under displays how you can enforce those settings:<\/p>\n<div class=\"wp-block-syntaxhighlighter-code \">\n<pre class=\"brush: php; gutter: false; title: ; notranslate\" title=\"\">\n\"setSiteOptions\": {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"blogname\": \"Twenty-Twenty-5\",\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"blogdescription\": \"The WordPress default theme\",\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"show_on_front\": \"web page\",\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"page_on_front\": 80,\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"page_for_posts\": 26,\n      \u00a0\"permalink_structure\": \"\/%postname%\/\"\n\n\u00a0\u00a0\u00a0}\n<\/pre>\n<\/div>\n<p>The numbers for <strong>page_on_front<\/strong> and <strong>page_for_posts<\/strong> fit the publish IDs for your imported content material.<\/p>\n<p>This works since the website used to be emptied ahead of import.<\/p>\n<h3 class=\"wp-block-heading\">Non-compulsory: Upload plugins<\/h3>\n<p>You&#8217;ll additionally come with plugins \u2014 for instance, block collections or WooCommerce.<\/p>\n<p>Right here\u2019s the shorthand for putting in the \u201cBlock Visibility,\u201d \u201cPublic Put up Preview,\u201d and \u201cGutenberg\u201d plugins and activating them.\u00a0<\/p>\n<p>So as to add extra plugins, simply upload them to the array:<\/p>\n<div class=\"wp-block-syntaxhighlighter-code \">\n<pre class=\"brush: php; auto-links: false; gutter: false; title: ; notranslate\" title=\"\">\n{\n\"plugins\": [ \"block-visibility\",\"public-post-preview\", \"gutenberg\" ]\n}\n<\/pre>\n<\/div>\n<h3 class=\"wp-block-heading\">Mix the whole thing<\/h3>\n<p>Now that you just\u2019ve added every step, it\u2019s time to mix them into one entire Blueprint document.<\/p>\n<p>This ultimate JSON defines your whole demo website setup \u2014 from cleansing the default content material to putting in your theme, uploading posts, and atmosphere website choices:<\/p>\n<div class=\"wp-block-syntaxhighlighter-code \">\n<pre class=\"brush: php; auto-links: false; gutter: false; title: ; quick-code: false; notranslate\" title=\"\">\n{\n\u00a0\u00a0\"$schema\": \"https:\/\/playground.wordpress.internet\/blueprint-schema.json\",\n\u00a0\u00a0\"login\": true,\n\u00a0\u00a0\"steps\": [\n\u00a0\u00a0\u00a0\u00a0{\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"step\": \"wp-cli\",\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"command\": \"wp site empty --yes\"\n\u00a0\u00a0\u00a0\u00a0},\n\u00a0\u00a0\u00a0\u00a0{\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"step\": \"updateUserMeta\",\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"meta\": {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"admin_color\": \"modern\"\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0},\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"userId\": 1\n\u00a0\u00a0\u00a0\u00a0},\n\u00a0\u00a0\u00a0\u00a0{\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"step\": \"installTheme\",\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"themeData\": {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"resource\": \"wordpress.org\/themes\",\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"slug\": \"twentytwentyfive\"\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0},\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"options\": {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"activate\": true\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0},\n\n\u00a0\u00a0\u00a0\u00a0{\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"step\": \"importWxr\",\n                    \"file\": {\n                            \"resource\": \"url\",\n                            \"url\": \"https:\/\/raw.githubusercontent.com\/wptrainingteam\/tt5-demo-blueprint\/main\/playground-content.xml\"\n}\n\u00a0\u00a0\u00a0\u00a0},\n\u00a0\u00a0\u00a0\u00a0{\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"step\": \"setSiteOptions\",\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"options\": {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"blogname\": \"Theme Demo \",\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"blogdescription\": \"A preview of a theme\",\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"show_on_front\": \"page\",\n            \u00a0 \u00a0 \"page_on_front\": 80,\n            \u00a0 \u00a0 \"page_for_posts\": 26,\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"permalink_structure\": \"\/%postname%\/\"\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0],\n\u00a0\u00a0\u00a0\"plugins\": [ \"block-visibility\",\"public-post-preview\", \"gutenberg\" ],\n}\n<\/pre>\n<\/div>\n<h2 class=\"wp-block-heading\">6. Take a look at your Blueprint<\/h2>\n<p>Sooner than sharing your demo, check the Blueprint in Playground to verify that each step runs appropriately and your theme seems as meant.<\/p>\n<p>Open your Playground URL to release the demo website and test that:<\/p>\n<ul class=\"wp-block-list\">\n<li>The theme installs and turns on correctly.<\/li>\n<li>All pages, posts, and menus from the .xml import show.<\/li>\n<li>Photographs load from the GitHub \/media folder.<\/li>\n<li>Permalinks and front-page settings paintings as anticipated.<\/li>\n<\/ul>\n<p>If one thing seems to be off, evaluation your blueprint.json for typos or lacking commas.<\/p>\n<p>Blueprints are declarative, so even a small syntax factor can interrupt setup. Repair any problems in the neighborhood, add the corrected document to GitHub, and refresh the Playground hyperlink to check once more.<\/p>\n<h2 class=\"wp-block-heading\">7. Proportion your Blueprint<\/h2>\n<p>In spite of everything, add your blueprint.json document to GitHub and percentage the Playground URL with the Blueprint question parameter.<\/p>\n<p>You&#8217;ll use a URL shortener equivalent to Bitly to trace utilization.<\/p>\n<p>For instance:<\/p>\n<p>https:\/\/playground.wordpress.internet\/?blueprint-url=https:\/\/uncooked.githubusercontent.com\/wptrainingteam\/tt5-demo-blueprint\/primary\/blueprint.json<\/p>\n<p>The entire theme demo is to be had on GitHub and contains:<\/p>\n<ul class=\"wp-block-list\">\n<li>The content material to import<\/li>\n<li>Photographs and belongings within the \/media folder<\/li>\n<li>The blueprint.json document<\/li>\n<li>The Bash script to lend a hand with the attachment URL replacements<\/li>\n<\/ul>\n<p class=\"has-primary-light-background-color has-background\"><strong>Tip: <\/strong>The Blueprints documentation gives some ways to configure your Playground example to your or your purchasers\u2019 wishes.<\/p>\n<h2 class=\"wp-block-heading\">Be told extra about Blueprints and Playground<\/h2>\n<p>Now that you just\u2019ve realized how you can use Playground to show off your merchandise, discover those guides at the WordPress Developer Weblog:<\/p>\n<p>You&#8217;ll additionally observe this information in WordPress Studio, which now helps Blueprints. <\/p>\n<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>WordPress Playground shall we any person release a reside WordPress website in an instant \u2014 no website hosting or set up required. It\u2019s a handy guide a rough, hands-on technique to discover how a theme seems to be and behaves. You&#8217;ll open a contemporary WordPress example with a unmarried hyperlink and get started experimenting immediately. [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":4603,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-4601","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog"],"_links":{"self":[{"href":"https:\/\/thedigitalsagency.com\/services\/digital-downloadable\/wp-json\/wp\/v2\/posts\/4601","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/thedigitalsagency.com\/services\/digital-downloadable\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/thedigitalsagency.com\/services\/digital-downloadable\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/thedigitalsagency.com\/services\/digital-downloadable\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/thedigitalsagency.com\/services\/digital-downloadable\/wp-json\/wp\/v2\/comments?post=4601"}],"version-history":[{"count":1,"href":"https:\/\/thedigitalsagency.com\/services\/digital-downloadable\/wp-json\/wp\/v2\/posts\/4601\/revisions"}],"predecessor-version":[{"id":4602,"href":"https:\/\/thedigitalsagency.com\/services\/digital-downloadable\/wp-json\/wp\/v2\/posts\/4601\/revisions\/4602"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/thedigitalsagency.com\/services\/digital-downloadable\/wp-json\/wp\/v2\/media\/4603"}],"wp:attachment":[{"href":"https:\/\/thedigitalsagency.com\/services\/digital-downloadable\/wp-json\/wp\/v2\/media?parent=4601"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/thedigitalsagency.com\/services\/digital-downloadable\/wp-json\/wp\/v2\/categories?post=4601"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/thedigitalsagency.com\/services\/digital-downloadable\/wp-json\/wp\/v2\/tags?post=4601"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}