{"id":173222,"date":"2018-06-27T13:00:02","date_gmt":"2018-06-27T13:00:02","guid":{"rendered":"https:\/\/premium.wpmudev.org\/blog\/?p=173222"},"modified":"2022-03-22T03:26:30","modified_gmt":"2022-03-22T03:26:30","slug":"how-to-use-local-by-flywheel-for-quick-wordpress-development","status":"publish","type":"post","link":"https:\/\/wpmudev.com\/blog\/how-to-use-local-by-flywheel-for-quick-wordpress-development\/","title":{"rendered":"How to use Local by Flywheel for Quick WordPress Development"},"content":{"rendered":"<p>Developing websites locally can be an attractive proposition for several reasons. For starters, it\u2019s free. If your Internet connection is non-existent or lost you can keep working. You can use localhost as a testing ground for trying out themes or plugins or creating your own. Finally, your sites remain private until you choose to share them.<\/p>\n<p>Traditionally, setting up websites on localhost was a tricky process, but that\u2019s all changing with new solutions like Local by Flywheel.<\/p>\n<p>We&#8217;ll cover:<\/p>\n<ul>\n<li><a href=\"#local-by-flywheel\">What is Local by Flywheel?<\/a><\/li>\n<li><a href=\"#installing-local-by-flywheel\">Installing Local by Flywheel<\/a><\/li>\n<li><a href=\"#creating-a-new-site\">Creating a new site<\/a><\/li>\n<li><a href=\"#site-setup-view\">Site Setup view<\/a><\/li>\n<li><a href=\"#ssl\">SSL<\/a><\/li>\n<li><a href=\"#blueprints\">Blueprints<\/a><\/li>\n<li><a href=\"#cloning-a-site\">Cloning a site<\/a><\/li>\n<li><a href=\"#exporting-a-site\">Exporting a site<\/a><\/li>\n<li><a href=\"#switch-your-server-environment\">Switch your server environment<\/a><\/li>\n<li><a href=\"#copying-a-live-site\">Copying a live site to Local by Flywheel<\/a><\/li>\n<li><a href=\"#live-link\">Creating a live link for your site<\/a><\/li>\n<li><a href=\"#moving-site-to-live-server\">Moving a site from Local by Flywheel to a live server<\/a><\/li>\n<li><a href=\"#database-access\">Database access<\/a><\/li>\n<li><a href=\"#viewing-emails\">Viewing emails<\/a><\/li>\n<li><a href=\"#installing-git\">Installing Git<\/a><\/li>\n<li><a href=\"#preferences-area\">Preferences area<\/a><\/li>\n<\/ul>\n<h2 id=\"local-by-flywheel\">What is Local by Flywheel?<\/h2>\n<p>Local by Flywheel \u2013 aka Local \u2013 is a local development environment, optimised for WordPress. It\u2019s an alternative to similar tools such as XAMPP, MAMP and WAMP.<\/p>\n<p>Local by Flywheel does the heavy lifting for you behind the scenes so that you can get on with developing sites quickly. A new WordPress site can be installed in a few clicks \u2013 no more downloading WordPress, no editing wp-config.php or fiddling with ports! Local handles all that for you.<\/p>\n<p>Chris Coyier of CSS Tricks is a fan, as are developers and teachers Carrie Dils and Tonya Mork.<\/p>\n<h2 id=\"installing-local-by-flywheel\">Installing Local by Flywheel<\/h2>\n<p>Local by Flywheel is available for both Windows and Mac, and free for download. The current version is 2.2.4.<\/p>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2018\/06\/Local-by-Flywheel-600.png\" alt=\"Download Local by Flywheel\" width=\"600\" height=\"269\" \/><figcaption class=\"wp-caption-text\">Simplify Local WordPress development with Flywheel<\/figcaption><\/figure>\n<\/div>\n<p>Just supply a few details to download it.<\/p>\n<p><a href=\"https:\/\/localwp.com\/\" rel=\"noopener\" target=\"_blank\">Download Local by Flywheel<\/a><\/p>\n<p>Go through the initial setup. It should only take a few minutes.<\/p>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2018\/06\/Welcome-to-Local-by-Flywheel-600.png\" alt=\"Welcome to Local by Flywheel\" width=\"600\" height=\"402\" \/><figcaption class=\"wp-caption-text\">Initial configuration for Local by Flywheel<\/figcaption><\/figure>\n<\/div>\n<p>When Local is done installing, it\u2019s time to create your first site!<\/p>\n<h2 id=\"creating-a-new-site\">Creating a new site<\/h2>\n<p>Creating a site is a 3-step process:<\/p>\n<ol>\n<li>Setup site<\/li>\n<li>Setup environment<\/li>\n<li>Setup WordPress<\/li>\n<\/ol>\n<h3>Setup site<\/h3>\n<p>The first step is to name your site. Whatever you choose will be copied across to your domain and path (see the Advanced Options).<\/p>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2018\/06\/Local-Setup-site-600.png\" alt=\"Setup site on Local\" width=\"600\" height=\"398\" \/><figcaption class=\"wp-caption-text\">Configure your site name and site path in advanced options<\/figcaption><\/figure>\n<\/div>\n<p>By default, your site domain will end in .local, but you can change this to another suffix if you prefer e.g. <code>my-first-site.dev<\/code>.<\/p>\n<p>You can in fact change both the name and the local URL later, but not the site path. So if you want to choose a custom path, do it now.<\/p>\n<h3>Setup environment<\/h3>\n<p>Next, you have a choice of server environments. If you host with Flywheel, you\u2019ll want to use their <strong>Preferred<\/strong> option, which mirrors their own web hosting.<\/p>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600 size-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2018\/06\/Setup-Custom-environment-600.png\" alt=\"Setup a Custom environment\" width=\"600\" height=\"400\" \/><figcaption class=\"wp-caption-text\">Setup a Custom environment on Local by Flywheel<\/figcaption><\/figure>\n<\/div>\n<p>Otherwise, you can select your own <strong>Custom<\/strong> setup, with the choices of:<\/p>\n<ul>\n<li><strong>PHP version<\/strong>: 5.2.4 to 7.2.0. (If you intend to move your site to production there\u2019s really no reason to run a lower version of PHP \u2013 here\u2019s why you should <a href=\"https:\/\/wpmudev.com\/blog\/updating-php-version\/\" target=\"_blank\">run PHP 7.0 or greater<\/a>.)<\/li>\n<li><strong>Web serve<\/strong>r: nginx or Apache<\/li>\n<li><strong>MySQL version<\/strong>: 5.5 or 5.6<\/li>\n<\/ul>\n<h3>Setup WordPress<\/h3>\n<p>If you want a <strong>multisite<\/strong>, be sure to click on the Advanced Options to get the choice, as this can\u2019t be changed later. Local supports both subdomain and subdirectory multisites.<\/p>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2018\/06\/Set-up-WordPress-600.png\" alt=\"Set up WordPress\" width=\"600\" height=\"401\" \/><figcaption class=\"wp-caption-text\">You can only configure multisite in the initial setup<\/figcaption><\/figure>\n<\/div>\n<p>You can save your preferred username\/password across all your sites if you want.<\/p>\n<p>Once you hit <strong>Add Site<\/strong>, wait a minute or two, then you\u2019re done. Hurrah!<\/p>\n<p>So what can you do next? Let\u2019s look at some of Local by Flywheel\u2019s features.<\/p>\n<h2 id=\"site-setup-view\">Site Setup view<\/h2>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2018\/06\/My-First-Site-site-setup-600.png\" alt=\"Site Setup tab in Local by Flywheel\" width=\"600\" height=\"542\" \/><figcaption class=\"wp-caption-text\">Behold your new site in Local by Flywheel<\/figcaption><\/figure>\n<\/div>\n<p>Your first view is of the Site Setup. From here you can:<\/p>\n<ul>\n<li>View a site.<\/li>\n<li>Log in to your site.<\/li>\n<li>Stop the site &#8211; or start it if it is stopped.<\/li>\n<li>Open the folder on your local machine with the site\u2019s files \u2013 click on the arrow next to the path under your site\u2019s name.<\/li>\n<li>And more\u2026<\/li>\n<\/ul>\n<h2 id=\"ssl\">SSL<\/h2>\n<p>SSL support is there but you need to enable it: go to the <strong>SSL<\/strong> tab and <strong>Trust<\/strong> the certificate.<\/p>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2018\/06\/Trust-SSL-600.png\" alt=\"Trust a SSL certificate\" width=\"600\" height=\"342\" \/><figcaption class=\"wp-caption-text\">Enabling SSL for your new site<\/figcaption><\/figure>\n<\/div>\n<p>You can then go to e.g. <code>https:\/\/my-first-site.local<\/code> and see a green padlock.<\/p>\n<h2 id=\"blueprints\">Blueprints<\/h2>\n<p>If you typically build sites with the same basic setup, save time by saving your site as a <strong>Blueprint<\/strong>.<\/p>\n<p>Create your site and add your commonly used theme(s) and plugins (say, all your favorite <a href=\"https:\/\/wpmudev.com\/projects\/category\/plugins\/\" target=\"_blank\">WPMU DEV plugins<\/a>\u00a0or try out some of our <a href=\"https:\/\/wpmudev.com\/free-plugins\/\" target=\"_blank\">free plugins<\/a>). Then in Local by Flywheel, right-click the site you want under Local Sites and choose <strong>Save as Blueprint<\/strong>.<\/p>\n<p>You can then easily re-use this configuration when you add a new site.<\/p>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600 size-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2018\/06\/Create-site-from-Blueprint-600.png\" alt=\"Create a site from a Blueprint: choose the blueprint from the dropdown menu\" width=\"600\" height=\"399\" \/><figcaption class=\"wp-caption-text\">Create a site from a Blueprint: choose the blueprint from the dropdown menu<\/figcaption><\/figure>\n<\/div>\n<p>You could even have Blueprints for different types of sites, e.g.<\/p>\n<ul>\n<li>a small business site<\/li>\n<li>a portfolio site<\/li>\n<li>an eCommerce site<\/li>\n<\/ul>\n<p>Your Blueprint will be a snapshot in time. So if your plugins or themes need updates by the next time you want to use the same combo, update them and resave the site as a new Blueprint.<\/p>\n<h2 id=\"cloning-a-site\">Cloning a site<\/h2>\n<p>Any Local site can be cloned to create a new Local site. The process is very similar to making a Blueprint, except that the configuration isn\u2019t stored for reuse.<\/p>\n<h2 id=\"exporting-a-site\">Exporting a site<\/h2>\n<p>Exporting creates a zip file of your entire site configuration. You\u2019d use this if you want to move a site into a Local installation on another computer.<\/p>\n<h2 id=\"switch-your-server-environment\">Switch your server environment<\/h2>\n<p>Imagine you are developing a plugin and want to check that it runs with different versions of PHP. No problem! It\u2019s super simple to change PHP version with Local.<\/p>\n<p>From Site Setup, select a Custom setup for your Local Environment. Then you can simply upgrade or downgrade PHP on the site you are working on. Or indeed, change web server.<\/p>\n<p>This works because each site lives in its own container powered by Docker.<\/p>\n<p>When you do this, there are a couple of warnings:<\/p>\n<ol>\n<li>If you used <a href=\"https:\/\/wpmudev.com\/blog\/what-is-ssh-wordpress\/\" target=\"_blank\" rel=\"noopener\">SSH access<\/a> (see later) you\u2019ll lose any changes you made, unless you <a href=\"https:\/\/wpmudev.com\/blog\/clone-wordpress-sites\/\" target=\"_blank\" rel=\"noopener\">Clone the site<\/a>.<\/li>\n<li>You may have to wait for new dependencies to be downloaded.<\/li>\n<\/ol>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption aligncenter\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2018\/06\/Change-your-local-environment-600.png\" alt=\"Changing your local environment could cause issues to occur\" width=\"562\" height=\"600\" \/><figcaption class=\"wp-caption-text\">Changing your local environment could create issues.<\/figcaption><\/figure>\n<\/div>\n<h2 id=\"copying-a-live-site\">Copying a live site to Local by Flywheel<\/h2>\n<p>If you don\u2019t have hosting with staging as a feature, working on a local copy of a live site is a very good way to test out changes without risking mishaps.<\/p>\n<p>If you\u2019re lucky enough to be using Flywheel\u2019s hosting service, copying a site is easy. You can <a href=\"https:\/\/localwp.com\/help-docs\/connect\/connect-to-flywheel-with-local\/\" rel=\"noopener\" target=\"_blank\">log in and connect it to Flywheel<\/a>, then pull live sites. into Local.<\/p>\n<p>Note that <strong>copying multisite installs is not supported<\/strong> at this time.<\/p>\n<p>Otherwise, copying your live site is relatively simple. All you need is:<\/p>\n<ol>\n<li>A backup of your site\u2019s wp-content folder.<\/li>\n<li>A .sql file with the site\u2019s database.<\/li>\n<\/ol>\n<p>Move the SQL file inside the wp-content folder, then zip the folder.<\/p>\n<p>Then <strong>drag and drop<\/strong> this zip file into the Local by Flywheel window. The app does all the hard work for you in recreating the site, including rewriting all the URLs. Sweet!<\/p>\n<h3>Local development considerations<\/h3>\n<p>You won\u2019t want Google Analytics running and logging visits on your local install. Depending on how you\u2019ve entered your tracking code, you can:<\/p>\n<ul>\n<li>Remove it from functions.php<\/li>\n<li>Remove it from Theme Options or via the Customizer<\/li>\n<li>Deactivate a Google Analytics plugin you might be using<\/li>\n<\/ul>\n<p>The same goes for the Facebook pixel and any other tracking codes you might be using.<\/p>\n<p>Jetpack hasn\u2019t played well for me when I\u2019ve duplicated a site using it locally. I find it wants to disconnect my live site from WordPress.com. For this reason, I tend to disable it on Local by renaming the <code>jetpack<\/code> plugin folder to <code>_jetpack<\/code>.<\/p>\n<p>You can also deactivate any security plugins like Defender when you\u2019re working on a Local by Flywheel site. Remember to reactivate them later if you\u2019re making the site live.<\/p>\n<h2 id=\"live-link\">Creating a live link for your site<\/h2>\n<p>When you\u2019ve worked for some time on a local site, but it\u2019s not ready for production, you might want to share it with a colleague or see how it renders on a phone. How can you do that?<\/p>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600 size-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2018\/06\/A-Local-site-ready-for-remote-viewing-600.png\" alt=\"A Local site ready for remote viewing\" width=\"600\" height=\"333\" \/><figcaption class=\"wp-caption-text\">A Local site ready for remote viewing<\/figcaption><\/figure>\n<\/div>\n<p>Instead of moving it to a testing server, Local by Flywheel has a nifty <strong>\u201cLive link\u201d<\/strong> option courtesy of <a href=\"https:\/\/ngrok.com\/\" target=\"_blank\">ngrok<\/a>. Enabling this will give you a live URL to use from any device.<\/p>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600 size-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2018\/06\/ngrok-Live-link-600.jpg\" alt=\"An ngrok live link on a phone\" width=\"354\" height=\"600\" \/><figcaption class=\"wp-caption-text\">An ngrok live link on a phone<\/figcaption><\/figure>\n<\/div>\n<p>Like Mission: Impossible, your link will self-destruct after a certain period of time \u2013 namely, the time when you shut down Local by Flywheel. That\u2019s fine for getting quick feedback, but not so great if your colleague or client gets back to you in a week! Every time you re-enable the live link, you\u2019ll get a different URL.<\/p>\n<h2 id=\"moving-site-to-live-server\">Moving a site from Local by Flywheel to a live server<\/h2>\n<p>Flywheel users can use their Connect option to push single install WordPress sites to Flywheel\u2019s hosting.<\/p>\n<p>Not hosting with Flywheel? One option is to use the Duplicator plugin to move the site to a live server. I used Rae\u2019s tutorial on <a href=\"https:\/\/wpmudev.com\/blog\/guide-to-migrating-localhost-wordpress-to-live-site\/\" target=\"_blank\">migrating WordPress from localhost to live<\/a> and it worked perfectly.<\/p>\n<p>Make sure that Duplicator cleans up the files it creates when it\u2019s done. The <code>local.phpinfo.php<\/code> file created by Local by Flywheel can be safely deleted through FTP or your hosting File Manager.<\/p>\n<h2 id=\"database-access\">Database access<\/h2>\n<p>I\u2019m used to viewing the database for a WordPress site on phpMyAdmin. Local by Flywheel uses <strong>Adminer<\/strong> by default, which is not such a nice user interface, but it gets the job done.<\/p>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600 size-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2018\/06\/Adminer-600.png\" alt=\"Adminer on Local by Flywheel\" width=\"600\" height=\"308\" \/><figcaption class=\"wp-caption-text\">Adminer on Local by Flywheel<\/figcaption><\/figure>\n<\/div>\n<p>Alternatively, if you\u2019re a Mac user you can download and use <strong>Sequel Pro<\/strong>.<\/p>\n<h2 id=\"viewing-emails\">Viewing emails<\/h2>\n<p>One disadvantage of developing locally is that transactional emails aren\u2019t sent by WordPress.<\/p>\n<p>Fortunately, under the Utilities tab you\u2019ll find the <strong>MailHog<\/strong> tool, which logs any emails sent locally. If you\u2019re testing out any plugin which sends email &#8211; such as Forminator Pro, Events+ or WooCommerce &#8211; you can make sure their emails are working correctly.<\/p>\n<div  class=\"wpdui-pic-regular  \"> <img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600 size-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2018\/06\/MailHog-600.png\" alt=\"MailHog user interface\" width=\"600\" height=\"119\" \/> <\/div>\n<p>Note that if you restart Local by Flywheel, any emails from your previous session are <strong>not<\/strong> stored \u2013 so you are better off checking MailHog as you go along.<\/p>\n<h3>SSH Access and WP-CLI<\/h3>\n<p>Right-click on any running site and you can open it via SSH. WP-CLI is already installed; type <code>wp<\/code> to see the list of commands, and <code>q<\/code> to return to the command line.<\/p>\n<p>Use WP-CLI to handle tasks quickly. For example, activate all plugins on a site, or delete all transients.<\/p>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600 size-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2018\/06\/WP-CLI-600.png\" alt=\"Using WP-CLI via SSH on Local\" width=\"600\" height=\"178\" \/><figcaption class=\"wp-caption-text\">Using WP-CLI via SSH on Local<\/figcaption><\/figure>\n<\/div>\n<p>To learn more about WP-CLI, read:<\/p>\n<ul>\n<li><a href=\"https:\/\/wpmudev.com\/blog\/wordpress-development-wp-cli\/\" target=\"_blank\">10 Ways WP-CLI Can Speed Up WordPress Development<\/a><\/li>\n<li><a href=\"https:\/\/wpmudev.com\/blog\/advanced-wordpress-development-wordpress-wp-cli\/\" target=\"_blank\">Advanced WordPress Development: WordPress Automation With WP-CLI<\/a><\/li>\n<\/ul>\n<h2 id=\"installing-git\">Installing Git<\/h2>\n<p>Git is not installed on Local by Flywheel, but you can add it easily enough. Follow the <strong>Deployment with git<\/strong> section in this article: <a href=\"https:\/\/wpbeaches.com\/using-local-by-flywheel-as-a-local-development-workflow-for-wordpress\/\" target=\"_blank\">Using \u2018Local by FlyWheel\u2019 as a Local Development Workflow for WordPress<\/a>.<\/p>\n<h2 id=\"preferences-area\">Preferences area<\/h2>\n<p>Your preferences for creating sites are stored in the <strong>Preferences<\/strong> area. On Windows, access it via the hamburger menu in the top right corner. On Mac, go to Local by Flywheel &gt; Preferences in the menu.<\/p>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600 size-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2018\/06\/New-Site-Defaults-600.png\" alt=\"Preferences - New Site Defaults\" width=\"600\" height=\"402\" \/><figcaption class=\"wp-caption-text\">Preferences &#8211; New Site Defaults<\/figcaption><\/figure>\n<\/div>\n<p>You can also see all your Blueprints and try running some experimental features.<\/p>\n<p>And if you use XDebug and PHP Storm, there\u2019s an add-on to integrate them with Local here too.<\/p>\n<h3>Community Support<\/h3>\n<p>Local by Flywheel is supported by a <a href=\"https:\/\/localwp.com\/community\/\" rel=\"noopener\" target=\"_blank\">community forum<\/a>.<\/p>\n<p>If you have any problems with its setup or running, as I did when installing Local on Windows for the first time, the <a href=\"https:\/\/localwp.com\/community\/c\/FAQ\" rel=\"noopener\" target=\"_blank\">FAQ<\/a> is a good starting spot.<\/p>\n<p>If you want Local\u2019s developers to add something cool, add it to the Feature requests subforum.<\/p>\n<h2>Summing up<\/h2>\n<p>I really like Local by Flywheel. It\u2019s quick to set up, simple to use and has enough extras to make it worthwhile. My favorites are Blueprints and live links.<\/p>\n<p>It\u2019s now my go-to tool for local development.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Developing websites locally can be an attractive proposition for several reasons. For starters, it\u2019s free. If your Internet connection is non-existent or lost you can keep working. You can use localhost as a testing ground for trying out themes or plugins or creating your own. Finally, your sites remain private until you choose to share [&hellip;]<\/p>\n","protected":false},"author":384374,"featured_media":166923,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"blog_reading_time":"","wds_primary_category":0,"wds_primary_tutorials_categories":0,"footnotes":""},"categories":[557],"tags":[10074,10244,10653,10936,10789],"tutorials_categories":[],"class_list":["post-173222","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-development","tag-git","tag-localhost","tag-staging-environment","tag-test-site","tag-testing-environment"],"_links":{"self":[{"href":"https:\/\/wpmudev.com\/blog\/wp-json\/wp\/v2\/posts\/173222","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wpmudev.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wpmudev.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wpmudev.com\/blog\/wp-json\/wp\/v2\/users\/384374"}],"replies":[{"embeddable":true,"href":"https:\/\/wpmudev.com\/blog\/wp-json\/wp\/v2\/comments?post=173222"}],"version-history":[{"count":13,"href":"https:\/\/wpmudev.com\/blog\/wp-json\/wp\/v2\/posts\/173222\/revisions"}],"predecessor-version":[{"id":207769,"href":"https:\/\/wpmudev.com\/blog\/wp-json\/wp\/v2\/posts\/173222\/revisions\/207769"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wpmudev.com\/blog\/wp-json\/wp\/v2\/media\/166923"}],"wp:attachment":[{"href":"https:\/\/wpmudev.com\/blog\/wp-json\/wp\/v2\/media?parent=173222"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wpmudev.com\/blog\/wp-json\/wp\/v2\/categories?post=173222"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wpmudev.com\/blog\/wp-json\/wp\/v2\/tags?post=173222"},{"taxonomy":"tutorials_categories","embeddable":true,"href":"https:\/\/wpmudev.com\/blog\/wp-json\/wp\/v2\/tutorials_categories?post=173222"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}