Building your WordPress website, or any website for that matter, is a lot of work if you want it done properly. I like to build my websites lean and avoid clutter as much as possible. Because of that, and because I design each website myself. Premium (or free) themes are not an option. Many come bloated with scripts and other stuff that slows the website down to a crawl. And when you design the layout yourself, a ready-made theme is more of a distraction than of any help.
Over the years, my business has grown, and time became more of an item. This led me to develop a systematic way to developing the websites I build efficiently as possible. In this article, I will explain how I do this in 10 tips, garnered over years of experience. May it help you streamline your working process.
I should start by mentioning that I do all of the work on a Windows machine. I know this is not the standard operating procedure for web designers, but since I’ve know Windows very well for a long time, and I have always found a means to an end, the Macbook is still only used to test the final result on Mac browsers. If you think I’m on the wrong track here, and should switch to Mac / Node.js / Grunt mumbo jumbo, please feel free to comment and tell me why and where to start 🙂
When building your WordPress website, you can either designate some online web server space (maybe a sub domain of your own website for instance), or simply install a local web server on your PC. Developing locally has the benefit of a very quick system, and no extra effort required to shield your work-in-progress away from those wretched search engines or even visitors. To this end, I always use XAMPP. This is free, and does the job very well. I started out with WAMP, which is actually built for using on Windows, but that produced quite unexpected results (although admittedly, that experience is a couple of years old, it might be better now). Using XAMPP, I never encountered any issues.
If you build many sites, and have to maintain them as well, using the same theme framework has huge benefits! Your code always uses the same logic and it’s always placed in the same location, saving you a ton of time, helping you build quickly. I use an adapted version of the HTML5blank theme. It’s very sparse, but that’s fine because I always build my own layout anyway, and add functions when needed. Of course there are plenty of other framework themes that would serve you just as well. It’s more a matter of taste than anything. Feel free to check my collection of oft-used WordPress snippets: WordPress snippets collection to ameliorate your own theme framework.
Using the framework, set up your website so it is fully functional. Worry about the styling later. This will save you a lot of time as you will otherwise find yourself adjusting the styling code you built so meticulously time and again.
Just like the design phase, When styling your website, build your stylesheets mobile first. Then progress by adjusting for larger screens by enlarging your browser window, see what changes and adapt. It’s also important to determine beforehand at which screen sizes you want to start showing certain content or layout items you deem unnecessary on mobile screens.
There are many code editors out there, both free and paid for, such as Notepad++, Visual Studio or Atom. I’ve been a very happy user of Sublime Text for years. The license is cheap, and there are tons of free packages to make your life easier, like code checking, syntax recognitions, alignment, placeholders, file comparison, etc. It also offers the possibility to save code snippets for later use.
A license is per person, so you can use it on as many machines as you like, as long as it’s just you using it. If you don’t want to pay, you can use the free version, which reminds you of that fact each time you start it up but has no further limitations.
SASS is a CSS extension language, allowing a lot more freedom in creating stylesheets. It extends the basic options in CSS, allowing you to code smarter and quicker:
@mixin ease-aL($easeA:all 0.5s ease-in) {
-webkit-transition: $easeA;
-moz-transition: $easeA;
-o-transition: $easeA;
transition: $easeA;
}
.gradient {
background: #1b6e91;
background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAw
JSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGl
kPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iM
CUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzFiNmU5MSIgc3R
vcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMyMTg5YjQiIHN0b3Atb
3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWd
odD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background: -moz-linear-gradient(top, #1b6e91 0%, #2189b4 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#1b6e91), color-stop(100%,#2189b4));
background: -webkit-linear-gradient(top, #1b6e91 0%,#2189b4 100%);
background: -o-linear-gradient(top, #1b6e91 0%,#2189b4 100%);
background: -ms-linear-gradient(top, #1b6e91 0%,#2189b4 100%);
background: linear-gradient(to bottom, #1b6e91 0%,#2189b4 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1b6e91', endColorstr='#2189b4',GradientType=0 );
}
.header { @extend .gradient }
.widget {
h3 { color:red;
&:hover { color:green; }
}
}
Using an order numbering is no requirement, but I find it practical because the files will be in order in your Windows Explorer, Mac Finder or Sublime Text folder/file pane.
Depending on the size of the code, I like to separate function (plugins, navigation, woocommerce) and screen sizes into separate sub files.
This approach makes life so much easier, the code is always in the same location and uses the same logic.
More information about SASS and all its possibilities can be found here: Sass-lang.com.
Using a preprocessor like Prepros allows you to automatically compile and minify your stylesheet when saving any of the _XXX.scss sub-stylesheets, and automatically upload each change to the theme files using FTP. Just hit save and refresh your browser! Prepros compiles and minifies many more languages, such as Less, Javascript, Pug, Styles, Haml, Coffeescript, Markdown, etc., and it works on both Windows and Mac OSX.
If you don’t use a preprocessor with built-in FTP function, you will need FTP software. The obvious choice there is FileZilla. It’s free and very easy to set up and use.
Depending on how you set this up, this may be more of a SEO tweak than a security tweak: Many hosting providers nowadays offer the free SSL solution provided by Open SSL. Traffic is securely encrypted now, and search engines like it a lot, but the security is by no means airtight. A paid SSL certificate comes with an actual owner/company check (Extended Validation) performed by the Certificate Authority (the company where you purchase the certificate), whereas the free version only encrypts the traffic, but does not do the EV.
If someone launches a fake bank website and sets it up with SSL, the data sent is encrypted, but it still ends up in the wrong hands. For many of my clients, a free SSL certificate suffices. But if the website handles sensitive data, such as a webshop handles visitors’ payment and address details, then a certificate with an Extended Validation is a must.
.htaccess (yes, a nameless file with the extension “htaccess”) is a hidden Apache configuration file. It can be placed in any directory in your website, but the main one is placed in the root of your website. It allows you to further protect your website, set redirects and tweak performance. Some plugins (such as caching plugins and Wordfence) also write code here.
Check my collection of .htaccess snippets here: .htaccess snippet collection.
Some plug-ins I use on almost every site I build. Because they make my client’s life – or mine – easier, or These are some of my favourites:
Once you’ve finished building and testing on XAMPP, make a full backup of your website, and restore it to the live environment. You should still test the site afterward, as there may be small differences.
In fact, my modus operandi is I have a basic WordPress website with all standard plugins, settings, sass, etc. installed and configured. This I backup and restore to a new site on my XAMPP platform, and build from there.
If you have any sound advice on how I could further streamline my development process, please feel free to leave your comment!
This post was last modified on 24/04/2020 10:05
Website en logo ontwerp voor Kookstudio Aalsmeer - voor uw kookclub, kookfeest of bedrijfsuitje in…
Website en logo ontwerp voor Kookstudio Aalsmeer - voor uw kookclub, kookfeest of bedrijfsuitje in…
Website en logo ontwerp voor Kookstudio Aalsmeer - voor uw kookclub, kookfeest of bedrijfsuitje in…
Website en logo ontwerp voor Kookstudio Aalsmeer - voor uw kookclub, kookfeest of bedrijfsuitje in…
Website en logo ontwerp voor Kookstudio Aalsmeer - voor uw kookclub, kookfeest of bedrijfsuitje in…
Building your WordPress website efficiently using the 10 tips I documented after years of experience.…
View Comments
My only bone I have to pick with you is your recommendation for TINYEYE, this extension sucks big time 99% of the time it doesn't identify pictures I've sent to it and no way does this extension beat Google Images. Google Images identifies more pictures than Tinyeye hands down. I have more success with Google Images.
I'm not sure what you are referring to. I have no mention of Tinyeye in my article.
Hi,
Definitely, WordPress is the most popular CMS nowadays. You have described every step of creating a WordPress website in detail. Everyone can have a basic idea of building a website after reading your article.
Thanks for such a nice article.
Hello there,
I was checking a resource about "AMP" you shared on your page here.
While it made everything clear, I actually needed a tool that would report errors on my sites. After some googling, I found one, so I wanted to suggest you add this tool to your page which discusses this topic.
https://www.websiteplanet.com/webtools/amp-validator/
It checks your page and tells you where the errors are, which is quite useful to be honest (and it’s free!) ?
I hope I was able to return the favor,
Isabella
Great addition Isabella, thanks!
Thank you for the info, the article is very helpful for me to develop the WordPress website
Hi Kundan,
you're welcome. it's good to know that my experience can help others.