This is a list of all the CF layout variables, loops and conditions, and accompanying descriptions.
See also: ComicFury Template System Documentation for general use of the layout engine.

Note: Any variables ([v:whatever]) can also be turned into conditions by replacing the ‘v’ with ‘c’, and comparing to something – eg, [v:comments] -> [c:comments>5] to have a section of code that only shows if there’s more than five comments.
These conditions generally work in both the HTML and the CSS for a comic.

A quick note on how conditions work: Conditions are either 'true' or 'false'. If a condition is true, then any code between the condition and its closing tag ([/]) will be visible. If the condition is false, then the code between the tags will be hidden.
For example:

In this situation, if you have comments enabled, then 'comments' will be displayed.

Anyway, onto the variable reference. Loop variables ([v:l.whatever]) are shown here directly underneath the loop they are part of, and only work within that loop.

Profile Statistics
Date of the last update, in dd/mm/yyyy format.

Date of the last update, in the format specified in Comic Settings.

Total number of comics you have posted.

Subscription count.

Total pageviews to the comic.

Total unique visits to the comic.

ComicFury ID of your webcomic.

Sum of all ratings made on your comic.

Voluntary Advertisements
Replaced with the CF voluntary tower advertisement.

Replaced with the CF voluntary banner advertisement.

Comic Information
The name of your webcomic.

Subdomain of your webcomic. For example, if your comic is at, [v:webcomicsub] will be replaced with ‘icannotdraw’. Please note that this is just an example, and you comic will not be at that url, because that is my comic.

The URL of your webcomic, e.g.,

Description of your webcomic.

The activity status of your webcomic (Active/Completed/On Hiatus)

The genre of your webcomic.

The slogan of your webcomic.

Replaced with the “Copyrights” section of Comic Information.

Comic Settings
True if comments are enabled.

True if permalinks are enabled.

True if guest comments are enabled.

True if ratings are enabled.

True if ‘Hide webcomic from ComicFury’ is checked in Comic Settings.

True if chapters are enabled.

True if search is enabled.

True if CF voluntary tower advertisements are enabled – although there is currently no way to do this.

True if CF voluntary banner advertisements are enabled.

The URL of your ComicFury banner. If no banner is present, this will be empty, and you can use it as a condition – for example, to display the title of the comic if you have no banner uploaded, you could do [c:!banner][v:webcomicname][/]

The URL of your ComicFury webcomic avatar. If no avatar is present, this will be empty, and you can use it as a condition

The URL of the ComicFury profile of your webcomic.

The URL allowing people to subscribe to your webcomic.

[c:isarchive] [c:issearch] [c:isextrapage] [c:isblog] [c:isoverview] [c:iscomicpage] [c:iserrorpage] [c:isfrontpage]
True if the current page is an archive, search, extra, blog, overview, comic, error, or front page respectively.

Loop which repeats for each extrapage with a page order that is not 0. If you are not making a layout template for other people to use, you can probably ignore this loop and add the pages manually.
Inside the extrapage loop, this will be replaced with the link to the page the loop is up to. For example, if you have a cast page at /cast, and this is included in the loop, then this tag will be replaced with "".
Title of the current extra page.
Just the name of the folder for this extra page, i.e. the value of the "Page URL" field for this extrapage. If you're trying to link to the page, use [] instead, this is meant for comparisons or similar schenanigans.

Replaced with the layout CSS.

Replaced with the layout section that the current page should hold – for example, for comic pages, this will be replaced with the comic strip display layout section.

<script type="text/javascript" src="[v:cfscriptlink]"></script>
ComicFury-related Javascript. Contains the ‘save my place’ code, information about the current logged in user, dropdown navigation code, and hiding of edit and delete links for users who can't edit or delete comments.

True if there have been any blogs posted on the comic.

Title of the blog page.

Loop of blog posts.
Contents of current blog post.
Title of current blog post.
Avatar of author of current blog post.
Author of current blog post.
Link to current blog.
Time and date that the blog post was posted.
CF ID of the blog author.

Comic Strip Display
Note that these conditions are set by the current comic page.
[v:pagetitle] [v:comictitle]
Title of the comic page.

