Build Settings
The Build Settings determine what content is included or excluded in the static version of your WordPress site, as well as how that content is linked.
Destination URL
This should be the URL of your published site, for example https://www.mydomain.com/
.
Considering that your WordPress installation runs on https://wordpress.mydomain.com/
, Staatic will convert all instances of https://wordpress.mydomain.com/
into https://www.mydomain.com/
.
Instead of using an absolute URL it is also possible to use a relative URL, for example //mydomain.com/
or /
. This makes it possible to host your site on multiple schemes or domains. Including a path other than /
will cause it to be prepended to all URLs, allowing your site to be placed in a subdirectory.
If you want to be able to browse your site locally, without hosting it on a webserver, or in other special cases you can select Offline URL. This will convert all URLs to be path relative.
Additional URLs
In order to generate the static version of your site, Staatic crawls all content of your WordPress site. It starts out by fetching the front page, and then follows the links on that page until all pages have been processed.
Pages or assets not referenced anywhere on your site will not be included in the final result, unless these are added to this list manually.
Optionally for any URL provided you can uncheck Follow or Save. Unchecking Follow causes links found on this page not to be followed while crawling your site. Unchecking Save causes the URL itself not to be included in the published site.
Here are some examples of common additional URLs:
/sitemap.xml
/robots.txt
/favicon.ico
Note: If you have an XML sitemap, it is recommended to include this in the list. Not only does it make sure all content is included on your static site, it also provides a better indication of the progress while publishing.
Additional Paths
Additional paths are very similar to additional URLs, with the difference that these are paths on the filesystem that will be resolved into additional URLs.
Note: In case the provided path is a directory, it will be scanned recursively.
It is recommended to include the path to your wp-uploads
directory to ensure that all static assets are always included in your static site.
Optionally for any path provided you can uncheck Follow or Save. Unchecking Follow causes links found within this path not to be followed while crawling your site. Unchecking Save causes the path itself not to be included in the published site.
Excluded URLs
Just like additional URLs are added to your static site, excluded URLs are skipped and not added to your static site.
Staatic supports three types of exclude rules:
- Simple rules, exactly matching a specific URL, e.g.:
/some-page/
; - Wildcard rules, matching a URL with support for wildcards, e.g.:
/some-*/
; - Regular expression rules, matching a URL based on a regular expression, e.g.:
~^/excluded-page-[1-3]/?$~
.
All rules are evaluated case insensitive and are matched against the following (normalized) URL segments: path, query and fragment.
Note: In order to use regular expression rules, you must use
~
as the delimiter. Modifiers are currently not supported.
Additional Redirects
Staatic recognizes HTTP redirects during its crawling phase and will apply them to the static version of your site as well. Additional redirects not existing in the dynamic WordPress site can optionally be specified here.
The following HTTP status codes are supported:
HTTP Status Code | HTTP version | Type | Cachable | Request Method Subsequent Request |
---|---|---|---|---|
301 | HTTP/1.0 | Permanent | Yes | GET / POST may change |
302 | HTTP/1.0 | Temporary | Not by default | GET / POST may change |
307 | HTTP/1.1 | Temporary | Not by default | may not change |
308 | HTTP/1.1 | Permanent | By default | may not change |
There are cases where it is useful to configure additional redirects. For example, when the slug of a post is changed and the original URL is no longer referenced within the site. In that case you will want to make sure the original URL does not result in a 404, but is redirected to the new URL instead.