hugo-theme-relearn/configuration/customization/designs/index.print.html
2025-01-02 21:37:37 +00:00

397 lines
29 KiB
HTML

<!DOCTYPE html>
<html lang="en" dir="ltr" itemscope itemtype="http://schema.org/Article" data-r-output-format="print">
<head>
<meta charset="utf-8">
<meta name="viewport" content="height=device-height, width=device-width, initial-scale=1.0, minimum-scale=1.0">
<meta name="generator" content="Hugo 0.140.2">
<meta name="generator" content="Relearn 7.3.0+dd0597ffa4b211ee2abd7edc2f198cb080f93e1a">
<meta name="description" content="Extending page designs">
<meta name="author" content="Sören Weber">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="https://mcshelby.github.io/hugo-theme-relearn/images/hero.png">
<meta name="twitter:title" content="Page Designs :: Hugo Relearn Theme">
<meta name="twitter:description" content="Extending page designs">
<meta property="og:url" content="https://mcshelby.github.io/hugo-theme-relearn/configuration/customization/designs/index.html">
<meta property="og:site_name" content="Hugo Relearn Theme">
<meta property="og:title" content="Page Designs :: Hugo Relearn Theme">
<meta property="og:description" content="Extending page designs">
<meta property="og:locale" content="en">
<meta property="og:type" content="article">
<meta property="article:section" content="Configuration">
<meta property="og:image" content="https://mcshelby.github.io/hugo-theme-relearn/images/hero.png">
<meta itemprop="name" content="Page Designs :: Hugo Relearn Theme">
<meta itemprop="description" content="Extending page designs">
<meta itemprop="wordCount" content="767">
<meta itemprop="image" content="https://mcshelby.github.io/hugo-theme-relearn/images/hero.png">
<meta itemprop="keywords" content="Explanation,Howto">
<title>Page Designs :: Hugo Relearn Theme</title>
<link href="https://mcshelby.github.io/hugo-theme-relearn/configuration/customization/designs/index.html" rel="alternate" hreflang="x-default">
<link href="https://mcshelby.github.io/hugo-theme-relearn/configuration/customization/designs/index.html" rel="alternate" hreflang="en">
<link href="https://mcshelby.github.io/hugo-theme-relearn/pir/configuration/customization/designs/index.html" rel="alternate" hreflang="art-x-pir">
<link href="https://mcshelby.github.io/hugo-theme-relearn/configuration/customization/designs/index.html" rel="canonical" type="text/html" title="Page Designs :: Hugo Relearn Theme">
<link href="/hugo-theme-relearn/configuration/customization/designs/index.xml" rel="alternate" type="application/rss+xml" title="Page Designs :: Hugo Relearn Theme">
<link href="/hugo-theme-relearn/images/logo.svg?1735853843" rel="icon" type="image/svg+xml">
<link href="/hugo-theme-relearn/css/fontawesome-all.min.css?1735853843" rel="stylesheet" media="print" onload="this.media='all';this.onload=null;"><noscript><link href="/hugo-theme-relearn/css/fontawesome-all.min.css?1735853843" rel="stylesheet"></noscript>
<link href="/hugo-theme-relearn/css/auto-complete.css?1735853843" rel="stylesheet" media="print" onload="this.media='all';this.onload=null;"><noscript><link href="/hugo-theme-relearn/css/auto-complete.css?1735853843" rel="stylesheet"></noscript>
<link href="/hugo-theme-relearn/css/perfect-scrollbar.min.css?1735853843" rel="stylesheet">
<link href="/hugo-theme-relearn/css/theme.min.css?1735853843" rel="stylesheet">
<link href="/hugo-theme-relearn/css/format-print.min.css?1735853843" rel="stylesheet" id="R-format-style">
<script>
window.relearn = window.relearn || {};
window.relearn.relBasePath='..\/..\/..';
window.relearn.relBaseUri='..\/..\/..\/..';
window.relearn.absBaseUri='https:\/\/mcshelby.github.io\/hugo-theme-relearn';
window.relearn.min = `.min`;
window.relearn.disableAnchorCopy=false;
window.relearn.disableAnchorScrolling=false;
// variant stuff
window.relearn.themevariants = [ 'relearn-auto', 'relearn-light', 'relearn-dark', 'relearn-bright', 'zen-auto', 'zen-light', 'zen-dark', 'retro-auto', 'neon', 'learn', 'blue', 'green', 'red' ];
window.relearn.customvariantname = "my-custom-variant";
window.relearn.changeVariant = function(variant) {
var oldVariant = document.documentElement.dataset.rThemeVariant;
window.localStorage.setItem(window.relearn.absBaseUri + "/variant", variant);
document.documentElement.dataset.rThemeVariant = variant;
if (oldVariant != variant) {
document.dispatchEvent( new CustomEvent('themeVariantLoaded', { detail: { variant, oldVariant } }) );
}
}
window.relearn.markVariant = function() {
var variant = window.localStorage.getItem(window.relearn.absBaseUri + "/variant");
var select = document.querySelector("#R-select-variant");
if (select) {
select.value = variant;
}
}
window.relearn.initVariant = function() {
var variant = window.localStorage.getItem(window.relearn.absBaseUri + "/variant") ?? "";
if( variant == window.relearn.customvariantname ){
}else if( !variant || !window.relearn.themevariants.includes(variant) ){
variant = window.relearn.themevariants[0];
window.localStorage.setItem(window.relearn.absBaseUri + "/variant", variant);
}
document.documentElement.dataset.rThemeVariant = variant;
}
window.relearn.initVariant();
window.relearn.markVariant();
// translations
window.T_Copy_to_clipboard = `Copy to clipboard`;
window.T_Copied_to_clipboard = `Copied to clipboard!`;
window.T_Copy_link_to_clipboard = `Copy link to clipboard`;
window.T_Link_copied_to_clipboard = `Copied link to clipboard!`;
window.T_Reset_view = `Reset view`;
window.T_View_reset = `View reset!`;
window.T_No_results_found = `No results found for "{0}"`;
window.T_N_results_found = `{1} results found for "{0}"`;
</script>
<script src="/hugo-theme-relearn/js/variant.js?1735853843"></script>
<style>
#R-body img.bg-white {
background-color: white;
}
</style>
</head>
<body class="mobile-support print disableInlineCopyToClipboard" data-url="/hugo-theme-relearn/configuration/customization/designs/index.html">
<div id="R-body" class="default-animation">
<div id="R-body-overlay"></div>
<nav id="R-topbar">
<div class="topbar-wrapper">
<div class="topbar-sidebar-divider"></div>
<div class="topbar-area topbar-area-start" data-area="start">
<div class="topbar-button topbar-button-sidebar" data-content-empty="disable" data-width-s="show" data-width-m="hide" data-width-l="hide"><button class="topbar-control" onclick="toggleNav()" type="button" title="Menu (CTRL&#43;ALT&#43;n)"><i class="fa-fw fas fa-bars"></i></button>
</div>
<div class="topbar-button topbar-button-toc" data-content-empty="hide" data-width-s="show" data-width-m="show" data-width-l="show"><button class="topbar-control" onclick="toggleTopbarFlyout(this)" type="button" title="Table of Contents (CTRL&#43;ALT&#43;t)"><i class="fa-fw fas fa-list-alt"></i></button>
<div class="topbar-content">
<div class="topbar-content-wrapper">
<nav class="TableOfContents">
<ul>
<li><a href="#using-a-page-design">Using a Page Design</a></li>
<li><a href="#creating-a-page-design">Creating a Page Design</a></li>
<li><a href="#partials">Partials</a>
<ul>
<li><a href="#for-any-output-format">For any Output Format</a></li>
<li><a href="#for-html-output-formats">For HTML Output Formats</a></li>
</ul>
</li>
<li><a href="#migration-to-relearn-7-or-higher">Migration to Relearn 7 or higher</a></li>
</ul>
</nav>
</div>
</div>
</div>
</div>
<ol class="topbar-breadcrumbs breadcrumbs highlightable" itemscope itemtype="http://schema.org/BreadcrumbList"><li
itemscope itemtype="https://schema.org/ListItem" itemprop="itemListElement"><a itemprop="item" href="/hugo-theme-relearn/configuration/index.html"><span itemprop="name">Configuration</span></a><meta itemprop="position" content="1">&nbsp;>&nbsp;</li><li
itemscope itemtype="https://schema.org/ListItem" itemprop="itemListElement"><a itemprop="item" href="/hugo-theme-relearn/configuration/customization/index.html"><span itemprop="name">Customization</span></a><meta itemprop="position" content="2">&nbsp;>&nbsp;</li><li
itemscope itemtype="https://schema.org/ListItem" itemprop="itemListElement"><span itemprop="name">Page Designs</span><meta itemprop="position" content="3"></li>
</ol>
<div class="topbar-area topbar-area-end" data-area="end">
<div class="topbar-button topbar-button-edit" data-content-empty="disable" data-width-s="area-more" data-width-m="show" data-width-l="show"><a class="topbar-control" href="https://github.com/McShelby/hugo-theme-relearn/edit/main/exampleSite/content/configuration/customization/designs/index.en.md" target="_self" title="Edit (CTRL&#43;ALT&#43;w)"><i class="fa-fw fas fa-pen"></i></a>
</div>
<div class="topbar-button topbar-button-print" data-content-empty="disable" data-width-s="area-more" data-width-m="show" data-width-l="show"><a class="topbar-control" href="/hugo-theme-relearn/configuration/customization/designs/index.print.html" title="Print whole chapter (CTRL&#43;ALT&#43;p)"><i class="fa-fw fas fa-print"></i></a>
</div>
<div class="topbar-button topbar-button-prev" data-content-empty="disable" data-width-s="show" data-width-m="show" data-width-l="show"><a class="topbar-control" href="/hugo-theme-relearn/configuration/customization/topbar/index.html" title="Topbar (🡐)"><i class="fa-fw fas fa-chevron-left"></i></a>
</div>
<div class="topbar-button topbar-button-next" data-content-empty="disable" data-width-s="show" data-width-m="show" data-width-l="show"><a class="topbar-control" href="/hugo-theme-relearn/configuration/customization/outputformats/index.html" title="Output Formats (🡒)"><i class="fa-fw fas fa-chevron-right"></i></a>
</div>
<div class="topbar-button topbar-button-more" data-content-empty="hide" data-width-s="show" data-width-m="show" data-width-l="show"><button class="topbar-control" onclick="toggleTopbarFlyout(this)" type="button" title="More"><i class="fa-fw fas fa-ellipsis-v"></i></button>
<div class="topbar-content">
<div class="topbar-content-wrapper">
<div class="topbar-area topbar-area-more" data-area="more">
</div>
</div>
</div>
</div>
</div>
</div>
</nav>
<div id="R-main-overlay"></div>
<main id="R-body-inner" class="highlightable configuration" tabindex="-1">
<div class="flex-block-wrapper">
<article class="default">
<header class="headline">
</header>
<h1 id="page-designs">Page Designs</h1>
<p>Page designs are used to provide different layouts for a given output format. If you instead want to <a href="/hugo-theme-relearn/configuration/customization/outputformats/index.html">provide a new output format</a>, the theme got you covered as well.</p>
<p>A page is displayed by exactly one page design <em>for each output format</em>, is represented by <a href="https://gohugo.io/content-management/front-matter/#type" rel="external" target="_self">Hugo&rsquo;s reserved <code>type</code> front matter</a> and uses <a href="https://gohugo.io/templates/types/#content-view" rel="external" target="_self">Hugo&rsquo;s content view mechanism</a>.</p>
<p>A page design usually consists of</p>
<ul>
<li><a href="https://gohugo.io/templates/types/#content-view" rel="external" target="_self">one or more content view files</a>: depending on the output format taken from <a href="/hugo-theme-relearn/configuration/customization/designs/index.html#partials">the list below</a></li>
<li><a href="https://gohugo.io/content-management/archetypes/" rel="external" target="_self">an optional archetype file</a>: a template for creating new Markdown files with the correct setting for the <code>type</code> front matter and any furhter parameter</li>
<li>optional CSS styles</li>
</ul>
<details open class=" box cstyle notices warning">
<summary class="box-label" tabindex="-1">
<i class="fa-fw fas fa-exclamation-triangle"></i>
Warning
</summary>
<div class="box-content">
<p>Don&rsquo;t use Hugo&rsquo;s reserved <code>type</code> option in your modifications for other functionality!</p>
</div>
</details>
<h2 id="using-a-page-design">Using a Page Design</h2>
<p>Regardless of shipped or custom page designs, you are <a href="/hugo-theme-relearn/authoring/frontmatter/designs/index.html">using them in the same way</a>. Either by manually setting the <code>type</code> front matter to the value of the page design or by using an archetype during creation of a new page.</p>
<p>If no <code>type</code> is set in your front matter or the page design doesn&rsquo;t exist for a given output format, the page is treated as if <code>type='default'</code> was set.</p>
<p>The Relearn theme ships with the page designs <code>home</code>, <code>chapter</code>, and <code>default</code> for the HTML output format.</p>
<p>The shipped <code>print</code> and <code>markdown</code> output formats only display using the <code>default</code> page design.</p>
<h2 id="creating-a-page-design">Creating a Page Design</h2>
<p>Suppose you are writing a documentation site for some software. Each time a new release is created, you are adding a new releasenotes page to your site. Those pages should contain a common disclaimer at the top. You neither want to copy the text into each new file nor want you to use a shortcode but create a page design called <code>releasenotes</code>.</p>
<ol>
<li>
<p>Choose a name (here, <code>releasenotes</code>)</p>
</li>
<li>
<p>Create a content view file at <code>layouts/releasenotes/views/article.html</code></p>
<div class="tab-panel" data-tab-group="1a2f72896503d6a50fe8fd66f8a745d0">
<div class="tab-nav">
<div class="tab-nav-title">&#8203;</div>
<button
data-tab-item="layoutsreleasenotesviewsarticlehtml"
class="tab-nav-button tab-panel-style cstyle initial active" tabindex="-1"
onclick="switchTab('1a2f72896503d6a50fe8fd66f8a745d0','layoutsreleasenotesviewsarticlehtml')"
>
<span class="tab-nav-text">layouts/releasenotes/views/article.html</span>
</button>
</div>
<div class="tab-content-container">
<div
data-tab-item="layoutsreleasenotesviewsarticlehtml"
class="tab-content tab-panel-style cstyle initial active">
<div class="tab-content-text">
<div class="highlight wrap-code" hl_Lines="6-8"><pre tabindex="0" class="chroma"><code class="language-html" data-lang="html"><span class="line"><span class="cl"><span class="p">&lt;</span><span class="nt">article</span> <span class="na">class</span><span class="o">=</span><span class="s">&#34;releasenotes&#34;</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl"> <span class="p">&lt;</span><span class="nt">header</span> <span class="na">class</span><span class="o">=</span><span class="s">&#34;headline&#34;</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl"> {{partial &#34;content-header.html&#34; .}}
</span></span><span class="line"><span class="cl"> <span class="p">&lt;/</span><span class="nt">header</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl"> {{partial &#34;heading-pre.html&#34; .}}{{partial &#34;heading.html&#34; .}}{{partial &#34;heading-post.html&#34; .}}
</span></span><span class="line hl"><span class="cl"> <span class="p">&lt;</span><span class="nt">p</span> <span class="na">class</span><span class="o">=</span><span class="s">&#34;disclaimer&#34;</span><span class="p">&gt;</span>
</span></span><span class="line hl"><span class="cl"> This software release comes without any warranty!
</span></span><span class="line hl"><span class="cl"> <span class="p">&lt;/</span><span class="nt">p</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl"> {{partial &#34;article-content.html&#34; .}}
</span></span><span class="line"><span class="cl"> <span class="p">&lt;</span><span class="nt">footer</span> <span class="na">class</span><span class="o">=</span><span class="s">&#34;footline&#34;</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl"> {{partial &#34;content-footer.html&#34; .}}
</span></span><span class="line"><span class="cl"> <span class="p">&lt;/</span><span class="nt">footer</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl"><span class="p">&lt;/</span><span class="nt">article</span><span class="p">&gt;</span></span></span></code></pre></div>
</div>
</div>
</div>
</div><p>The marked lines are your customizations, the rest of the file was copied over from the default implementation of <a href="https://github.com/McShelby/hugo-theme-relearn/blob/main/layouts/_default/views/article.html" rel="external" target="_self"><code>layouts/_default/views/article.html</code></a></p>
<p>In this file, you can customize the page structure as needed. For HTML based output formats, typically you&rsquo;ll want to:</p>
<ul>
<li>Set a <code>class</code> at the <code>article</code> element for custom CSS styles</li>
<li>Call <code>{{ partial &quot;article-content.html&quot; . }}</code> to show your page content</li>
</ul>
</li>
<li>
<p><em>Optional</em>: create an archetype file at <code>archetypes/releasenotes.md</code></p>
<div class="tab-panel" data-tab-group="c90a8eae803af925ad97ad8162d90547">
<div class="tab-nav">
<div class="tab-nav-title">&#8203;</div>
<button
data-tab-item="archetypesreleasenotesmd"
class="tab-nav-button tab-panel-style cstyle initial active" tabindex="-1"
onclick="switchTab('c90a8eae803af925ad97ad8162d90547','archetypesreleasenotesmd')"
>
<span class="tab-nav-text">archetypes/releasenotes.md</span>
</button>
</div>
<div class="tab-content-container">
<div
data-tab-item="archetypesreleasenotesmd"
class="tab-content tab-panel-style cstyle initial active">
<div class="tab-content-text">
<div class="highlight wrap-code"><pre tabindex="0" class="chroma"><code class="language-toml" data-lang="toml"><span class="line"><span class="cl"><span class="err">+++</span>
</span></span><span class="line"><span class="cl"><span class="nx">title</span> <span class="p">=</span> <span class="s2">&#34;{{ replace .Name &#34;</span><span class="nx">-</span><span class="s2">&#34; &#34;</span> <span class="s2">&#34; | title }}&#34;</span>
</span></span><span class="line"><span class="cl"><span class="nx">type</span> <span class="p">=</span> <span class="s2">&#34;releasenotes&#34;</span>
</span></span><span class="line"><span class="cl"><span class="err">+++</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="nx">This</span> <span class="nx">is</span> <span class="nx">a</span> <span class="nx">new</span> <span class="nx">releasenote</span><span class="p">.</span></span></span></code></pre></div>
</div>
</div>
</div>
</div></li>
<li>
<p><em>Optional</em>: add CSS in the file <code>layouts/partials/custom-header.html</code></p>
<div class="tab-panel" data-tab-group="34cda3880b4d03becd72307dcc73d70f">
<div class="tab-nav">
<div class="tab-nav-title">&#8203;</div>
<button
data-tab-item="layoutspartialscustom-headerhtml"
class="tab-nav-button tab-panel-style cstyle initial active" tabindex="-1"
onclick="switchTab('34cda3880b4d03becd72307dcc73d70f','layoutspartialscustom-headerhtml')"
>
<span class="tab-nav-text">layouts/partials/custom-header.html</span>
</button>
</div>
<div class="tab-content-container">
<div
data-tab-item="layoutspartialscustom-headerhtml"
class="tab-content tab-panel-style cstyle initial active">
<div class="tab-content-text">
<div class="highlight wrap-code"><pre tabindex="0" class="chroma"><code class="language-html" data-lang="html"><span class="line"><span class="cl"><span class="p">&lt;</span><span class="nt">style</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl"><span class="p">.</span><span class="nc">releasenotes</span> <span class="p">.</span><span class="nc">disclaimer</span> <span class="p">{</span>
</span></span><span class="line"><span class="cl"> <span class="k">background-color</span><span class="p">:</span> <span class="kc">pink</span><span class="p">;</span>
</span></span><span class="line"><span class="cl"> <span class="k">font-size</span><span class="p">:</span> <span class="mi">72</span><span class="kt">rem</span><span class="p">;</span>
</span></span><span class="line"><span class="cl"><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">&lt;/</span><span class="nt">style</span><span class="p">&gt;</span></span></span></code></pre></div>
</div>
</div>
</div>
</div></li>
</ol>
<h2 id="partials">Partials</h2>
<h3 id="for-any-output-format">For any Output Format</h3>
<p>These files are common for all output formats.</p>
<ul>
<li><code>layouts/&lt;DESIGN&gt;/baseof.&lt;FORMAT&gt;</code>: <em>Optional</em>: The top most file you could provide to completely redefine the whole design. No further partials will be called if you don&rsquo; call them yourself</li>
</ul>
<h3 id="for-html-output-formats">For HTML Output Formats</h3>
<p>If you want to keep the general HTML framework and only change specific parts, you can provide these files for the page desingn for the HTML output format independently of one another.</p>
<ul>
<li><code>layouts/&lt;DESIGN&gt;/views/article.html</code>: <em>Optional</em>: Controls how one page&rsquo;s content and title are displayed</li>
<li><code>layouts/&lt;DESIGN&gt;/views/body.html</code>: <em>Optional</em>: Determines what to contain in the content area (for example a single page, a list of pages, a tree of sub pages)</li>
<li><code>layouts/&lt;DESIGN&gt;/views/menu.html</code>: <em>Optional</em>: Defines the sidebar menu layout</li>
</ul>
<p>For a real-world example, check out the <code>changelog</code> page design implementation</p>
<ul>
<li><a href="https://github.com/McShelby/hugo-theme-relearn/blob/main/exampleSite/layouts/changelog/views/article.html" rel="external" target="_self"><code>exampleSite/layouts/changelog/views/article.html</code></a></li>
</ul>
<h2 id="migration-to-relearn-7-or-higher">Migration to Relearn 7 or higher</h2>
<p>Previous to Relearn 7, page designs were defined by a proprietary solution unique to the theme. Depending on your modifications you may have to change some or all of the following to migrate to Relearn 7&rsquo;s page designs.</p>
<ul>
<li>
<p>In all your <code>*.md</code> files, replace the <code>archetype</code> front matter with <code>type</code>; the value stays the same; don&rsquo;t forget your archetype files if you have some</p>
</li>
<li>
<p>Move your files <code>layouts/partials/archetypes/&lt;DESIGN&gt;/article.html</code> to <code>layouts/&lt;DESIGN&gt;/views/article.html</code></p>
<p>The files will most likely require further modifications as they now receive the page as it context (dot <code>.</code>) instead of the <code>.page</code> and <code>.content</code> parameter.</p>
<p><strong>Old</strong>:</p>
<div class="tab-panel" data-tab-group="0ede018f280815ba42615abe61df9ee5">
<div class="tab-nav">
<div class="tab-nav-title">&#8203;</div>
<button
data-tab-item="layoutspartialsarchetypesltdesigngtarticlehtml"
class="tab-nav-button tab-panel-style cstyle initial active" tabindex="-1"
onclick="switchTab('0ede018f280815ba42615abe61df9ee5','layoutspartialsarchetypesltdesigngtarticlehtml')"
>
<span class="tab-nav-text">layouts/partials/archetypes/&lt;DESIGN&gt;/article.html</span>
</button>
</div>
<div class="tab-content-container">
<div
data-tab-item="layoutspartialsarchetypesltdesigngtarticlehtml"
class="tab-content tab-panel-style cstyle initial active">
<div class="tab-content-text">
<div class="highlight wrap-code" hl_Lines="1-3 10 16"><pre tabindex="0" class="chroma"><code class="language-html" data-lang="html"><span class="line hl"><span class="cl">{{- $page := .page }}
</span></span><span class="line hl"><span class="cl">{{- $content := .content }}
</span></span><span class="line hl"><span class="cl">{{- with $page }}
</span></span><span class="line"><span class="cl"><span class="p">&lt;</span><span class="nt">article</span> <span class="na">class</span><span class="o">=</span><span class="s">&#34;default&#34;</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl"> <span class="p">&lt;</span><span class="nt">header</span> <span class="na">class</span><span class="o">=</span><span class="s">&#34;headline&#34;</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl"> {{- partial &#34;content-header.html&#34; . }}
</span></span><span class="line"><span class="cl"> <span class="p">&lt;/</span><span class="nt">header</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl"> {{partial &#34;heading-pre.html&#34; .}}{{partial &#34;heading.html&#34; .}}{{partial &#34;heading-post.html&#34; .}}
</span></span><span class="line"><span class="cl">
</span></span><span class="line hl"><span class="cl"> {{ $content | safeHTML }}
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"> <span class="p">&lt;</span><span class="nt">footer</span> <span class="na">class</span><span class="o">=</span><span class="s">&#34;footline&#34;</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl"> {{- partial &#34;content-footer.html&#34; . }}
</span></span><span class="line"><span class="cl"> <span class="p">&lt;/</span><span class="nt">footer</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl"><span class="p">&lt;/</span><span class="nt">article</span><span class="p">&gt;</span>
</span></span><span class="line hl"><span class="cl">{{- end }}</span></span></code></pre></div>
</div>
</div>
</div>
</div><p><strong>New</strong>:</p>
<div class="tab-panel" data-tab-group="973ac285d778471b711063531fa1d9db">
<div class="tab-nav">
<div class="tab-nav-title">&#8203;</div>
<button
data-tab-item="layoutsltdesigngtviewsarticlehtml"
class="tab-nav-button tab-panel-style cstyle initial active" tabindex="-1"
onclick="switchTab('973ac285d778471b711063531fa1d9db','layoutsltdesigngtviewsarticlehtml')"
>
<span class="tab-nav-text">layouts/&lt;DESIGN&gt;/views/article.html</span>
</button>
</div>
<div class="tab-content-container">
<div
data-tab-item="layoutsltdesigngtviewsarticlehtml"
class="tab-content tab-panel-style cstyle initial active">
<div class="tab-content-text">
<div class="highlight wrap-code" hl_Lines="7"><pre tabindex="0" class="chroma"><code class="language-html" data-lang="html"><span class="line"><span class="cl"><span class="p">&lt;</span><span class="nt">article</span> <span class="na">class</span><span class="o">=</span><span class="s">&#34;default&#34;</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl"> <span class="p">&lt;</span><span class="nt">header</span> <span class="na">class</span><span class="o">=</span><span class="s">&#34;headline&#34;</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl"> {{- partial &#34;content-header.html&#34; . }}
</span></span><span class="line"><span class="cl"> <span class="p">&lt;/</span><span class="nt">header</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl"> {{partial &#34;heading-pre.html&#34; .}}{{partial &#34;heading.html&#34; .}}{{partial &#34;heading-post.html&#34; .}}
</span></span><span class="line"><span class="cl">
</span></span><span class="line hl"><span class="cl"> {{ partial &#34;article-content.html&#34; . }}
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"> <span class="p">&lt;</span><span class="nt">footer</span> <span class="na">class</span><span class="o">=</span><span class="s">&#34;footline&#34;</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl"> {{- partial &#34;content-footer.html&#34; . }}
</span></span><span class="line"><span class="cl"> <span class="p">&lt;/</span><span class="nt">footer</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl"><span class="p">&lt;/</span><span class="nt">article</span><span class="p">&gt;</span></span></span></code></pre></div>
</div>
</div>
</div>
</div></li>
</ul>
<footer class="footline">
<div class="R-taxonomy taxonomy-categories cstyle" title="Categories" style="--VARIABLE-TAGS-BG-color: var(--INTERNAL-TAG-BG-color);">
<i class="fa-fw fas fa-layer-group"></i>
<ul>
<li><a class="term-link" href="/hugo-theme-relearn/categories/explanation/index.html">Explanation</a></li>
<li><a class="term-link" href="/hugo-theme-relearn/categories/howto/index.html">Howto</a></li>
</ul>
</div>
</footer>
</article>
</div>
</main>
</div>
<script src="/hugo-theme-relearn/js/clipboard.min.js?1735853843" defer></script>
<script src="/hugo-theme-relearn/js/perfect-scrollbar.min.js?1735853843" defer></script>
<script src="/hugo-theme-relearn/js/theme.js?1735853843" defer></script>
</body>
</html>