2024-10-13 14:26:50 +00:00
<!DOCTYPE html>
< html lang = "en" dir = "ltr" itemscope itemtype = "http://schema.org/Article" >
< head >
< meta charset = "utf-8" >
< meta name = "viewport" content = "height=device-height, width=device-width, initial-scale=1.0, minimum-scale=1.0" >
2024-10-24 17:57:32 +00:00
< meta name = "generator" content = "Hugo 0.136.5" >
2024-10-24 22:14:53 +00:00
< meta name = "generator" content = "Relearn 7.1.0" >
2024-10-13 14:26:50 +00:00
< meta name = "description" content = "How to make your generated HTML output stable" >
< 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 = "Stable Output :: Hugo Relearn Theme" >
< meta name = "twitter:description" content = "How to make your generated HTML output stable" >
< meta property = "og:url" content = "https://mcshelby.github.io/hugo-theme-relearn/configuration/sitemanagement/stableoutput/index.html" >
< meta property = "og:site_name" content = "Hugo Relearn Theme" >
< meta property = "og:title" content = "Stable Output :: Hugo Relearn Theme" >
< meta property = "og:description" content = "How to make your generated HTML output stable" >
< meta property = "og:locale" content = "en" >
< meta property = "og:type" content = "website" >
< meta property = "og:image" content = "https://mcshelby.github.io/hugo-theme-relearn/images/hero.png" >
< meta itemprop = "name" content = "Stable Output :: Hugo Relearn Theme" >
< meta itemprop = "description" content = "How to make your generated HTML output stable" >
< meta itemprop = "wordCount" content = "218" >
< meta itemprop = "image" content = "https://mcshelby.github.io/hugo-theme-relearn/images/hero.png" >
< meta itemprop = "keywords" content = "Howto,DisableAssetsBusting,DisableGeneratorVersion,DisableRandomIds" >
< title > Stable Output :: Hugo Relearn Theme< / title >
< link href = "https://mcshelby.github.io/hugo-theme-relearn/configuration/sitemanagement/stableoutput/index.html" rel = "alternate" hreflang = "x-default" >
< link href = "https://mcshelby.github.io/hugo-theme-relearn/configuration/sitemanagement/stableoutput/index.html" rel = "alternate" hreflang = "en" >
< link href = "https://mcshelby.github.io/hugo-theme-relearn/pir/configuration/sitemanagement/stableoutput/index.html" rel = "alternate" hreflang = "art-x-pir" >
< link href = "https://mcshelby.github.io/hugo-theme-relearn/configuration/sitemanagement/stableoutput/index.html" rel = "canonical" type = "text/html" title = "Stable Output :: Hugo Relearn Theme" >
< link href = "/hugo-theme-relearn/configuration/sitemanagement/stableoutput/index.xml" rel = "alternate" type = "application/rss+xml" title = "Stable Output :: Hugo Relearn Theme" >
2024-10-24 22:14:53 +00:00
< link href = "/hugo-theme-relearn/images/logo.svg?1729808080" rel = "icon" type = "image/svg+xml" >
< link href = "/hugo-theme-relearn/css/fontawesome-all.min.css?1729808080" rel = "stylesheet" media = "print" onload = "this.media='all';this.onload=null;" > < noscript > < link href = "/hugo-theme-relearn/css/fontawesome-all.min.css?1729808080" rel = "stylesheet" > < / noscript >
< link href = "/hugo-theme-relearn/css/nucleus.css?1729808080" rel = "stylesheet" >
< link href = "/hugo-theme-relearn/css/auto-complete.css?1729808080" rel = "stylesheet" media = "print" onload = "this.media='all';this.onload=null;" > < noscript > < link href = "/hugo-theme-relearn/css/auto-complete.css?1729808080" rel = "stylesheet" > < / noscript >
< link href = "/hugo-theme-relearn/css/perfect-scrollbar.min.css?1729808080" rel = "stylesheet" >
< link href = "/hugo-theme-relearn/css/fonts.css?1729808080" rel = "stylesheet" media = "print" onload = "this.media='all';this.onload=null;" > < noscript > < link href = "/hugo-theme-relearn/css/fonts.css?1729808080" rel = "stylesheet" > < / noscript >
< link href = "/hugo-theme-relearn/css/theme.css?1729808080" rel = "stylesheet" >
< link href = "/hugo-theme-relearn/css/theme-relearn-auto.css?1729808080" rel = "stylesheet" id = "R-variant-style" >
< link href = "/hugo-theme-relearn/css/chroma-relearn-auto.css?1729808080" rel = "stylesheet" id = "R-variant-chroma-style" >
< link href = "/hugo-theme-relearn/css/print.css?1729808080" rel = "stylesheet" media = "print" >
< link href = "/hugo-theme-relearn/css/format-print.css?1729808080" rel = "stylesheet" >
< script src = "/hugo-theme-relearn/js/variant.js?1729808080" > < / script >
2024-10-13 14:26:50 +00:00
< script >
window.relearn = window.relearn || {};
window.relearn.relBasePath='..\/..\/..';
window.relearn.relBaseUri='..\/..\/..\/..';
window.relearn.absBaseUri='https:\/\/mcshelby.github.io\/hugo-theme-relearn';
window.relearn.disableAnchorCopy=false;
window.relearn.disableAnchorScrolling=false;
// variant stuff
window.variants & & variants.init( [ 'relearn-auto', 'relearn-light', 'relearn-dark', 'relearn-bright', 'zen-auto', 'zen-light', 'zen-dark', 'retro-auto', 'neon', 'learn', 'blue', 'green', 'red' ] );
// 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 >
< style >
#R-body img.bg-white {
background-color: white;
}
< / style >
< / head >
< body class = "mobile-support print disableInlineCopyToClipboard" data-url = "/hugo-theme-relearn/configuration/sitemanagement/stableoutput/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+ALT+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+ALT+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 = "#disabling-the-generator-meta" > Disabling the Generator Meta< / a > < / li >
< li > < a href = "#disabling-ids-for-referenced-assets" > Disabling IDs for Referenced Assets< / a > < / li >
< li > < a href = "#disabling-ids-for-interactive-html-elements" > Disabling IDs for Interactive HTML Elements< / 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" > > < / li > < li
itemscope itemtype="https://schema.org/ListItem" itemprop="itemListElement">< a itemprop = "item" href = "/hugo-theme-relearn/configuration/sitemanagement/index.html" > < span itemprop = "name" > Site Management< / span > < / a > < meta itemprop = "position" content = "2" > > < / li > < li
itemscope itemtype="https://schema.org/ListItem" itemprop="itemListElement">< span itemprop = "name" > Stable Output< / 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/sitemanagement/stableoutput/_index.en.md" target = "_self" title = "Edit (CTRL+ALT+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/sitemanagement/stableoutput/index.print.html" title = "Print whole chapter (CTRL+ALT+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/sitemanagement/outputformats/index.html" title = "Available Output Formats (🡐)" > < 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/branding/index.html" title = "Branding (🡒)" > < 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 = "stable-output" > Stable Output< / h1 >
< h2 id = "disabling-the-generator-meta" > Disabling the Generator Meta< / h2 >
< p > < span class = "badge cstyle cyan badge-with-title" > < span class = "badge-title" > < i class = "fa-fw fas fa-gears" > < / i > < / span > < span class = "badge-content" > Option< / span > < / span > The theme adds a meta tag with its version number to each page.< / p >
< p > This isn’ t a security risk and helps us support you better.< / p >
< p > To turn this off, set < code > disableGeneratorVersion=true< / code > .< / p >
< div class = "tab-panel" data-tab-group = "config-code" >
< div class = "tab-nav" >
< div class = "tab-nav-title" > hugo.< / div >
< button
data-tab-item="toml"
class="tab-nav-button tab-panel-style cstyle initial active" tabindex="-1"
onclick="switchTab('config-code','toml')"
>
< span class = "tab-nav-text" > toml< / span >
< / button >
< button
data-tab-item="yaml"
class="tab-nav-button tab-panel-style cstyle initial"
onclick="switchTab('config-code','yaml')"
>
< span class = "tab-nav-text" > yaml< / span >
< / button >
< button
data-tab-item="json"
class="tab-nav-button tab-panel-style cstyle initial"
onclick="switchTab('config-code','json')"
>
< span class = "tab-nav-text" > json< / span >
< / button >
< / div >
< div class = "tab-content-container" >
< div
data-tab-item="toml"
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 = "p" > [< / span > < span class = "nx" > params< / span > < span class = "p" > ]< / span >
< / span > < / span > < span class = "line" > < span class = "cl" > < span class = "nx" > disableGeneratorVersion< / span > < span class = "p" > =< / span > < span class = "kc" > true< / span > < / span > < / span > < / code > < / pre > < / div >
< / div >
< / div >
< div
data-tab-item="yaml"
class="tab-content tab-panel-style cstyle initial">
< div class = "tab-content-text" >
< div class = "highlight wrap-code" > < pre tabindex = "0" class = "chroma" > < code class = "language-yaml" data-lang = "yaml" > < span class = "line" > < span class = "cl" > < span class = "nt" > params< / span > < span class = "p" > :< / span > < span class = "w" >
< / span > < / span > < / span > < span class = "line" > < span class = "cl" > < span class = "w" > < / span > < span class = "nt" > disableGeneratorVersion< / span > < span class = "p" > :< / span > < span class = "w" > < / span > < span class = "kc" > true< / span > < / span > < / span > < / code > < / pre > < / div >
< / div >
< / div >
< div
data-tab-item="json"
class="tab-content tab-panel-style cstyle initial">
< div class = "tab-content-text" >
< div class = "highlight wrap-code" > < pre tabindex = "0" class = "chroma" > < code class = "language-json" data-lang = "json" > < span class = "line" > < span class = "cl" > < span class = "p" > {< / span >
< / span > < / span > < span class = "line" > < span class = "cl" > < span class = "nt" > " params" < / span > < span class = "p" > :< / span > < span class = "p" > {< / span >
< / span > < / span > < span class = "line" > < span class = "cl" > < span class = "nt" > " disableGeneratorVersion" < / span > < span class = "p" > :< / span > < span class = "kc" > true< / span >
< / span > < / span > < span class = "line" > < span class = "cl" > < span class = "p" > }< / span >
< / span > < / span > < span class = "line" > < span class = "cl" > < span class = "p" > }< / span > < / span > < / span > < / code > < / pre > < / div >
< / div >
< / div >
< / div >
< / div >
< p > If you also want to turn off < a href = "https://gohugo.io/getting-started/configuration/#disablehugogeneratorinject" rel = "external" target = "_self" > Hugo’ s version meta tag< / a > , use < code > disableHugoGeneratorInject=true< / code > .< / p >
< h2 id = "disabling-ids-for-referenced-assets" > Disabling IDs for Referenced Assets< / h2 >
< p > < span class = "badge cstyle cyan badge-with-title" > < span class = "badge-title" > < i class = "fa-fw fas fa-gears" > < / i > < / span > < span class = "badge-content" > Option< / span > < / span > The theme creates a unique ID for each build and adds it to each referenced asset’ s URL to make browsers not keep outdated cached assets.< / p >
< p > This is good for production sites but can be problematic during development. It makes comparing outputs difficult as each build has new IDs.< / p >
< p > To disable this, set < code > disableAssetsBusting=true< / code > .< / p >
< div class = "tab-panel" data-tab-group = "config-code" >
< div class = "tab-nav" >
< div class = "tab-nav-title" > hugo.< / div >
< button
data-tab-item="toml"
class="tab-nav-button tab-panel-style cstyle initial active" tabindex="-1"
onclick="switchTab('config-code','toml')"
>
< span class = "tab-nav-text" > toml< / span >
< / button >
< button
data-tab-item="yaml"
class="tab-nav-button tab-panel-style cstyle initial"
onclick="switchTab('config-code','yaml')"
>
< span class = "tab-nav-text" > yaml< / span >
< / button >
< button
data-tab-item="json"
class="tab-nav-button tab-panel-style cstyle initial"
onclick="switchTab('config-code','json')"
>
< span class = "tab-nav-text" > json< / span >
< / button >
< / div >
< div class = "tab-content-container" >
< div
data-tab-item="toml"
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 = "p" > [< / span > < span class = "nx" > params< / span > < span class = "p" > ]< / span >
< / span > < / span > < span class = "line" > < span class = "cl" > < span class = "nx" > disableAssetsBusting< / span > < span class = "p" > =< / span > < span class = "kc" > true< / span > < / span > < / span > < / code > < / pre > < / div >
< / div >
< / div >
< div
data-tab-item="yaml"
class="tab-content tab-panel-style cstyle initial">
< div class = "tab-content-text" >
< div class = "highlight wrap-code" > < pre tabindex = "0" class = "chroma" > < code class = "language-yaml" data-lang = "yaml" > < span class = "line" > < span class = "cl" > < span class = "nt" > params< / span > < span class = "p" > :< / span > < span class = "w" >
< / span > < / span > < / span > < span class = "line" > < span class = "cl" > < span class = "w" > < / span > < span class = "nt" > disableAssetsBusting< / span > < span class = "p" > :< / span > < span class = "w" > < / span > < span class = "kc" > true< / span > < / span > < / span > < / code > < / pre > < / div >
< / div >
< / div >
< div
data-tab-item="json"
class="tab-content tab-panel-style cstyle initial">
< div class = "tab-content-text" >
< div class = "highlight wrap-code" > < pre tabindex = "0" class = "chroma" > < code class = "language-json" data-lang = "json" > < span class = "line" > < span class = "cl" > < span class = "p" > {< / span >
< / span > < / span > < span class = "line" > < span class = "cl" > < span class = "nt" > " params" < / span > < span class = "p" > :< / span > < span class = "p" > {< / span >
< / span > < / span > < span class = "line" > < span class = "cl" > < span class = "nt" > " disableAssetsBusting" < / span > < span class = "p" > :< / span > < span class = "kc" > true< / span >
< / span > < / span > < span class = "line" > < span class = "cl" > < span class = "p" > }< / span >
< / span > < / span > < span class = "line" > < span class = "cl" > < span class = "p" > }< / span > < / span > < / span > < / code > < / pre > < / div >
< / div >
< / div >
< / div >
< / div >
< h2 id = "disabling-ids-for-interactive-html-elements" > Disabling IDs for Interactive HTML Elements< / h2 >
< p > < span class = "badge cstyle cyan badge-with-title" > < span class = "badge-title" > < i class = "fa-fw fas fa-gears" > < / i > < / span > < span class = "badge-content" > Option< / span > < / span > Features like expanders, callouts, and tabs use unique IDs to work. These IDs change with each build.< / p >
< p > This is necessary for the theme to work properly, but it can make comparing outputs between builds difficult.< / p >
< p > To turn this off, set < code > disableRandomIds=true< / code > . Note, that this will result in a non-functional site!.< / p >
< div class = "tab-panel" data-tab-group = "config-code" >
< div class = "tab-nav" >
< div class = "tab-nav-title" > hugo.< / div >
< button
data-tab-item="toml"
class="tab-nav-button tab-panel-style cstyle initial active" tabindex="-1"
onclick="switchTab('config-code','toml')"
>
< span class = "tab-nav-text" > toml< / span >
< / button >
< button
data-tab-item="yaml"
class="tab-nav-button tab-panel-style cstyle initial"
onclick="switchTab('config-code','yaml')"
>
< span class = "tab-nav-text" > yaml< / span >
< / button >
< button
data-tab-item="json"
class="tab-nav-button tab-panel-style cstyle initial"
onclick="switchTab('config-code','json')"
>
< span class = "tab-nav-text" > json< / span >
< / button >
< / div >
< div class = "tab-content-container" >
< div
data-tab-item="toml"
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 = "p" > [< / span > < span class = "nx" > params< / span > < span class = "p" > ]< / span >
< / span > < / span > < span class = "line" > < span class = "cl" > < span class = "nx" > disableRandomIds< / span > < span class = "p" > =< / span > < span class = "kc" > true< / span > < / span > < / span > < / code > < / pre > < / div >
< / div >
< / div >
< div
data-tab-item="yaml"
class="tab-content tab-panel-style cstyle initial">
< div class = "tab-content-text" >
< div class = "highlight wrap-code" > < pre tabindex = "0" class = "chroma" > < code class = "language-yaml" data-lang = "yaml" > < span class = "line" > < span class = "cl" > < span class = "nt" > params< / span > < span class = "p" > :< / span > < span class = "w" >
< / span > < / span > < / span > < span class = "line" > < span class = "cl" > < span class = "w" > < / span > < span class = "nt" > disableRandomIds< / span > < span class = "p" > :< / span > < span class = "w" > < / span > < span class = "kc" > true< / span > < / span > < / span > < / code > < / pre > < / div >
< / div >
< / div >
< div
data-tab-item="json"
class="tab-content tab-panel-style cstyle initial">
< div class = "tab-content-text" >
< div class = "highlight wrap-code" > < pre tabindex = "0" class = "chroma" > < code class = "language-json" data-lang = "json" > < span class = "line" > < span class = "cl" > < span class = "p" > {< / span >
< / span > < / span > < span class = "line" > < span class = "cl" > < span class = "nt" > " params" < / span > < span class = "p" > :< / span > < span class = "p" > {< / span >
< / span > < / span > < span class = "line" > < span class = "cl" > < span class = "nt" > " disableRandomIds" < / span > < span class = "p" > :< / span > < span class = "kc" > true< / span >
< / span > < / span > < span class = "line" > < span class = "cl" > < span class = "p" > }< / span >
< / span > < / span > < span class = "line" > < span class = "cl" > < span class = "p" > }< / span > < / span > < / span > < / code > < / pre > < / div >
< / div >
< / div >
< / div >
< / div >
< 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/howto/index.html" > Howto< / a > < / li >
< / ul >
< / div >
< / footer >
< / article >
< / div >
< / main >
< / div >
2024-10-24 22:14:53 +00:00
< script src = "/hugo-theme-relearn/js/clipboard.min.js?1729808080" defer > < / script >
< script src = "/hugo-theme-relearn/js/perfect-scrollbar.min.js?1729808080" defer > < / script >
< script src = "/hugo-theme-relearn/js/theme.js?1729808080" defer > < / script >
2024-10-13 14:26:50 +00:00
< / body >
< / html >