Created by: Mad Penguin Consulting Ltd
Welcome to the Make Me Static Plugin for WordPress. This plugin is a static site generator and aims to create and maintain a static copy of your WordPress website within a Git repository.
The intention is that this Git repository can be used as a source for a static page provider who can monitor Git updates and automatically publish a static copy of your site from the current contents of your repository.
The plugin provides a customised sitemap and change tracking which connects to the external MMS service which does all the heavy lifting.
This plugin employs a third party service to scan a WordPress site and store the resulting static copy in a Git repository. The service retains a metadata database for the site which includes file names, sizes and modification times, together with any credentials that have been added when creating a profile. (Sensitive credentials and other information is encrypted at rest). The external service is responsible for all scanning and processing activities to mitigate strain on the WordPress server.
The only private data transferred to the external service is the information you enter when creating a profile. All other information is obtained via an anonymous external scan, hence publically available.
The plugin references the third party service via directory services which are accessed at;
* https://mms-directory-1.madpenguin.uk
* https://mms-directory-2.madpenguin.uk
* https://mms-directory-3.madpenguin.uk
This in turn will refererence the crawler allocated to the site in question. Crawler URLs typically take the form https://mms-crawler-(n).madpenguin.uk. For on-premisis crawlers the
url will also include a customer-id prefix, but will always end in “.madpenguin.uk”.
Note that this in an integrated solution, the 3rd party service is owned and operated by the plugin authors on a combination of cloud hosted and on premisis equipment.
The WordPress site is scanned by the MMS service under direction from the WordPress plugin. This off-loads the scanning process to specialised software aims to minimise the loading on the WordPress server while scans are in progress.
There are three types of scan that can be performed;
An “update”, which literally only looks at entries with changed sitemap timestamps
(this is very quick and great for typo’s and any changes that only affect a single page)
A “synchronise”, typically this will scan every asset on the WordPress site and compare a checksum of each asset against it’s database to see if it’s changed since the last scan. Any changes are then transferred to the connected Git repository.
A “Git verification”, this is like a “synchronise”, but also scans the Git repository for assets that are no longer referenced by the site (and removes them).
As the site is scanned “from the outside” there should be no risk of the plugins actions exposing any data that isn’t already public. By the same token the external service has no ability to modify WordPress so the security footprint of the plugin is tiny.