stanthams content revision

This commit is contained in:
Ray Elliott 2020-02-18 18:20:07 +00:00
parent 12be984f76
commit 872d397397
1 changed files with 31 additions and 27 deletions

View File

@ -9,7 +9,7 @@ featured_image = "/images/stanthams/large-1.jpg"
series = ["Portfolio"] series = ["Portfolio"]
+++ +++
**Charles Stantham** are a firm of made up solicitors who decided they wanted me to make up a [website](https://stanthams.rayelliott.dev/) for their firm. **Charles Stantham** are a firm of made-up solicitors who decided they wanted me to make up a [website](https://stanthams.rayelliott.dev/) for their firm.
The site is a fairly basic brochure site with no particularly special requirements. The site is a fairly basic brochure site with no particularly special requirements.
@ -27,32 +27,34 @@ class="icon-inline oceanwp-icon"
caption="There were a number of reasons why using OceanWP is appropriate for a project such as this:" caption="There were a number of reasons why using OceanWP is appropriate for a project such as this:"
>}} >}}
* **Quick**. Using such solutions can cut development time considerably. * **Quick**. Using such solutions can cut development time considerably -- especially important for low budget sites.
This can be especially important for low budget sites.
Instead of building a site completely from scratch, a general, existing theme can be highly customised. Instead of building a site completely from scratch, a general, existing theme can be highly customised.
* **Flexible**. Although not as flexible as a bespoke theme, OceanWP is highly customisable. * **Flexible**. Although not as flexible as a bespoke theme, OceanWP is highly customisable.
For features that can't be created or modified within the theme a child theme can be created and these features added on that way. For features that can't be created or modified within the theme a child theme can be created and these features added on that way.
* **Extensible**. Many features are provided as extensions to the base theme. * **Extensible**. Many features are provided as extensions to the base theme.
It is also not difficult to add custom functionality if needed. It is also not difficult to add custom functionality if needed.
* **Lightweight**. There are a lot of popular page builders available for WordPress. * **Lightweight**. There are a lot of popular page builders available for WordPress.
Not all of them are, relatively speaking, as lightweight or well coded. Not all of them are, relatively speaking, as lightweight or well coded.
There are, however, disadvantages. There are, however, **disadvantages**.
One of those being bloat. One of those being bloat.
Pre-built themes are typically designed to provide for very broad, general use cases. Pre-built themes are typically designed to provide for very broad and general use cases.
A lot of this functionality will never be used by any one theme and so will only serve to at best clutter the interface.
At worst they can slow the site and increase the likelihood of vulnerabilities.
This means purpose built themes and design elements will always be leaner and more efficient. A lot of this functionality will never be used by any one theme and so will only serve to, at best, clutter the interface.
We can also be sure they are be written with clean, well written code (if coded correctly of course). At worst, they slow the site and increase the likelihood of vulnerabilities.
Purpose built themes and design elements will always be leaner and more efficient.
We can also be sure they contain clean, well written code (if coded correctly of course).
In some cases, performance issues may not be so apparent for small sites with few users. In some cases, performance issues may not be so apparent for small sites with few users.
However, these can become much more of an issue once the number of visitors is scaled up for bigger sites. However, these become much more of an issue once the number of visitors is scaled up for bigger sites.
So, when working with WordPress, a theme developed from scratch should always be faster, leaner and more efficient. So, when working with WordPress, developing a theme from scratch will be faster, more efficient, and result in
However, this is not always possible given time or cost restraints and compromises may need to be made. a leaner theme.
In these cases a site builder may be the best option.
However, this is not always possible given time and cost restraints so compromises may need to be made.
In these cases a 'site builder' may be the best option.
As there were some minor customisations required that were not possible through the theme's interface, a child theme was created. As there were some minor customisations required that were not possible through the theme's interface, a child theme was created.
@ -73,10 +75,11 @@ figure
src="/images/logos/elementor-icon.png" src="/images/logos/elementor-icon.png"
alt="The Elementor logo." alt="The Elementor logo."
class="icon-inline" class="icon-inline"
caption="Elementor is a 'Page Builder' that provides component based building blocks that can be added to a WordPress site and customised." caption="Elementor is a '**Page Builder**' that provides component based building blocks that can be added to a WordPress site and customised."
>}} >}}
This has the advantage of speeding up development time considerably but brings disadvantages similar to those discussed above for using OceanWP. This has the advantage of speeding up development time considerably but brings disadvantages similar to those discussed above for using OceanWP.
Again, for this particular project, I felt the advantages outweighed the disadvantages. Again, for this particular project, I felt the advantages outweighed the disadvantages.
@ -90,10 +93,10 @@ Apart from Elementor, a limited number of other plugins were also used:
It would have been better to add this feature as a leaner, custom plugin, but for a site with a low budget, this is an acceptable compromise. It would have been better to add this feature as a leaner, custom plugin, but for a site with a low budget, this is an acceptable compromise.
* [GDPR Cookie Compliance](https://wordpress.org/plugins/gdpr-cookie-compliance/). * [GDPR Cookie Compliance](https://wordpress.org/plugins/gdpr-cookie-compliance/).
Very important for any site since the GDPR regulations came into force. Very important for any site since the GDPR regulations came into force.
A custom plugin could have been used, but for this very specific functionality, the benefits of an actively developed, tried and tested solution, outweigh any benefit of developing a plugin from scratch. A custom plugin could have been used, but for this very specific functionality, the benefits of an actively developed, tried and tested solution, outweigh the benefit of developing a plugin from scratch.
* [iThemes Security](https://wordpress.org/plugins/better-wp-security/). * [iThemes Security](https://wordpress.org/plugins/better-wp-security/).
Security is a big issue with any WordPress site. Security is a big issue with any WordPress site.
I find this plugin provides good security in addition to any server side security measures. I find this plugin provides good security (in addition to any server side security measures used).
* [UpdraftPlus - Backup/Restore](https://wordpress.org/plugins/updraftplus/). * [UpdraftPlus - Backup/Restore](https://wordpress.org/plugins/updraftplus/).
Regular, offsite backups are another essential component to any website. Regular, offsite backups are another essential component to any website.
UpdraftPlus handles these very well. UpdraftPlus handles these very well.
@ -101,29 +104,30 @@ Apart from Elementor, a limited number of other plugins were also used:
It is always better to use server side caching such as Nginx FastCGI cashing or Varnish. It is always better to use server side caching such as Nginx FastCGI cashing or Varnish.
However, in cases where this isn't practical, this plugin is a competent solution. However, in cases where this isn't practical, this plugin is a competent solution.
* [WP Mail SMTP](https://wordpress.org/plugins/wp-mail-smtp/). * [WP Mail SMTP](https://wordpress.org/plugins/wp-mail-smtp/).
It can be tricky getting mail working when using WordPress within Docker containers. It can sometimes be a little tricky getting mail working when using WordPress within Docker containers.
This plugin provides for a simple solution. This plugin provides a simple solution.
For an actual production site where Search Engine Optimisation is important I would also use a plugin to cover this. For an actual production site where Search Engine Optimisation is important I would also use a plugin to cover this.
I find [The SEO Framework](https://wordpress.org/plugins/autodescription/) to be the most comprehensive, efficient plugin to achieve this. I find [The SEO Framework](https://wordpress.org/plugins/autodescription/) to be the least bloated, competent plugin to achieve this.
With WordPress, it is essential to test the speed of the site before and after adding any plugins, especially for ones not used before.
For any plugin used with WordPress, it is essential to test the speed of the site before and after adding it, especially if not used before.
It is also very useful to look over the source code of any plugin. It is also very useful to look over the source code of any plugin.
Seeing how well written this is, can be a good indicator of the likely performance of a plugin and we can see how seriously security considerations are taken. Seeing how well written this is, can be a good indicator of the likely performance of a plugin and we can see how seriously security considerations are taken.
Also essential, for any WordPress site, is to limit the number of plugins used. Also essential, for any WordPress site, is to limit the number of plugins used.
An unnecessary amount of plugins will almost certainly slow a site down and will increases the risk of introducing vulnerabilities. An unnecessary amount of plugins will almost certainly slow a site down and increases the risk of introducing vulnerabilities.
## The Summary ## The Summary
So, in summary, there's not much to be said about the actual content of the website. So, in summary, there's not much to be said about the actual content of the website.
It's a fairly basic, low budget, brochure site. It's a fairly basic, low budget, brochure site.
The kind of site, that many small businesses will be looking for to give their business a presence on the web. The kind of site, that many small businesses will be looking for to give their business a presence on the web.
More interesting are the justifications for the development choices made which are covered above.
More interesting are the justifications I covered regarding the development choices made.
The primary purpose of the site is to provide information about the business. It is important that this is presented in an easy navigable fashion and the information is given in a clean, uncluttered, easy to digest manner. The primary purpose of the site is to provide information about the business. It is important that this is presented in an easy navigable fashion and the information is given in a clean, uncluttered, easy to digest manner.
All of which is achieved in the design choices of the theming and layout. All of which I feel is achieved in the design choices of the theming and layout.
{{< {{<
figure figure