diff --git a/.eleventy.js b/.eleventy.js
index 771d2823..032c181f 100644
--- a/.eleventy.js
+++ b/.eleventy.js
@@ -1,11 +1,12 @@
const makeItemLink = (slug) => `#${slug}`
+const findExistingDefinition = (word, collection) => collection.find(item => item.data.title === word)
module.exports = function (config) {
// Add a filter using the Config API
config.addFilter('linkTarget', makeItemLink);
config.addFilter('linkIfExistsInCollection', (word, collection) => {
- const existingDefinition = collection.find(item => item.data.title === word)
+ const existingDefinition = findExistingDefinition(word, collection)
if (existingDefinition) {
return `${word}`
@@ -14,6 +15,16 @@ module.exports = function (config) {
return word
})
+ config.addFilter('linkSubTermIfDefined', (subTermData, collection) => {
+ const existingDefinition = findExistingDefinition(subTermData.full_title, collection)
+
+ if (existingDefinition) {
+ return `${subTermData.text}`
+ }
+
+ return subTermData.text
+ })
+
// just a debug filter to lazily inspect the content of anything in a template
config.addFilter('postInspect', function (post) {
console.log(post);