Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I added debug output to SeoTag#template and realized that for every page with SEO tag called, we're (A) calculating the template path, (B) reading in the template, and (C) parsing it.
Of course, we only have one template, and that template stays the same between pages (crazy how templates work, right?), so we may as well cache it on the class, rather than the instance.
This PR exposes SeoTag.template, a memoized class variable, so we parse the template on SEO tag's first call, and not on each subsequent call.
On my personal site, build time went from about 16 seconds to about 14.