Developer Guide
Thank you for working with us. Our aim is to make working with us as easy as possible – that goes for our clients, our suppliers and also ourselves. Our perfect job is one where the end result is excellent, and process of creating it is enjoyable and low-stress for all.
To make production easier, we have a standard install that we use as a starting point for all our sites. This comes with all the technology that we usually use and have found to be reliable. If you need to create any functionality, please use these steps:
See if it can be done using any of the standard plug-ins that are pre-installed
If not, create a function in functions.php or a separate required php file (please comment your code)
If absolutely necessary, you can install a new plug-in. It must be reliable, have at least 10,000 installs and be recently updated and compatible with the newest version of WP. Try to avoid adding plug-ins if possible
You will be given access to the project workbook, a Google Sheet that contains all the information that exists about the project as well as to-do lists and timelines etc. Please remember that the client also has access to this workbook.
Please communicate regularly. There is no shame in not knowing something and it is easier to discuss the correct approach than it is to redo work.
Code
All php should be in functions.php. More complex code should be in a required file.
There are some standard filters and actions already in functions.php – shortcode templates etc. They are all commented out for now, but we leave them there are we use most of them on every build.
JS code should be correctly enqueued in functions.php. There is a cachebuster function there if you need it.
All CSS should live in the Elementor customiser: Customize > Additional CSS
Please avoid adding any code in html blocks in Elementor pages. It makes it very hard to find later on.
In short – please work as if you will be asked to come back and fix something in a year’s time. It is possible you will, and your future self will be grateful if you have left everything organised.
Development Environment
We always develop directly on the server. Local development environments always seem to cause more issues than they solve. WPIDE is pre-installed to make coding easier. There is no version control, but the server is backed up nightly. Usually, sites will be developed on staging.domainname.com or domainname.pictureandword.com until they are ready to go live.
Plugins
The following plugins are all pre-installed
Elementor Pro
We continue to use Elementor Pro due to the simplicity of page design and how usable it is for clients to create their own layouts. Please ensure you are familiar with Elementor as it is core to how we work. We may retire it when Gutenberg-based page builders have improved a little more.
Advanced Custom Fields / Custom Post Type UI
Please use these for creating any custom post types – classes, events, companies etc. This is more maintainable than coding from scratch if we need to go in and change something in the future.
Bot Protection
This works with our hosting company to provide a level of bot protection.
Breeze
This is a fast and low-level caching system based on Varnish. Again, it works with our hosting company to provide extremely fast page speeds. You are welcome to play with the settings, but we suggest you leave it deactivated during development
This is a great tool for rendering custom posts. It can be used effectively with some simple parameters and CSS, but can also be used with templates. You will find a Display Posts template in the Theme Files folder.
Easy WP SMTP
We will configure this before the site goes live.
File Manager Advanced
You should not need FTP access as you have this instead. If you do need FTP access, please ask.
GDPR Cookie Consent
Fairly simple and free cookie consent banner. The best we’ve found so far.
HTTP Headers
Security plugin to control cross-origin headers. To be activated and configured before the site goes live.
SEO Press
Yes, RankMath is technically ‘better’, but it’s also very heavy and gets in the way a lot. SEO Press is for basic on-page SEO and is simpler. We always provide basic on-page SEO and the keywords will be in the project workbook
Google Site Kit
Don’t worry about this one – we will connect up analytics before the site goes live
Smart Slider 3
The free version is usually sufficient for a nice homepage header. Not usually necessary for video backgrounds though – Elementor video backgrounds work better.
SVG Support
Does what it says on the tin. (Be aware that you must upload SVGs to the library directly by going in via the dashboard – they still won’t upload when dragged into an Elementor modal window)
WP Data Access
Basic DB manager in case you need it
WPIDE
This is an IDE plugin for WordPress. We are still trialing it, but so far it has been a big improvement over the WordPress theme files editor and partly makes up for not having a real IDE.
WP Smart Crop
This is a really clever plugin. If you have a lot of background-size:cover images where faces etc are being cut off (e.g. in a homepage header) you can use this to ensure the focal point of the image is always visible.
Suggestions
We are always looking to improve our tech stack, so if you have any suggestions please let us know.