True if the current comic is the most recent comic page on the site.

True if the current comic is the first comic page on the site.

The URL of the next comic.

The URL of the previous comic.

Permalink to the next comic – a permalink is a link that is not modified by adding or removing comics posted before the current comic, i.e., /comics/pl/comicid instead of /comics/comicnumber

Permalink to the previous comic.

Comic title of next comic.

Comic title of previous comic.

Replaced with an <img> tag containing the comic itself, including the alt text where applicable. If the image is a .swf, replaced with the appropriate embedding.

‘image’, ‘flash’ or ‘html’, depending on the file type of the comic image (or it being embedded HTML).

URL of the comic image.

Alt text of the comic.

Width of the comic image.

Height of the comic image.

CF ID of the current comic (used in permalinks).

Permalink to the current comic.

The number of the current comic.

Average rating of the current comic.

Average rating of the current comic, as a whole number out of 100. Can be combined with CSS to achieve effects such as a ‘rating bar’, which is partially filled to an amount depending on the rating.

Average rating of the current comic as a percentage to two decimal places.

Sum of all ratings on the displayed comic.

Number of ratings made on this comic.

Keywords of the current comic.

URL of the rating box for the current comic.

URL of the comment box for the current comic.

Time that the current comic was posted.

True if the file type of the displayed comic is an image.

True if the current comic is part of a chapter.

Name of the chapter that the current comic is part of.

Transcript of the current comic.

Link to the comic archive page for the chapter that the displayed comic is part of.

Description of the chapter the current comic is part of.

Comments loop.
The loop variables are the same as for author notes, with the exception of [v:l.depth] and [v:l.is_reply] (which don't do anything for author notes).
Number of reply layers the current comment is, starting from 0. Can be used for variable reply formatting, such as having more than one indentation level.
True if this comment is a reply to another comment.
Replaced with the URL to the profile of the comment author.
Author of the comment.
Time of comment posting, formatted according to Webcomic Settings.
Link to edit this comment.
Link to delete this comment.
URL of the comment author’s avatar. Can be used as a conditional, i.e., [c:l.avatar] to check if a user has an avatar (or not).
Contents of the current comment.
Title of the current comment.

True if there are comments on the current comic, false otherwise. You can also use it comparatively - for example, you can have
[c:comments>5]I'm so popular![/]
and your popularity will only be shown off if you have more than five comments.

Author notes loop. Functionally identical to the comments loop, except with authornotes.

Contains the total number of comments and author notes.

CF’s archive system can either loop through each comic, or each comic in a chapter if you visit the link provided by [v:chapterlink]. This variable is true if the current page is a chapter-specific archive.

If you are on a chapter archive, [v:chaptername] will contain the title of the chapter.

Contains the description of the current chapter if you are on a chapter archive.

Archive loop, sorted chronologically. Loop variables (e.g., [v:l.comictitle]) correspond to the comic strip variables, so you have access to all the details about the current comic.

Archive loop, sorted by chapter, and then chronologically. Access to all the loop variables from within the archive loop.
[l:chapteredarchive] is split up into chapters, which are included as part of the loop. Use [c:l.newchapter] for adding chapter titles at the start of each chapter – i.e.,

Extra Pages
The URL of the extra page –

Error Pages
Title of the error, e.g., “No such page”.

Description of the error.

True if the user actually searched for something to reach the search page, and didn’t just go to /search.

True if there are comics matching the search term. Use this to display a ‘no results’ error – e.g.,
[c:!foundresults]Sorry, but there were no results for your search.[/]

Loop of matching comics. Loop variables are the same as for the archive loop.

Number of comics found

Current year.

Current month.

Current day.

Current date, in the format specified in Comic Settings.

Random number between min and max. This should only be used in cases where javascript cannot produce the same results, because this function disables webcomic caching, and thus makes your page load slower than usual.

outputs [v:foo] as raw HTML.

outputs [v:foo] as an escaped javascript string, with quotes already around it.

Adds a to b. Similar functions exist for multiply, divide, and subtract.
OnlyFoolsAndVikings:god, upon creating life: [matthewja voice] its a feature