<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <meta charset="utf-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
    <meta name="robots" content="noindex, follow" />
    

    <title>templates - Ayakael</title>

    <!-- cargo-culted from https://realfavicongenerator.net/ -->
    <!-- for the record: it is absolutely ridiculous that new browsers
    *and* operating systems each want their own little precious
    snowflake just for a frigging icon -->
    <link rel="apple-touch-icon" sizes="180x180" href="../apple-touch-icon.png">
    <link rel="icon" type="image/png" sizes="32x32" href="../favicon-32x32.png">
    <link rel="icon" type="image/png" sizes="16x16" href="../favicon-16x16.png">
    <link rel="manifest" href="../site.webmanifest">
    <meta name="msapplication-TileColor" content="#da532c">
    <meta name="theme-color" content="#ffffff">

    <!-- ikiwiki CSS -->
    <link href="../style.css" rel="stylesheet" />

    <!-- Bootstrap core CSS -->
    <!-- those checksums can be verified with: shasum -b -a 384 $file | xxd -r -p | base64 -->
    <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous" />

    <!-- Custom styles for this template -->
    <link href="../bootstrap.local.css" rel="stylesheet" />

    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
    <!--[if lt IE 9]>
      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->

    <!-- Custom styles for derivatives -->
    
    <link rel="stylesheet" href="../local.css" type="text/css" />
    

    
      
      
      
      <meta name="robots" content="noindex, follow" />
      
    
  </head>
  <body>

    <nav class="navbar navbar-default navbar-fixed-top">
      <div class="container">
        <div class="navbar-header">
          <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
            <span class="sr-only">Toggle navigation</span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
          </button>
          <a class="navbar-brand" href="../">
            <img alt="Ayakael" src="../favicon.png" width="48" height="48" />
          </a>
        </div>

        <div id="navbar" class="collapse navbar-collapse">

          

            
            <!-- the anchors force ikiwiki to use a tags instead of spans. hopefully. -->

<ul class="nav navbar-nav navbar-right">
<li><a href="../index.en.html">Home</a></li>
<li><a href="https://ayakael.net/forge/">Forge</a></li>
<li><a href="../contact/index.en.html">Contact</a></li>
</ul>

            
          <ul class="nav navbar-nav">
            



          </ul>
        </div>

      </div>
    </nav>

    <div class="container" id="content">

            <p><a href="../ikiwiki/">Ikiwiki</a> uses many templates for many purposes. By editing its templates,
you can fully customise its appearance, and avoid duplicate content.</p>

<p>Ikiwiki uses the HTML::Template module as its template engine. This
supports things like conditionals and loops in templates and is pretty
easy to learn. All you really need to know to modify templates is this:</p>

<ul>
<li>To insert the value of a template variable, use <code>&lt;TMPL_VAR variable&gt;</code>.</li>
<li>To make a block of text conditional on a variable being set use
<code>&lt;TMPL_IF variable&gt;text&lt;/TMPL_IF&gt;</code>.</li>
<li>To use one block of text if a variable is set and a second if it's not,
use <code>&lt;TMPL_IF variable&gt;text&lt;TMPL_ELSE&gt;other text&lt;/TMPL_IF&gt;</code></li>
</ul>

<h2>template pages</h2>

<p>Template pages are regular wiki pages containing a
<a href="http://ikiwiki.info/ikiwiki/directive/templatebody/">templatebody directive</a>,
used as templates for other pages. The parts of the template
page outside the directive can be used to document it.</p>

<p>The <a href="http://ikiwiki.info/ikiwiki/directive/template/">template directive</a> allows
template pages to be filled out and inserted into other pages in the wiki.</p>

<p>These template pages are currently available:</p>

<p>

<a href="./note/">note</a>

</p>
<p>

<a href="./note.fr/">note.fr</a>

</p>
<p>

<a href="./popup/">popup</a>

</p>
<p>

<a href="./popup.fr/">popup.fr</a>

</p>


<p>If the template does not contain a <code>templatebody</code> directive, the entire
source of the page is used for the template. This is deprecated.</p>

<h2>template files</h2>

<p>Template files are unlike template pages in that they have the extension
<code>.tmpl</code>. Template files are used extensively by Ikiwiki to generate html.
They can contain html that would not normally be allowed on a wiki page.</p>

<p>Template files are located in <code>/usr/share/ikiwiki/templates</code> by default;
the <code>templatedir</code> setting can be used to make another directory be
searched first. Customised template files can also be placed inside the
"templates/" directory in your wiki's source -- files placed there override
ones in the <code>templatedir</code>.</p>

<p>Here is a full list of the template files used:</p>

