Portfolio standard · version 1.0
How the brands show that they belong to Aprende.
This template is the canonical way for every active brand in the portfolio to state its affiliation. It gives users transparency, keeps company facts consistent and gives search engines a clear link between the entities – while each brand keeps its own voice and design.
01 · Required
An ownership line on every page
Add one short, visible line to the global footer: “[Brand] is part of Aprende AS”. The link must be plain, crawlable HTML pointing to the canonical Aprende address. Adapt colour and typography to the brand, but keep the meaning.
<p>
[Brand] is part of
<a href="https://www.aprendeas.no">Aprende AS</a>.
</p>02 · Required
A real About page – not just a logo
The About page should first explain what the brand solves and why it exists, in the brand’s own voice. Then comes the section “Part of Aprende AS”, with verifiable company facts, what the portfolio shares, and relevant sister brands. The cards come from the API and are rendered on the server or at build time.
Standard company description: “Aprende AS is a Norwegian portfolio company from Trondheim that builds and runs digital products in learning, certification, marketplaces and e-commerce.”
// Run at build time or with daily revalidation. Keep a checked-in fallback.
const res = await fetch('https://www.aprendeas.no/api/brands');
const { company, brands, affiliation } = await res.json();
const sisterBrands = brands.filter((brand) => brand.id !== SELF_BRAND_ID);03 · Required
Link the entities in structured data
The brand’s Organization schema should point to Aprende with parentOrganization. Use the same name, organisation number and canonical URL as the API. Sister brands must not be listed as sub-organisations of each other.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "[Brand]",
"url": "https://[brand.com]",
"parentOrganization": {
"@type": "Organization",
"name": "Aprende AS",
"legalName": "Aprende AS",
"url": "https://www.aprendeas.no",
"identifier": "935261678",
"address": {
"@type": "PostalAddress",
"addressLocality": "Trondheim",
"addressCountry": "NO"
}
}
}
</script>04 · Required
One source, with a robust fallback
/api/brands is the source for product names, domains, descriptions, logos and suggested anchor texts. Fetch the data at build time or with daily revalidation, and keep a checked-in fallback so an About page is never empty if the API is down. Don’t fetch the portfolio in the browser only; the links must be in the first HTML response.
Quality gate before publishing
Checklist
- 01The ownership line is in the global footer and links to aprendeas.no.
- 02The About page has a unique introduction written for the brand – not just the standard text copied in.
- 03Company name, organisation number and Trondheim come from the portfolio API or a verified fallback.
- 04Sister brands are rendered as crawlable HTML, and the brand itself is filtered out.
- 05The Organization schema has parentOrganization with the same canonical Aprende URL.
- 06Aprende’s portfolio page links back to the brand’s canonical domain.