diff --git a/_data/pages/learn.yml b/_data/pages/learn.yml index 206f8c7551..6f07c8f6be 100644 --- a/_data/pages/learn.yml +++ b/_data/pages/learn.yml @@ -1,30 +1,7 @@ id: /learn/ title: Learn template: landing +hidden_page: true breadcrumbs: true page_last_updated: false -blocks: - - type: hero - variant: learn - title: "Learn " - description: An educational guide to Starknet, how it works and how to start using it. - - type: group - blocks: - - size: large - color: orange - variant: image_icon_link_card - orientation: left - withIllustration: false - title: Starknet 101 - icon: /assets/hero-1-.svg - type: image_icon_link_card - link: - custom_internal_link: /learn/ - custom_title: Learn - description: Starknet is a layer-2 network that uses math and cryptography to - securely scale Ethereum. It is known as a Validity-rollup (or - ZK-rollup); it ”rolls” many transactions up to send to Ethereum as a - single transaction. Read on to learn the fundamentals. - columns: "4" - - type: markdown - body: Learn! +blocks: [] diff --git a/workspaces/cms-config/src/collections/pages.ts b/workspaces/cms-config/src/collections/pages.ts index 3e555db414..7ff9fe67bc 100644 --- a/workspaces/cms-config/src/collections/pages.ts +++ b/workspaces/cms-config/src/collections/pages.ts @@ -85,6 +85,12 @@ export const pagesCollectionConfig = { value_field: "id", display_fields: ["title"], }, + { + name: "hidden_page", + label: "Omit page from navigation", + widget: "boolean", + default: false, + }, { name: "breadcrumbs", label: "Show breadcrumbs", diff --git a/workspaces/cms-data/src/pages.ts b/workspaces/cms-data/src/pages.ts index 2dd60c14a1..9119258e3f 100644 --- a/workspaces/cms-data/src/pages.ts +++ b/workspaces/cms-data/src/pages.ts @@ -221,6 +221,7 @@ export interface Page extends Meta { readonly toc?: boolean; readonly template: "landing" | "content" | "narrow content"; readonly tocCustomTitle?: string; + readonly hidden_page: boolean; readonly breadcrumbs: boolean; readonly breadcrumbs_data?: readonly Omit<Page, "blocks">[]; readonly pageLastUpdated: boolean; diff --git a/workspaces/website/src/pages/(components)/CMSPage.tsx b/workspaces/website/src/pages/(components)/CMSPage.tsx index 48635175f4..ce156a1250 100644 --- a/workspaces/website/src/pages/(components)/CMSPage.tsx +++ b/workspaces/website/src/pages/(components)/CMSPage.tsx @@ -14,6 +14,7 @@ import { } from "@chakra-ui/react"; import '@ui/CodeHighlight/code-highlight-init' import { blocksToTOC } from "./TableOfContents/blocksToTOC"; +import NotFound from "@ui/NotFound/NotFound"; type CMSPageProps = { data: PageType; @@ -28,6 +29,11 @@ export default function CMSPage({ locale, }: CMSPageProps) { const date = data?.gitlog?.date; + + if (data?.hidden_page) { + return <NotFound type="page" />; + } + return ( <Box> <PageLayout