<ul>
<li><p><code>page.tmpl</code> - Used for displaying all regular wiki pages. This is the
key template to customise to change the look and feel of Ikiwiki.</p></li>
<li><p><code>rsspage.tmpl</code> - Used for generating rss feeds for blogs.</p></li>
<li><code>rssitem.tmpl</code> - Used for generating individual items on rss feeds.</li>
<li><code>atompage.tmpl</code> - Used for generating atom feeds for blogs.</li>
<li><code>atomitem.tmpl</code> - Used for generating individual items on atom feeds.</li>
<li><code>inlinepage.tmpl</code> - Used for displaying a post in a blog.</li>
<li><code>archivepage.tmpl</code> - Used for listing a page in a blog archive page.</li>
<li><code>titlepage.tmpl</code> - Used for listing a page by title in a blog archive page.</li>
<li><code>microblog.tmpl</code> - Used for showing a microblogging post inline.</li>
<li><code>blogpost.tmpl</code> - Used for a form to add a post to a blog (and rss/atom links)</li>
<li><code>feedlink.tmpl</code> - Used to add rss/atom links if <code>blogpost.tmpl</code> is not used.</li>
<li><code>aggregatepost.tmpl</code> - Used by the aggregate plugin to create
a page for a post.</li>
<li><code>searchform.tmpl</code>, <code>googleform.tmpl</code> - Used by the search plugin 
and google plugin to add search forms to wiki pages.</li>
<li><code>searchquery.tmpl</code> - This is a Omega template, used by the
search plugin.</li>
<li><code>comment.tmpl</code> - Used by the comments plugin to display a comment.</li>
<li><code>change.tmpl</code> - Used to create a page describing a change made to the wiki.</li>
<li><code>recentchanges.tmpl</code> - Used for listing a change on the RecentChanges page.</li>
<li><code>autoindex.tmpl</code> - Filled in by the autoindex plugin to make index pages.</li>
<li><code>autotag.tmpl</code> - Filled in by the tag plugin to make tag pages.</li>
<li><code>calendarmonth.tmpl</code>, <code>calendaryear.tmpl</code> - Used by ikiwiki-calendar to
make calendar archive pages.</li>
<li><code>trails.tmpl</code> - Used by the trail plugin to generate links on each page
that is a member of a trail.</li>
<li><code>notifyemail.tmpl</code> - Used by the notifymail plugin to generate mails about
changed pages.</li>
<li><code>editpage.tmpl</code>, <code>editconflict.tmpl</code>, <code>editcreationconflict.tmpl</code>,
<code>editfailedsave.tmpl</code>, <code>editpagegone.tmpl</code>, <code>pocreatepage.tmpl</code>,
<code>editcomment.tmpl</code> <code>commentmoderation.tmpl</code>, <code>renamesummary.tmpl</code>,
<code>passwordmail.tmpl</code>, <code>emailauth.tmpl</code>, <code>login-selector.tmpl</code>, 
<code>revert.tmpl</code> - Parts of ikiwiki's user interface; do not normally need
to be customised.</li>
</ul>


            

            

            
            <!-- legacy Ikiwiki comments.pm section -->
            

            <!-- Mastodon comments -->


            <div class="pagedate text-muted">
            <span class="created">Created <time datetime="2024-08-26T01:26:16Z" class="dt-published">Mon Aug 26 01:26:16 2024</time>.</span>
            <span class="edited">
            
            Edited <time datetime="2024-08-26T01:26:16Z">Mon Aug 26 01:26:16 2024</time>.
            
            </span>
            </div>

            <nav class="navbar navbar-default">
                
            <div class="navbar-brand"><span class="glyphicon glyphicon-search" aria-hidden="true"></span></div>
            <div class="container-fluid">

            <div class="navbar-header">
              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar-footer" aria-expanded="false">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
              </button>
            </div>

            <div id="navbar-footer" class="collapse navbar-collapse">
            

            <ul class="nav navbar-nav navbar-right">
            

            
              <li class="dropdown">
                <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Links<span class="caret"></span></a>
                <ul class="dropdown-menu">
                  
                    <li><a href="../ikiwiki/">ikiwiki</a></li>
                  
                    <li><a href="../ikiwiki.fr/">ikiwiki.fr</a></li>
                  
                    <li><a href="../ikiwiki/formatting/">ikiwiki/formatting</a></li>
                  
                    <li><a href="../ikiwiki/formatting.fr/">ikiwiki/formatting.fr</a></li>
                  
                  
                </ul>
              </li>
            
            
              <li class="dropdown">
                <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Meta<span class="caret"></span></a>
                <ul class="dropdown-menu">
              
              
                <li><a href="../recentchanges/index.en.html">Timeline</a></li>
              
              
              
              
              
              
                  
              
                </ul>
              </li>
            
            </ul>
            </div>
            </div>
            </nav>
            

            
    </div> <!-- /container -->

    <footer class="footer" role="contentinfo">
	<div class="container">

    
    <p class="text-muted">
    <span class="copyright">
        Copyleft © 2024-2024 ayakael <a href="../meta/license/">CC-BY-SA</a>
    </span>
    <span class="pull-right powered-by">
        Powered by <a href="http://ikiwiki.info/">ikiwiki</a>.
        <a href="https://gitlab.com/anarcat/ikiwiki-bootstrap-anarcat">Theme</a> by <a href="https://anarc.at/blog/2015-09-09-bootstrap">anarcat</a>.
    </span>
</p>

    

	</div>
    </footer>


    <!-- Bootstrap core JavaScript
    ================================================== -->
    <!-- Placed at the end of the document so the pages load faster -->
    <script src="https://code.jquery.com/jquery-3.2.1.min.js" crossorigin="anonymous" integrity="sha384-xBuQ/xzmlsLoJpyjoggmTEz8OWUFM0/RC5BsqQBDX2v5cMvDHcMakNTNrHIW2I5f"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" crossorigin="anonymous" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa"></script>

	<!-- TODO: Find other ways to setup analytics
    <script data-goatcounter="https://analytics.anarc.at/count" async src="//analytics.anarc.at/count.js"></script>
    <noscript>
    <img src="https://analytics.anarc.at/count?p=templates&t=templates" alt="tracking pixel to count visitors when Javascript is disabled" />
    </noscript>
	-->
  </body>
</html>
