diff --git a/components/content/src/library.rs b/components/content/src/library.rs index 990de93eac..3d3b433212 100644 --- a/components/content/src/library.rs +++ b/components/content/src/library.rs @@ -99,6 +99,9 @@ impl Library { .get_mut(&self.taxo_name_to_slug[taxa_name]) .expect("taxa not found"); + if !page.meta.render { + continue; + } if !taxa_def.contains_key(term) { taxa_def.insert(term.to_string(), Vec::new()); } @@ -159,9 +162,10 @@ impl Library { .expect("taxo should exist"); let mut taxo_found = TaxonomyFound::new(taxa_slug.to_string(), lang, taxo_config); for (term, page_path) in terms_pages { - taxo_found - .terms - .insert(term, page_path.iter().map(|p| &self.pages[p]).collect()); + taxo_found.terms.insert( + term, + page_path.iter().map(|p| &self.pages[p]).collect(), + ); } taxonomies.push(Taxonomy::new(taxo_found, config)); @@ -295,9 +299,6 @@ impl Library { // Then once we took care of the sections, we find the pages of each section for (path, page) in self.pages.iter_mut() { - if !page.meta.render { - continue; - } let parent_filename = &index_filename_by_lang[&page.lang]; add_translation(&page.file.canonical, path); let mut parent_section_path = page.file.parent.join(parent_filename); diff --git a/components/content/src/ser.rs b/components/content/src/ser.rs index 919d0d1bb6..bdc5ff401c 100644 --- a/components/content/src/ser.rs +++ b/components/content/src/ser.rs @@ -64,6 +64,7 @@ pub struct SerializingPage<'a> { word_count: Option, reading_time: Option, assets: &'a [String], + render: bool, draft: bool, lang: &'a str, lower: Option>>, @@ -128,6 +129,7 @@ impl<'a> SerializingPage<'a> { word_count: page.word_count, reading_time: page.reading_time, assets: &page.serialized_assets, + render: page.meta.render, draft: page.meta.draft, lang: &page.lang, lower, @@ -144,6 +146,7 @@ pub struct SerializingSection<'a> { colocated_path: &'a Option, content: &'a str, permalink: &'a str, + render: bool, draft: bool, ancestors: &'a [String], title: &'a Option, @@ -207,6 +210,7 @@ impl<'a> SerializingSection<'a> { relative_path: §ion.file.relative, colocated_path: §ion.file.colocated_path, ancestors: §ion.ancestors, + render: section.meta.render, draft: section.meta.draft, content: §ion.content, permalink: §ion.permalink, diff --git a/docs/content/documentation/templates/pages-sections.md b/docs/content/documentation/templates/pages-sections.md index 97f9559614..1d5f123cfc 100644 --- a/docs/content/documentation/templates/pages-sections.md +++ b/docs/content/documentation/templates/pages-sections.md @@ -23,6 +23,7 @@ updated: String?; slug: String; path: String; authors: Array; +render: Bool; draft: Bool; // the path, split on '/' components: Array; @@ -77,6 +78,8 @@ content: String; title: String?; description: String?; path: String; +render: Bool; +draft: Bool; // the path, split on '/' components: Array; permalink: String;