Templates are used to embed details of files in to a post or page. They are can also be used to create file lists. WP-Filebase includes a powerful template engine supporting IF-THEN-ELSE blocks. Templates are blocks of HTML code containing variables. There are three different types of templates:

  • File Templates are used to embed files
  • Category Templates are used for categories in file lists if file grouping is enabled
  • List Template consists of a Header, Footer and a File and Category Template.

Special templates that cannot be deleted:

  • Default: Default templates are used when there is no template specified, for example a shortcode without the tpl parameter. Its also used for file search results and attachments. Note that the default templates appears in the template management list as well as in settings. When resetting settings, the default template code is restored!
  • Filebrowser: template used for AJAX treeview
  • Filepage: This template is used to build the File Details Page (WP-Filebase Pro)

You can even place shortcodes into templates to build advanced file lists. Be careful: don’t nest a shortcode using the template itself!


A template is a piece of HTML code containing “variables” that will be replaced with file specific properties. A variable is wrapped by two % characters, i.e. %file_name%. A very simple template:

<img src="%file_icon_url%" style="height:20px; vertical-align:middle;" />
<a href="%file_url%" title="Download %file_display_name%">%file_display_name%</a> (%file_size%)

This would output a HTML paragraph containing a small icon/thumbnail followed by the name and size of the file.

To omit the <img> tag for files without a thumbnail, an IF-block is added:

<!-- IF %file_thumbnail% -->
<img src="%file_icon_url%" style="height:20px; vertical-align:middle;" />
<!-- ENDIF -->
<a href="%file_url%" title="Download %file_display_name%">%file_display_name%</a> (%file_size%)



Inside an IF expression you can use the Boolean operators OR and AND. The following sample inserts a link to the associated post/page of the file if: 1. the file has an associated post and 2. the currently viewed post/page is not the associated one. So the link won’t appear in templates that are generated in the post/page of the file:

<!-- IF %file_post_id% AND %post_id% != %file_post_id% -->
<a href="%file_post_url%">%'View post'%</a>
<!-- ENDIF -->

Templates are internally parsed to PHP code, so all PHP and WordPress functions can be used in expression!

Template Variables

The following template variables are available for file and category templates:

NameDescriptionTypeExample Value
%uid%A unique ID number to identify elements within a templateNumber3
NameDescriptionTypeExample Value

Here’s a list of template variables for files, which can be selected from the Drop-Down when editing a template. Custom fields (see Settings) appear at the end of the Drop-Down box.

NameDescriptionTypeExample Value
%file_name%The name of the file (with extension)numberexample.pdf
%file_size%ID of the current post or pageFormatted size1.63 MiB
%file_date%Formatted date of the file (change in Settings)Formatted date time4. May 2011
%file_thumbnail%The name of the thumbnail fileStringexample-100×120.png
%file_display_name%The Title of the fileStringExample Document
%file_description%File DescriptionString
%file_version%File VersionString2.1
%file_author%File AuthorString
%file_languages%A comma-separated list of all supported languagesStringsEnglish, German
%file_platforms%A common-separated list of supported platformsStringsWindows 7, Ubuntu
%file_requirements%A commo-sperated list of requirementsStringsApache, MySQL
%file_license%File LicenseStringCreative Commons
String (user role)Subscriber
%file_user_can_access%Boolean (0/1)0
%file_offline%Boolean (0/1)1
%file_direct_linking%Boolean (0/1)


If ID3 detection is enabled, there are more variables available for each file. ID3 variables begin with the prefix %file_info/ . Example to get artist of an mp3 file:


These variable can also be used in IF expressions. You’ll find a list of all available variables below the file form when editing a file.

Special template variables

%dl_countdown% Used in File Details Page template to display the countdown

%search_form% Used in list headers and footers to display a search form

%sort_link:file_sizeWill be replaced by a URL to sort the current file list. Example:
<a href="%sort_link:file_name%">Sort by Name</a>

%print_script:{script-name}% Used in list headers to include JavaScripts like the jQuery extension dataTables.

%print_style:{style_name}% Used in list headers to include CSS files.

