Making A Genesis Child Theme For WordPress On The iPad
One of the things that has really held me from going all in on iOS was working with WordPress. I like to play around with websites and am a hobbiest WordPress developer. I’m not expert, but i like playing around and helping friends out with their sites. As anyone who plays with WordPress knows, you should test things first on a local server as you develop, and although you can spend 90% of your time editing CSS files, you still need a PHP server to run your tests. Until recently I had wondered about the different ways I could get round this. Now, thanks to Ben Brooks I see an easy way round this and I know how I can sift over to doing 99.9% of my work on an iPad. Before I dive into Ben’s solution (and the issues it has) here are two alternative paths I had considered.
1. Screens and mac based local host
One option I’ve noticed another WordPress developer doing at a StarBucks is using screens to run a localhost version of WordPress on a Mac (or windows PC) and then use a Remote Desktop client like Screens to access and edit it. This has some nice advantages in that you have your own local copy to trash if things go wrong, you have all the files on your mac and you can use your Mac at home again. Everything is in sync.
But this is basically the same as having a Mac, so why not just have a mac? Sure there are reason for an iPad over a Mac (battery power, portability, pen) but in this case you have latency in your internet connection and you still need a mac. Why not just use the mac and iPad for what they are best at?
Draftcode is an iOS developing app that runs a version of PHP and has WordPress 4. something built in. This means you can get a WordPress site up and running on your iPad and write code (PHP, CSS, etc) there. I’ve been looking at it for a while and really debating whether or not to drop the £9.99 for it but I couldn’t see how easy it would be to get code across from Coda (my preferred iOS developing tool) to DraftCode and back again. This was enough to put me off…for now. I suspect I will grab it eventually though.
3. An online “local” test site
I tried using Koding.io which promises some local development features, but it is more designed as an IDE than just a test site and wants you to write code on their servers. Linking Coda up was haphazard as the server would shut down when it wasn’t open in safari. If I had split view then maybe this would have worked, but still that’s not a great solution.
Ben’s solution is simpler but not necessarily elegant. It involves setting up a test site online. This means you are running it live but as it is a test, mistakes don’t matter. You can use your WordPress settings (or Yoast SEO) to unlist this site from Google’s robots and you can choose a strange name so that no one will bother to search for it (TinyNinjaDino.xyz?) and it should be private.
Of course there are some issues with this solution, it’s live on the internet and it’s not as easy to just kill a site and then restart when you have to log into your provider and mess with their settings. Plus you’re edits are live for the world to see and if someone knows the address, they can see it. Plus, you still need an internet connection to be running to check your changes. On the other hand, that could be an advantage if you like to “show your work.”
If you are just developing a simple theme (like I mostly do) then this shouldn’t be too much of an issue, and it has the added benefit of being an authentic environment, you’ll see how things will really look and work online not a local site which can have some quirks.
an iOS Only Developed Genesis Child Theme
Oh I’ll probably give the child theme away at the end, but you need the genesis framework from studiopress to run it. They have some great looking themes so I do recommend them.