Useful Expressions

Only display ads (or anything else) to non-registered users:
<!-- IF get_current_user_id() != 0 --> ..ad code.. <!-- ENDIF -->

PHP Code in Templates

WP-Filebase Pro supports PHP codeblocks inside the Template code. To use a template variable in PHP, use the following syntax (instead of %file_display_name%):
<?php echo $file->get_tpl_var('file_display_name'); ?>

56 thoughts on “Templates

  1. Tim says:
    VA:F [1.9.22_1171]
    Rating: +2 (from 4 votes)

    I have 2 categories in which the files are uploaded into. Is there a way to add a new column that displays which of the 2 categories the file is under?

    1. Adrienne says:
      VA:F [1.9.22_1171]
      Rating: -1 (from 3 votes)

      I ran into the same problem. I tried to create a file template:

      And I have categories with parent categories, but it doesn’t show on the front end.
      [wpfilebase tag=list tpl=data-table_cat pagenav=1 /]

      1. Adrienne says:
        VA:F [1.9.22_1171]
        Rating: +1 (from 3 votes)

        Nvm! It does work afterall!

      2. vipin says:
        VA:F [1.9.22_1171]
        Rating: -3 (from 3 votes)

        What did you do to display categories in front end. I am unable to display it using file template.

        1. Adrienne says:
          VA:F [1.9.22_1171]
          Rating: +1 (from 3 votes)

          You just use the data table template that they have under File Lists. I don’t recall having to do anything else special. Hope that helps!

  2. StephenG says:
    VA:F [1.9.22_1171]
    Rating: +3 (from 5 votes)

    I have a question about embeded templates and downloads. When I click on WP-filebase>embeded templates I see the three selections I can make (file list, category, file) When I drill into a selection I see several pre-made templates (file browser, 3-col-row, etc…) I’m not understanding how to make a particular template active. For example if I make a template and call it template new it appears in the list with the rest and has a check box, but I dont see how I make that active for my category list

  3. VA:F [1.9.22_1171]
    Rating: -1 (from 3 votes)

    Thank you very much

  4. VA:F [1.9.22_1171]
    Rating: +4 (from 4 votes)

    But I dont see how I make that active for my category list

  5. click says:
    VA:F [1.9.22_1171]
    Rating: 0 (from 2 votes)

    Thank you very much.
    mọi thông tin rất tuyệt vời và chúng tôi mời bạn đến với dịch vụ mạ của chúng tôi tại đây

  6. VA:F [1.9.22_1171]
    Rating: 0 (from 0 votes)

    Thanks for sharing

  7. VA:F [1.9.22_1171]
    Rating: 0 (from 4 votes)

    Thank you

  8. VA:F [1.9.22_1171]
    Rating: -1 (from 5 votes)

    Appear in templates that are generated in the post/page

  9. Eduardo W. says:
    VA:F [1.9.22_1171]
    Rating: +1 (from 3 votes)

    Hello Fabian,

    I write you today because I’m trying to use the notification to the members when a new file is uploaded.
    So, I tried to give style to the message, because the notification should be part of the visual system too.
    After flew tries, it only gives me the entire html code.
    How can I do it well? If is possible, it will help me a lot with this.
    I tried to contact you by email, tickets and the contact form, but ticket and the contact form don’t work.

    Thank you.
    Best regards,

  10. NV says:
    VA:F [1.9.22_1171]
    Rating: +1 (from 1 vote)

    I have problems with subcategories. I am using:
    [wpfilebase tag=list tpl=table path="test-portal" showcats=1 /]
    If I have: test-portal/file0, test-portal/dir1/file1,test-portal/dir2/file2, test-portal/dir1/subdir1/file3, then table only shows test-portal/file0 in table (no subcategories or their files).
    If I remove test-portal/file0, then table shows dir1/file1, dir2/file2, subdir1/file3, but subdir1/file3 as shown at same level as dir1 and dir2 and doesn’t show parent category as in dir1/subdir1/file3. Is there a way to show the parent categories? I do not have tpl=data-table as others commented they have.

Leave a Reply

Your email address will not be published.